Blog Metlivi

Cosa rende naturale una chat testuale con l'IA: la velocità di digitazione o il ritmo dell'interazione?

In una chat testuale con l'IA, un'interazione convincente dipende meno dalla velocità con cui compaiono le lettere che dal senso logico di ogni fase dello scambio: l'utente percepisce che il sistema ha ricevuto il messaggio, la risposta arriva in parti leggibili e il completamento o l'interruzione risultano chiari. Un'animazione di digitazione da sola non basta a creare questo ritmo. È opportuno progettare l'interfaccia basandosi su un feedback utile e sul controllo dell'utente, considerando la digitazione simulata come un effetto visivo opzionale piuttosto che come una prova della presenza di una persona dall'altra parte.

30 settembre 20267 min di letturaLettura, arte e culturaDi Metlivi Editorial Team
Sezione 1

L'animazione di digitazione è un segnale, non la conversazione

Un'ellissi pulsante o la dicitura "sta scrivendo..." possono mostrare che è in corso la preparazione di una risposta. Le linee guida per il design della chat di Visa descrivono gli indicatori di digitazione come un modo per segnalare una risposta attiva, distinguendoli dagli indicatori di avanzamento usati durante i processi di IA generativa. Questa distinzione è utile: "sta scrivendo" suggerisce che qualcuno stia componendo un testo; "elaborazione in corso" o "generazione in corso" descrivono più chiaramente un processo di sistema. Per un assistente IA, è meglio scegliere diciture che identifichino con precisione lo stato invece di alludere a un'identità o a pattern di digitazione umani. (Visa Product Design System: Chat)

Una pausa fissa seguita dalla comparsa simulata carattere per carattere può far sembrare l'interfaccia un'app di messaggistica, ma non comunica all'utente se la richiesta è stata ricevuta, se il sistema sta ancora elaborando o se la risposta è completa. Può anche far sembrare inutilmente ritardata una risposta breve e semplice. La domanda di design utile non è "Quanti millisecondi dovrebbe richiedere ogni carattere?", ma "Di cosa ha bisogno di sapere l'utente mentre aspetta, legge o decide cosa fare dopo?"

Sezione 2

Partire dall'attività dell'utente e dal costo dell'attesa

Identifica innanzitutto l'elaborazione necessaria dietro il messaggio. Una risposta breve a una domanda diretta può richiedere solo un rapido segnale di elaborazione e una risposta completa. Una risposta che richiede un'operazione più lunga, come l'analisi di un documento fornito, può beneficiare di uno stato più descrittivo e di una stima onesta, se disponibile. Quando la durata è sconosciuta, usa un indicatore indeterminato ed evita di inventare un conto alla rovescia. Le linee guida per l'avanzamento di Apple distinguono l'avanzamento determinato, in cui la durata o il progresso possono essere misurati, dall'attività indeterminata, consigliando un feedback accurato sullo stato di avanzamento e una modalità per interrompere l'attività quando possibile. (Apple Human Interface Guidelines: Progress Indicators)

Una sequenza pratica consiste nel confermare la ricezione, mostrare che il lavoro è in corso se c'è un'attesa percepibile, e infine presentare la risposta quando è pronta. Si tratta di stati distinti, anche se un'interfaccia compatta ne combina alcuni. Lo stato "Inviato" conferma l'azione dell'utente; un segnale di attività comunica l'attesa; il messaggio generato contiene il risultato. Evita di lasciare un segnale sullo schermo dopo che l'elaborazione è terminata, o di rimuoverlo senza chiarire che la risposta è conclusa. Se una richiesta fallisce, spiega cosa è accaduto e offri un passaggio successivo attuabile, come riprovare. Allo stesso modo, le linee guida per la chat di Visa raccomandano messaggi di errore chiari e un'opzione di reinvio quando un messaggio non viene recapitato. (Visa Product Design System: Chat)

Sezione 3

Usare blocchi di testo per facilitare la lettura

La trasmissione in streaming di parole o frasi man mano che sono disponibili può rendere visibile una risposta prima che l'intera generazione sia completata. Ciò è diverso dall'animare una risposta già pronta a una velocità di digitazione artificiale: lo streaming riflette l'effettivo arrivo dell'output, mentre un'animazione progressiva può aggiungere ritardo dopo che il testo esiste già. La documentazione di riferimento dello streaming di OpenAI Responses illustra eventi per la creazione della risposta, gli aggiornamenti di testo e il testo completato. Tali eventi mostrano un'utile distinzione di interfaccia tra una risposta in corso e un testo concluso; non impongono una velocità di visualizzazione universale o una dimensione fissa per i blocchi di testo. (OpenAI API Reference: Streaming events)

Per uno scambio leggibile, mostra frasi coerenti o blocchi della lunghezza di una proposizione quando possibile, mantieni le interruzioni di paragrafo ed evita salti improvvisi del messaggio mentre il contenuto si carica. Questa è una raccomandazione di design derivata dall'attività di lettura, non una regola fissa sulla lunghezza ideale dei blocchi. Se la risposta è lunga, un breve incipit o una prima sezione utile possono apparire subito, con il resto a seguire all'interno di un layout stabile. Non frammentare in modo così aggressivo da mostrare al lettore un flusso intermittente di frasi spezzate, né trattenere una risposta completa e disponibile solo per imitare la digitazione umana. Fai in modo che controlli come interrompi o rigenera siano facili da individuare quando supportati dall'interfaccia.

