> ## Content Index
> Fetch the complete content index at: https://www.alessiopomaro.it/llms.txt
> Use this file to discover other available public pages before exploring further.

# Google Assistant e la riformulazione contestuale
- URL: https://www.alessiopomaro.it/google-assistant-riformulazione-contestuale/
- Published: 2022-06-02T06:00:44.000Z
- Updated: 2022-06-24T06:33:11.000Z
- Description: Grazie al processo di riformulazione contestuale, Google Assistant è in grado dare risposte a domande dell'utente correlate a quella principale. Ed è anche in grado di suggerire domande correlate attraverso il display. Come avviene tale elaborazione?
- Author: Alessio Pomaro
- Tags: Voice Technology, AI, Conversation Design

Quando le persone dialogano tra loro, il **contesto** e i riferimenti sottintesi sono fondamentali per una **comunicazione efficiente**.. o meglio, possiamo dire che le conversazioni tra esseri umani sono come le conosciamo proprio grazie a tali elementi.

Ad esempio, se una persona chiede "*in che regione si trova Padova?*", e dopo aver ottenuto una risposta continua chiedendo "*..e quali sono le attrazioni più interessanti*", è chiaro che continua a riferirsi a Padova, senza bisogno di esplicitarlo nuovamente. Inoltre, dopo aver ottenuto una risposta potrebbe continuare ancora dicendo "*..e per quanto riguarda Verona?*"; anche in questo caso è abbastanza chiaro che il riferimento è relativo alle attrazioni.

Un esempio di riformulazione contestuale di Google Assistant

Un **assistente virtuale** non in grado di gestire in modo affidabile il contesto e i riferimenti, **costringerebbe gli utenti ad adattarsi** ad un limite della tecnologia andando a compensarla ripetendo le informazioni implicite nel contesto nelle loro domande di follow-up (*ovvero che seguono le precedenti*).

## Come fa Google Assistant a mantenere il contesto della conversazione?

Come si vede nel video, **Google Assistant**, riesce a mantenere il **contesto della conversazione**, consentendo di rendere le richieste più fluide, avvicinandosi ad una **conversazione naturale**.

La tecnologia che permette di ottenere tale risultato si basa su un sistema di **Machine Learning** che riformula la richiesta di follow-up dell'utente in modo che contenga le informazioni di contesto mancanti. Questo trasforma la nuova domanda in una in una "*query autonoma*".

Sebbene ci siano altri modi per gestire il contesto, ad esempio applicando regole che determinano intenti ed argomenti, il vantaggio dell'approccio di riformulazione è la semplicità. Infatti opera orizzontalmente a livello di stringa in qualsiasi risposta alle domande.

