Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Cross-modal ingresso
Amazon Nova 2 Sonic ora supporta l'input intermodale, che consente di inviare messaggi di testo oltre all'input vocale durante una sessione di conversazione. Sebbene la voce rimanga la modalità di interazione principale, l'immissione di testo offre flessibilità per gli scenari in cui la digitazione è più comoda o appropriata.
È richiesto lo streaming continuo: l' Cross-modal input richiede una sessione di streaming attiva per funzionare correttamente. La sessione deve mantenere lo streaming continuo come una normale sessione vocale, altrimenti verranno applicati i timeout di sessione standard e la connessione verrà interrotta.
I livelli di sensibilità nell'immissione di testo intermodale sono utili per scenari come:
-
Client-side integrazione delle app (web e mobile): consente agli utenti di interagire con l'applicazione utilizzando sia testo che voce, supportando esperienze multimodali senza interruzioni.
-
«Model-start-first" caso d'uso: è possibile inviare un messaggio di testo subito dopo l'inizio della sessione per richiedere alla modella di iniziare a parlare.
-
Guida del modello durante la chiamata asincrona dello strumento: quando viene attivato un evento toolUse e il sistema inizia a elaborare le chiamate allo strumento, il client può inviare un messaggio di testo a Sonic per fornire una risposta naturale durante l'attesa, ad esempio «Aspetta un secondo mentre elaboro le tue informazioni. Nel frattempo, c'è qualcos'altro che posso fare per aiutarvi?»
-
Integrazione DTMF per la telefonia: il cliente utilizza la tastiera del telefono per inserire informazioni sensibili (come i numeri delle carte di credito). Nota: Amazon Nova Sonic non elabora i toni DTMF in modo nativo. Per supportare l'input DTMF, il sistema deve rilevare i toni, convertirli in testo (ad esempio «1234") e inviarli a Nova 2 Sonic.
Come funziona
Cross-modal l'input utilizza una sequenza di tre eventi simile all'ingresso audio:
-
Content Start Event: segnala l'inizio dell'immissione del testo
-
Evento di immissione di testo: contiene il messaggio di testo effettivo
-
Evento finale del contenuto: segnala il completamento dell'immissione del testo
Tutti e tre gli eventi devono utilizzare gli stessi promptName e contentName per mantenere la sequenza. È necessario generare un nuovo UUID per ContentName ogni volta che si invia un input di testo per garantire il corretto monitoraggio delle conversazioni a turni multipli.
Struttura degli eventi
Avvia la sequenza di immissione del testo con i dettagli di configurazione:
{ "event": { "contentStart": { "promptName": "<prompt_name>", "contentName": "<new_content_name>", "role": "USER", "type": "TEXT", "interactive": true, "textInputConfiguration": { "mediaType": "text/plain" } } } }
Parametri chiave:
-
promptNameAvvia la sequenza di immissione del testo con i dettagli di configurazione: ----sep----:Il nome del prompt di conversazione (coerente per tutta la sessione) -
contentName: Un identificatore univoco per questo input di testo (genera un nuovo UUID per ogni messaggio) -
role: impostato per indicare l'input dell'"USER"utente -
type: impostato su"TEXT"per l'immissione di testo -
interactive: impostato pertrueabilitare la modalità interattiva -
mediaType: impostato su"text/plain"per il contenuto di testo semplice
Contiene il contenuto effettivo del messaggio di testo:
{ "event": { "textInput": { "promptName": "<prompt_name>", "contentName": "<new_content_name>", "content": "<your_text_message>" } } }
Parametri chiave:
-
promptName: deve corrispondere al valore di Content Start Event -
contentName: deve corrispondere al valore di Content Start Event -
role: la stringa del messaggio di testo
Segnala il completamento dell'immissione del testo:
{ "event": { "contentEnd": { "promptName": "<prompt_name>", "contentName": "<new_content_name>" } } }
Parametri chiave:
-
promptName: Deve corrispondere al valore degli eventi precedenti -
contentName: Deve corrispondere al valore degli eventi precedenti