Sezione 4

Fornire un feedback di attesa accurato e proporzionato

Quando un'operazione richiede tempo, l'indicatore dovrebbe descrivere ciò che il sistema sa realmente. Usa una barra di avanzamento o una percentuale solo quando il progresso può essere misurato in modo significativo. Altrimenti, un semplice indicatore di attività comunica che il lavoro prosegue senza pretendere di prevedere il completamento. Apple raccomanda di mantenere accurati i riscontri di avanzamento, di spiegare i blocchi e di consentire alle persone di arrestare l'elaborazione quando possibile. Gli stessi principi si applicano alla chat: se il processo si blocca, passa da uno stato di animazione perpetua come "in elaborazione" a un messaggio utile come "La risposta si è interrotta. Riprova".

Evita di cambiare continuamente il testo di stato solo per dare un'illusione di attività. Una sequenza come "Sto pensando...", "Sto ancora pensando..." e "Ci siamo quasi..." è utile solo se ogni messaggio riflette uno stato reale e aiuta l'utente a decidere cosa fare. Altrimenti, un unico stato chiaro genera meno confusione. In particolare, evita di dire "quasi fatto" a meno che il sistema non abbia elementi certi per affermarlo. Un segnale breve e veritiero può risultare più attento e rispettoso rispetto a un'animazione vivace ma priva di informazioni.

Sezione 5

Considerare il completamento come uno stato reale

L'utente ha bisogno di sapere quando la risposta è terminata, specialmente se desidera copiarla, porre una domanda di approfondimento o interrompere l'output in corso. Rimuovi o sostituisci il segnale di attività al termine della generazione e assicurati che il messaggio finale rimanga stabile per consentire all'utente di leggerlo e interagirvi. Se l'output può risultare incompleto o essere annullato, comunica questo stato anziché presentare una risposta parziale come se fosse conclusa. La documentazione dell'API di streaming distingue gli aggiornamenti di testo dagli eventi di completamento e osserva che questi ultimi possono accompagnare anche risposte interrotte o incomplete; l'interfaccia dovrebbe quindi rappresentare il risultato effettivamente ottenuto. (OpenAI API Reference: Streaming events)

Il completamento deve raggiungere anche chi non segue le animazioni visive. Le linee guida W3C spiegano che i messaggi di stato possono comunicare attesa, avanzamento, successo o errori senza spostare il focus dell'utente, e che questi aggiornamenti dovrebbero essere identificabili a livello programmatico per le tecnologie assistive. La guida di MDN sulle live region descrive gli annunci "polite" per aggiornamenti importanti e non urgenti, avvertendo che frequenti annunci "assertive" possono interrompere gli utenti. In pratica, annuncia i cambi di stato significativi — come una risposta che diventa disponibile o una richiesta non andata a buon fine — senza trasformare ogni token o fotogramma di animazione in un avviso vocale. (W3C WAI: Understanding Status Messages; MDN: ARIA live regions)

Sezione 6

Lasciare agli utenti il controllo del ritmo

Uno scambio naturale lascia all'utente lo spazio per agire. Consenti alle persone di interrompere una risposta quando ciò è praticabile e chiarisci se l'interruzione arresta la generazione o mette solo in pausa la visualizzazione. Se una risposta arriva in streaming, mantieni leggibile il testo visibile e permetti all'utente di continuare a scorrere la conversazione. Quando una risposta completa è pronta rapidamente, evita di imporre pause teatrali; quando un'elaborazione reale richiede più tempo, chiarisci che il lavoro è ancora in corso. L'obiettivo è assecondare i tempi dell'utente anziché costringerlo ad aspettare di più.

Questo aiuta anche a distinguere lo stile conversazionale di un'interfaccia da una falsa dichiarazione su chi o cosa stia rispondendo. Un sistema di IA può usare un tono conciso, amichevole e una presentazione tipica dei messaggi, continuando a identificarsi chiaramente per ciò che è. "Preparazione della risposta in corso" descrive un'attività di sistema; "Sto scrivendo" può essere inteso come una persona reale che digita. Scegli le diciture tenendo conto della loro interpretazione più probabile, soprattutto in un prodotto in cui gli utenti potrebbero ragionevolmente scambiare l'indicatore per un interlocutore umano.

Sezione 7

Una semplice regola decisionale per scegliere il pattern

Usa un'animazione in stile digitazione solo quando offre un segnale chiaro e breve senza suggerire la presenza di un operatore umano. Usa un indicatore di avanzamento quando il sistema compie un'elaborazione che va oltre l'azione immediata dell'utente. Mostra blocchi di testo leggibili in streaming quando anticipare l'output aiuta l'attività e segnala il completamento quando la risposta è realmente finita. Aggiungi controlli quando l'interruzione è possibile e utile. Per ogni cambio di stato rilevante, assicurati che sia percepibile senza affidarsi unicamente al movimento o al colore.

Una rapida revisione del design può porsi quattro domande: Cosa ha innescato l'azione dell'utente? In quale stato si trova realmente il sistema? Cosa può fare l'utente durante l'attesa? Come farà l'utente a sapere che il risultato è completo o che qualcosa è andato storto? Se le risposte sono chiare, l'interazione può risultare reattiva senza dover simulare il ritmo di battitura umano. La qualità deriva dal coordinamento del feedback, dalla leggibilità della presentazione e dal controllo dell'utente, non dalla velocità dei puntini sullo schermo.

Letture correlate

Continua a esplorare il tema