![Lo smart display suggerisce le query di follow-up attraverso i bottoni](https://storage.ghost.io/c/d7/3a/d73a3886-5e95-4e08-9255-a08eb51bb37b/content/images/2022/06/esempio-riformulazione-contestuale-smart-display.gif)

Lo smart display suggerisce le query di follow-up attraverso i bottoni

Come si vede nell'immagine precedente, lo **smart display** offre all'utente anche dei suggerimenti per effettuare domande di follow-up.

## L'architettura del sistema di riformulazione

Ad alto livello, il principio di funzionamento è semplice: il sistema di riformulazione genera dei "*candidati*" utilizzando diversi generatori. Ogni candidato alla riformulazione viene quindi valutato in base ad un set di segnali e viene selezionato quello con il punteggio più alto.

![La struttura della riformulazione delle query](https://storage.ghost.io/c/d7/3a/d73a3886-5e95-4e08-9255-a08eb51bb37b/content/images/2022/06/riformulazione-contestuale-google-assistant.webp)

La struttura della riformulazione delle query

### La generazione dei candidati

Per generare candidati per la riformulazione, viene utilizzato un **approccio ibrido composto da diverse tecniche**, che possono essere divise in tre categorie.

1. Generatori basati sull'**analisi della struttura linguistica** delle query, che utilizzano regole grammaticali e morfologiche per eseguire operazioni specifiche, ad esempio la sostituzione di pronomi o altri tipi di locuzioni referenziali.
2. Generatori basati sui termini che compongono le richieste, sulla **statistica** che regola le correlazioni.
3. Generatori basati su tecnologie "*Transformer*", come **[MUM](https://www.alessiopomaro.it/mum-google-query-ricerca-complesse/)**, che imparano a produrre sequenze di parole in base a una serie di campioni di addestramento. Questi sistemi, partendo da una query e dal suo contesto, possono apportare le modifiche al testo per trasformare le query di input in un candidato per la riformulazione.

### La scelta dei candidati

Nel momento in cui vengono generati i candidati, per ognuno viene estratta una serie di segnali processati da algoritmi di Machine Learning che hanno il compito di stabilire un ranking, e quindi di effettuare una scelta. Alcuni dei segnali dipendono solo dalla query principale e dal suo contesto, mentre altri dipendono dal candidato stesso.

Recentemente, i nuovi segnali generati dai modelli **[BERT](https://blog.google/products/search/search-language-understanding-bert/?ref=alessiopomaro.it)** e **MUM** hanno **migliorato significativamente le prestazioni della scelta del candidato**, riducendo gli errori e i falsi positivi (*ovvero le riformulazioni su richieste che non ne avevano bisogno*).

### Conclusioni

Quella che ho descritto è una soluzione che riformula automaticamente le query di follow-up in modo da renderle richieste indipendenti, in maniera da non costringere l'utente ad adattarsi al mezzo.

> Data la varietà di contesti derivanti dalla varietà del **linguaggio naturale**, viene adottato un approccio ibrido che combina regole linguistiche, stime basate sui dati storici e modelli di Machine Learning all'avanguardia. 

Generando dei candidati per la riformulazione delle query e il relativo contesto, valutandoli e classificandoli utilizzando una serie di segnali, **Google Assistant può riformulare e quindi interpretare correttamente una grande varietà di query contestuali**. 

Tutti questi sforzi sono orientati a rendere la conversazione con gli assistenti virtuali più fluida, annullando la macchinosità dei "*cambi di turno*" nella comunicazione. Per la lingua inglese, per aumentare ulteriormente la fluidità esiste l'opzione della "***conversazione continua***", che consente di effettuare query di follow-up senza dover pronunciare la wake-word "**Hey Google**" per ogni richiesta.

Un esempio di conversazione continua di Google Assistant

---

### Per approfondire

[Contextual Rephrasing in Google AssistantPosted by Aurelien Boffy, Senior Staff Software Engineer, and Roberto Pieraccini, Engineering Director, Google Assistant When people conv...![](https://ai.googleblog.com/favicon.ico)Google AI Blog![](http://2.bp.blogspot.com/-qRz-hnwUdY4/WulXSQ6Rv4I/AAAAAAAATvQ/shk7KsphA0c3E3nUMsDVASqYaH0PhLPNwCK4BGAYYCw/s1600/GoogleAI_logo_horizontal_color_rgb.png)](https://ai.googleblog.com/2022/05/contextual-rephrasing-in-google.html?ref=alessiopomaro.it)

[Voice Technology e Assistenti Vocali - Alessio PomaroLa Voice Technology è ciò che permette alle persone di interagire con i dispositivi attraverso la voce, ovvero attraverso l’interfaccia più naturale che possiamo utilizzare.Tale interazione è resa possibile da un’architettura composta dal device fisico (es. lo smart speaker), sistema di comprension…![](https://storage.ghost.io/c/d7/3a/d73a3886-5e95-4e08-9255-a08eb51bb37b/content/images/size/w256h256/2021/05/alessio-pomaro-voice-tech-seo-ico.png)Alessio Pomaro![](https://storage.ghost.io/c/d7/3a/d73a3886-5e95-4e08-9255-a08eb51bb37b/content/images/2021/04/voice-technology.jpg)](https://www.alessiopomaro.it/tag/voice-technology/)