Nell'ambito della tua esperienza RAG (Retrieval Augmented Generation) in Vertex AI Agent Builder, puoi verificare il grounding per determinare la posizione di una porzione di testo (chiamata candidata alla risposta) in un determinato insieme di testi di riferimento (chiamati fatti).
L'API Check Grounding restituisce un punteggio di supporto complessivo compreso tra 0 e 1, che indica quanto la risposta candidata sia in accordo con i fatti forniti. La risposta include anche le citazioni dei fatti a supporto di ogni affermazione nella risposta candidata.
Una motivazione perfetta richiede che ogni affermazione nella risposta candidata debba essere supportata da uno o più dei fatti indicati. In altre parole, l'affermazione è assolutamente deducibile dai fatti. Se la rivendicazione è solo parzialmente implicita, non viene considerata fondata. Ad esempio, l'affermazione "Google è stata fondata da Larry Page e Sergey Brin nel 1975" è corretta solo parzialmente: i nomi dei fondatori sono corretti, ma la data è sbagliata. Pertanto, l'intera affermazione è considerata infondata. In questa versione dell'API di verifica del fondamento, una frase è considerata un singolo reclamo.
Puoi utilizzare l'API di verifica dell'impianto di messa a terra per controllare qualsiasi testo. Può essere un testo pubblicitario creato da persone o una risposta generata automaticamente. Un caso d'uso tipico è verificare una risposta generata da un modello LLM rispetto a un determinato insieme di fatti. L'API check grounding è progettata per essere veloce, con una latenza inferiore a 500 ms. Questa velocità consente ai chatbot di chiamare l'API di verifica della fondatezza durante ogni deduzione, senza provocare un rallentamento significativo. L'API di verifica dell'impianto di messa a terra può anche fornire riferimenti a supporto dei risultati, in modo che gli utenti possano capire quali parti della risposta generata sono affidabili. L'API fornisce anche un punteggio di assistenza per indicare la precisione complessiva della risposta. Impostando una soglia di citazioni, i bot di chat possono filtrare le risposte al momento dell'inferenza che potrebbero contenere affermazioni deliranti.
Questa pagina descrive come controllare la messa a terra utilizzando l'API di controllo della messa a terra.
Funzioni sperimentali
Se vuoi provare le seguenti funzionalità sperimentali disponibili per l'API di verifica dell'impianto di messa a terra, contatta il team degli Account Google e richiedi di essere aggiunto alla lista consentita:
Anti-citazioni:la funzionalità Anti-citazioni fornisce un punteggio di contraddizione che indica quanto la risposta candidata contraddica i fatti forniti. La risposta include anche citazioni dei fatti in contraddizione per ogni dichiarazione. Per ulteriori informazioni, vedi Ottenere un punteggio di contraddizione per una risposta candidata.
Punteggio di supporto a livello di affermazione: un punteggio di supporto a livello di affermazione indica la fondatezza di ogni affermazione nella risposta candidata, oltre al punteggio di supporto complessivo per la risposta candidata. Per ulteriori informazioni, consulta la sezione Ottenere i punteggi a livello di rivendicazione per una risposta candidata.
Punteggio di utilità:il punteggio di utilità misura la qualità della risposta candidata a una determinata richiesta. Per ulteriori informazioni, vedi Ottenere un punteggio di utilità per una risposta candidata.
Grounding con un datastore: recupera i fatti di grounding da un datastore Vertex AI Search anziché fornire fatti in linea. Per ulteriori informazioni, consulta Verificare l'isolamento con un data store.
Termini definiti e spiegati
Prima di utilizzare l'API Check Grounding, è utile comprendere gli input e gli output e come strutturare i fatti di ancoraggio per ottenere i risultati migliori.
Dati di input
L'API di verifica dell'impianto di messa a terra richiede i seguenti input nella richiesta.
Risposta candidata:una risposta candidata può essere qualsiasi pezzo di testo di cui vuoi verificare la validità. Ad esempio, nel contesto di Vertex AI Search, la risposta candidata potrebbe essere il riepilogo della ricerca generato che risponde a una query. L'API determinerà quindi quanto il riepilogo sia basato sui fatti inseriti. Una risposta candidata può avere una lunghezza massima di 4096 token, dove un token è definito come una parola in una frase o un punto (un segno di punteggiatura utilizzato per terminare la frase). Ad esempio, la frase "Indossavano abiti di serie nel 2024" è composta da sette token, tra cui sei parole e un punto.
Fatti:un insieme di segmenti di testo da utilizzare come riferimenti per l'orientamento. È possibile fornire un insieme di attributi dei metadati (coppie chiave-valore) per ogni segmento di testo. Ad esempio, "Autore" e "Titolo" sono chiavi di attributo tipiche.
Il servizio supporta fino a 200 fatti, ciascuno con un massimo di 10.000 caratteri.
Google sconsiglia di fornire un fatto molto grande che contenga tutte le informazioni. Invece, puoi ottenere risultati migliori suddividendo i fatti più grandi in fatti più piccoli e fornendo gli attributi appropriati per questi fatti più piccoli. Ad esempio, puoi suddividere un fatto lungo per titolo, autore o URL e fornire queste informazioni negli attributi.
Soglia di citazioni: un valore float compreso tra 0 e 1 che controlla l'affidabilità per le citazioni che supportano la risposta candidata. Una soglia più elevata impone un'affidabilità più rigorosa. Pertanto, una soglia più alta genera meno citazioni, ma più autorevoli.
Dati di output
L'API Check Grounding restituisce quanto segue per una risposta candidata:
Punteggio di supporto:il punteggio di supporto è un numero compreso tra 0 e 1 che indica quanto sia fondata una risposta candidata nell'insieme di fatti fornito. Approssima approssimativamente la frazione di affermazioni nella risposta candidata che sono state ritenute fondate su uno o più dei fatti indicati.
Chunk citati:i chunk citati sono parti dei fatti inseriti che supportano la risposta candidata.
Affermazioni e citazioni:le affermazioni e le citazioni collegano un'affermazione (in genere una frase) della risposta candidata a uno o più chunk citati che la confermano.
Quando il punteggio a livello di rivendicazione è abilitato, per ogni rivendicazione viene restituito un punteggio di assistenza sotto forma di numero da 0 a 1 che indica la fondatezza della rivendicazione nell'insieme di fatti fornito. Per saperne di più, consulta Ottenere i punteggi a livello di claim per una risposta candidata.
Controllo di messa a terra obbligatorio: con ogni reclamo viene restituito un valore booleano di messa a terra obbligatorio. Se il valore restituito è
False
, significa che il sistema ritiene che la rivendicazione non richieda una motivazione e, pertanto, le citazioni e le anticitazioni non vengono restituite. Ad esempio, una frase come "Ecco cosa ho trovato" non è un fatto in sé e, pertanto, non richiede un controllo di fondatezza.Quando il valore di grounding-check-required è
true
, significa che è stato eseguito un controllo di grounding e vengono restituiti i punteggi di assistenza, le citazioni e le anticitazioni, se presenti.
Ottenere un punteggio di supporto per una risposta candidata
Per scoprire quanto sia fondata una risposta candidata in un insieme di fatti:
Prepara il tuo insieme di fatti. Per ulteriori informazioni ed esempi, consulta la sezione Termini definiti e spiegati.
Chiama il metodo
check
utilizzando il seguente codice:
REST
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-H "X-Goog-User-Project: PROJECT_ID" \
"https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/groundingConfigs/default_grounding_config:check" \
-d '{
"answerCandidate": "CANDIDATE",
"facts": [
{
"factText": "TEXT_0",
"attributes": {"ATTRIBUTE_A": "VALUE_A0","ATTRIBUTE_B": "VALUE_B0"}
},
{
"factText": "TEXT_1",
"attributes": {"ATTRIBUTE_A": "VALUE_A1","ATTRIBUTE_B": "VALUE_B1"}
},
{
"factText": "TEXT_2",
"attributes": {"ATTRIBUTE_A": "VALUE_A2","ATTRIBUTE_B": "VALUE_B2"}
}
],
"groundingSpec": {
"citationThreshold": "CITATION_THRESHOLD"
}
}'
Sostituisci quanto segue:
PROJECT_ID
: il numero o l'ID del tuo progetto Google Cloud.CANDIDATE
: la stringa della risposta candidata per la quale vuoi ottenere un punteggio di supporto, ad esempioTitanic was directed by James Cameron. It was released in 1997.
. Una risposta candidata può avere una lunghezza massima di 4096 token, dove un token è definito come una parola in una frase o un punto (un segno di punteggiatura utilizzato per terminare la frase). Ad esempio, la frase "Indossavano abiti di serie nel 2024" è composta da sette token, tra cui sei parole e un punto.TEXT
: il segmento di testo da utilizzare per il grounding, ad esempioTitanic is a 1997 American epic... Academy Awards.
(vedi il testo completo in Esempi di fatti).ATTRIBUTE
: il nome di un attributo dei metadati associato al fatto, ad esempioauthor
otitle
. Si tratta di un'etichetta definita dall'utente per aggiungere ulteriori informazioni al testo del fatto. Ad esempio, se il testo del fattoToronto is the capital of Ontario
ha un attributoauthor
con valoreWikipedia
, le seguenti affermazioni sono considerate fondate sul fatto:Wikipedia cites that Toronto is the capital of Ontario
Toronto is the capital of Ontario
Tuttavia, l'affermazione che
Government of Ontario claims that Toronto is the capital of Ontario
non è fondata quanto le prime due.
VALUE
: il valore dell'attributo, ad esempioSimple Wikipedia
oTitanic (1997 film)
.CITATION_THRESHOLD
: un valore in virgola mobile compreso tra 0 e 1 che determina se è necessario citare un fatto per un'affermazione nella risposta candidata. Una soglia più alta genera meno citazioni, ma più autorevoli, mentre una soglia più bassa genera più citazioni, ma meno autorevoli. Se non viene impostato, il valore predefinito della soglia è0.6
.
Python
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Python Vertex AI Agent Builder.
Per autenticarti in Vertex AI Agent Builder, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Esempi di fatti
Di seguito sono riportati alcuni esempi di fatti e relativi attributi. Questi esempi hanno lo scopo di aiutarti a comprendere la risposta di messa a terra e il formato del comando curl.
Dato 0
Testo:
"Titanic is a 1997 American epic romantic disaster movie. It was directed, written, and co-produced by James Cameron. The movie is about the 1912 sinking of the RMS Titanic. It stars Kate Winslet and Leonardo DiCaprio. The movie was released on December 19, 1997. It received positive critical reviews. The movie won 11 Academy Awards, and was nominated for fourteen total Academy Awards."
Attributi:
{"Author": "Simple Wikipedia"}
Dato 1
Testo:
"James Cameron's "Titanic" is an epic, action-packed romance set against the ill-fated maiden voyage of the R.M.S. Titanic; the pride and joy of the White Star Line and, at the time, the largest moving object ever built. She was the most luxurious liner of her era -- the "ship of dreams" -- which ultimately carried over 1,500 people to their death in the ice cold waters of the North Atlantic in the early hours of April 15, 1912."
Attributi:
{"Author": "Rotten Tomatoes"}
Richiesta di esempio
Dopo aver preparato i fatti, puoi inviare la seguente richiesta, sostituendo il campo CANDIDATE con stringhe diverse di cui vuoi verificare la validità.
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
"https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/groundingConfigs/default_grounding_config:check" \
-d '{
"answerCandidate": "CANDIDATE",
"facts": [
{
"factText": "Titanic is a 1997 American epic romantic disaster movie. It was directed, written, and co-produced by James Cameron. The movie is about the 1912 sinking of the RMS Titanic. It stars Kate Winslet and Leonardo DiCaprio. The movie was released on December 19, 1997. It received positive critical reviews. The movie won 11 Academy Awards, and was nominated for fourteen total Academy Awards.",
"attributes": {"author":"Simple Wikipedia"}
},
{
"factText": "James Cameron's \"Titanic\" is an epic, action-packed romance set against the ill-fated maiden voyage of the R.M.S. Titanic; the pride and joy of the White Star Line and, at the time, the largest moving object ever built. She was the most luxurious liner of her era -- the \"ship of dreams\" -- which ultimately carried over 1,500 people to their death in the ice cold waters of the North Atlantic in the early hours of April 15, 1912.",
"attributes": {"author":"Simple Wikipedia"}
}
],
"groundingSpec": {
"citationThreshold": "0.6"
}
}'
Esempi di risposte candidate e risposte di base
La tabella seguente mostra esempi di risposte e candidati per le risposte diversi quando invii la richiesta di esempio, in base ai fatti di esempio.
Risposta candidata | Controlla la risposta di messa a terra |
---|---|
Here is what I found. Titanic was directed by James Cameron.
|
Punteggio di assistenza: 0.99 Blocchi citati:
|
Titanic was directed by James Cameron. It was released in
1997.
|
Punteggio di assistenza: 0.99 Blocchi citati:
|
Titanic was directed by James Cameron. It was based on the sinking
of the RMS Titanic that led to the death of 1500 people.
|
Punteggio di assistenza: 0.95 Blocchi citati:
|
Titanic was directed by James Cameron. It starred Brad Pitt and
Kate Winslet
|
Punteggio di assistenza: 0.54 Blocchi citati:
"It starred Brad Pitt and Kate Winslet" non è completamente vera, non viene citata. In questo caso, puoi chiamare il metodo con le citazioni anti-antipirateria abilitate per ottenere un punteggio di contraddizione.
Per ulteriori informazioni, consulta
Ottenere un punteggio di contraddizione per
una risposta candidata. |
Ottenere un punteggio di contraddizione per una risposta candidata
Oltre al punteggio di supporto, puoi anche ottenere un punteggio di contraddizione. Il punteggio di contraddizione approssima liberamente la frazione di affermazioni che contraddicono i fatti forniti.
Per provare questa funzionalità sperimentale, contatta il team degli Account Google e richiedi di essere aggiunto alla lista consentita.
Ottenere un punteggio di contraddizione
Per ottenere il punteggio di contraddizione:
Prepara il tuo insieme di fatti. Per ulteriori informazioni ed esempi, consulta la sezione Termini definiti e spiegati.
Chiama il metodo
check
utilizzando il seguente comando curl:curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/groundingConfigs/default_grounding_config:check" \ -d '{ "answerCandidate": "CANDIDATE", "facts": [ { "factText": "TEXT_0", "attributes": {"ATTRIBUTE_A": "VALUE_A0","ATTRIBUTE_B": "VALUE_B0"} }, { "factText": "TEXT_1", "attributes": {"ATTRIBUTE_A": "VALUE_A1","ATTRIBUTE_B": "VALUE_B1"} }, { "factText": "TEXT_2", "attributes": {"ATTRIBUTE_A": "VALUE_A2","ATTRIBUTE_B": "VALUE_B2"} }, ], "groundingSpec": { "citationThreshold": "CITATION_THRESHOLD", "enableAntiCitations": "ENABLE_ANTI_CITATION", "antiCitationThreshold": "ANTI_CITATION_THRESHOLD", } }'
Sostituisci quanto segue:
PROJECT_ID
: il numero o l'ID del tuo progetto Google Cloud.CANDIDATE
: la stringa della risposta candidata per la quale vuoi ottenere un punteggio di supporto, ad esempioTitanic was directed by James Cameron. It was released in 1997.
. Una risposta candidata può avere una lunghezza massima di 4096 token, dove un token è definito come una parola in una frase o un punto (un segno di punteggiatura utilizzato per terminare la frase). Ad esempio, la frase "Indossavano abiti di serie nel 2024" è composta da sette token, tra cui sei parole e un punto.TEXT
: il segmento di testo da utilizzare per il grounding, ad esempioTitanic is a 1997 American epic... Academy Awards.
(vedi il testo completo in Esempi di fatti).ATTRIBUTE
: il nome di un attributo metadati associato al fatto, ad esempioauthor
otitle
. È un'etichetta definita dall'utente per aggiungere ulteriori informazioni al testo del fatto. Ad esempio, se il testo del fattoToronto is the capital of Ontario
ha un attributoauthor
con valoreWikipedia
, le seguenti affermazioni sono fondate:Wikipedia cites that Toronto is the capital of Ontario
Toronto is the capital of Ontario
Tuttavia, l'affermazione che
Government of Ontario claims that Toronto is the capital of Ontario
non è così fondata.VALUE
: il valore dell'attributo, ad esempioSimple Wikipedia
oTitanic (1997 film)
.CITATION_THRESHOLD
: un valore in virgola mobile compreso tra 0 e 1 che determina se è necessario citare un fatto per un'affermazione nella risposta candidata. Una soglia più alta comporta meno citazioni, ma più autorevoli, a sostegno della rivendicazione, mentre una soglia più bassa comporta più citazioni, ma meno autorevoli, a sostegno della rivendicazione. Se non viene impostato, il valore predefinito della soglia è 0,6.ENABLE_ANTI_CITATION
: un valore booleano. Imposta questo campo sutrue
per consentire alla funzionalità sperimentale di valutare il punteggio di contraddizione. Rimuovi questo campo o impostalo sufalse
per disattivare questa funzionalità.ANTI_CITATION_THRESHOLD
: un valore float compreso tra 0 e 1 che determina se un fatto deve essere citato come in contraddizione con un'affermazione nella risposta candidata. Una soglia più alta genera meno citazioni, ma più forti, che contraddicono la rivendicazione, mentre una soglia più bassa genera più citazioni, ma meno forti, che contraddicono la rivendicazione. Se non viene impostato, il valore della soglia predefinito è 0,8.
Richiesta di esempio
Utilizzando i fatti di esempio della sezione precedente, puoi inviare la seguente richiesta. Sostituisci il campo CANDIDATE
con diverse stringhe di cui vuoi verificare la fondatezza e le contraddizioni.
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
"https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/groundingConfigs/default_grounding_config:check" \
-d '{
"answerCandidate": "CANDIDATE",
"facts": [
{
"factText": "Titanic is a 1997 American epic romantic disaster movie. It was directed, written, and co-produced by James Cameron. The movie is about the 1912 sinking of the RMS Titanic. It stars Kate Winslet and Leonardo DiCaprio. The movie was released on December 19, 1997. It received positive critical reviews. The movie won 11 Academy Awards, and was nominated for fourteen total Academy Awards.",
"attributes": {"author":"Simple Wikipedia"}
},
{
"factText": "James Cameron's \"Titanic\" is an epic, action-packed romance set against the ill-fated maiden voyage of the R.M.S. Titanic; the pride and joy of the White Star Line and, at the time, the largest moving object ever built. She was the most luxurious liner of her era -- the \"ship of dreams\" -- which ultimately carried over 1,500 people to their death in the ice cold waters of the North Atlantic in the early hours of April 15, 1912.",
"attributes": {"author":"Simple Wikipedia"}
}
],
"groundingSpec": {
"citationThreshold": "0.6",
"enableAntiCitations": true,
"antiCitationThreshold": "0.8",
}
}'
Esempio di risposte con contraddizioni
La tabella seguente mostra un esempio di risposta candidata e la relativa risposta quando invii la richiesta di esempio, in base ai fatti di esempio.
Risposta candidata | Controlla la risposta di messa a terra |
---|---|
Titanic was directed by James Cameron. It starred Brad Pitt and
Kate Winslet
|
Punteggio di supporto: 0.36 Punteggio di contraddizione: 0.49 Chunk citati:
|
Ottenere un punteggio di utilità per una risposta candidata
Per provare questa funzionalità sperimentale, contatta il team degli Account Google e richiedi di essere aggiunto alla lista consentita.
Oltre al punteggio di supporto e al punteggio di contraddizione, l'API check grounding può fornire un punteggio di utilità. Una risposta utile è quella che soddisfa efficacemente la richiesta dell'utente (come indicato nel prompt) in modo informativo. Il punteggio di utilità misura il grado di efficacia della risposta in base ai seguenti criteri:
- Risponde all'intent principale del prompt
- Fornisce dettagli completi, ma è conciso
- Risponde direttamente alla domanda posta o completa l'attività richiesta nel prompt
- Offre informazioni pertinenti
- È chiara e semplice
- Evita dettagli e gergo non necessari
Per ottenere un punteggio di utilità insieme al punteggio di fondatezza, devi fornire un prompt insieme alle risposte candidate e ai fatti. L'API di verifica della motivazione esamina la risposta candidata con il prompt e assegna un punteggio che indica quanto sia utile la risposta candidata al prompt. Il punteggio rientra nell'intervallo [0,1], dove un punteggio più alto indica una risposta più utile.
Ottenere un punteggio di utilità
Per ottenere il punteggio di utilità:
Prepara il prompt e rispondi al candidato.
Chiama il metodo
check
utilizzando il seguente comando curl:curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/groundingConfigs/default_grounding_config:check" \ -d '{ "answerCandidate": "CANDIDATE", "facts": [ { "factText": "TEXT_0", "attributes": {"ATTRIBUTE_A": "VALUE_A0","ATTRIBUTE_B": "VALUE_B0"} }, { "factText": "TEXT_1", "attributes": {"ATTRIBUTE_A": "VALUE_A1","ATTRIBUTE_B": "VALUE_B1"} }, { "factText": "TEXT_2", "attributes": {"ATTRIBUTE_A": "VALUE_A2","ATTRIBUTE_B": "VALUE_B2"} } ], "groundingSpec": { "enableHelpfulnessScore": true }, "prompt": "PROMPT", }'
Sostituisci quanto segue:
PROJECT_ID
: il numero o l'ID del tuo progetto Google Cloud.CANDIDATE
: la stringa della risposta candidata per la quale vuoi ottenere un punteggio di utilità, ad esempioTitanic was directed by James Cameron. It was released in 1997.
. Una risposta candidata può avere una lunghezza massima di 4096 token.TEXT
: il segmento di testo da utilizzare per il grounding, ad esempioTitanic is a 1997 American epic... Academy Awards.
(vedi il testo completo in Esempi di fatti).ATTRIBUTE
: il nome di un attributo metadati associato al fatto, ad esempioauthor
otitle
. È un'etichetta definita dall'utente per aggiungere ulteriori informazioni al testo del fatto. Ad esempio, se il testo del fattoToronto is the capital of Ontario
ha un attributoauthor
con valoreWikipedia
, le seguenti affermazioni sono fondate:Wikipedia cites that Toronto is the capital of Ontario
Toronto is the capital of Ontario
Tuttavia, l'affermazione che
Government of Ontario claims that Toronto is the capital of Ontario
non è così fondata.VALUE
: il valore dell'attributo, ad esempioSimple Wikipedia
oTitanic (1997 film)
.PROMPT
: il prompt è la query a cui è stata generata la risposta candidata, ad esempioWho directed and starred in the movie Titanic?
.
Richiesta di esempio
Utilizzando i fatti di esempio della sezione precedente, puoi inviare la seguente richiesta. Sostituisci il campo CANDIDATE
con diverse risposte candidate per ottenere un punteggio di utilità per la risposta.
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
"https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/groundingConfigs/default_grounding_config:check" \
-d '{
"answerCandidate": "CANDIDATE",
"facts": [
{
"factText": "Titanic is a 1997 American epic romantic disaster movie. It was directed, written, and co-produced by James Cameron. The movie is about the 1912 sinking of the RMS Titanic. It stars Kate Winslet and Leonardo DiCaprio. The movie was released on December 19, 1997. It received positive critical reviews. The movie won 11 Academy Awards, and was nominated for fourteen total Academy Awards.",
"attributes": {"author":"Simple Wikipedia"}
},
{
"factText": "James Cameron's \"Titanic\" is an epic, action-packed romance set against the ill-fated maiden voyage of the R.M.S. Titanic; the pride and joy of the White Star Line and, at the time, the largest moving object ever built. She was the most luxurious liner of her era -- the \"ship of dreams\" -- which ultimately carried over 1,500 people to their death in the ice cold waters of the North Atlantic in the early hours of April 15, 1912.",
"attributes": {"author":"Simple Wikipedia"}
}
],
"groundingSpec": {
"enableHelpfulnessScore": true
},
"prompt": "Who directed and starred in the movie Titanic?"
}'
Esempio di risposte con punteggi di utilità
La seguente tabella mostra esempi di risposte candidate con i relativi punteggi di utilità. In ogni caso, il prompt è Who directed and starred in the Titanic?
Risposta candidata | Punteggio di utilità | Spiegazione del punteggio |
---|---|---|
Titanic was directed by James Cameron. It starred Leonardo DiCaprio and
Kate Winslet.
|
0.980
|
Punteggio conciso e completo |
Cameron, DiCaprio and Winslet.
|
0.947
|
Incompleto |
James Cameron's 1997 masterpiece, Titanic, captured the hearts of
audiences worldwide with its tragic love story set against the backdrop of
the ill-fated maiden voyage of the "unsinkable" ship. The film, a
mesmerizing blend of historical drama and fictional romance, starred
Leonardo DiCaprio as Jack Dawson, a penniless artist who falls for Rose
DeWitt Bukater, a young woman trapped by her social standing and played
exquisitely by Kate Winslet. Their passionate love affair unfolds amidst
the grandeur and opulence of the Titanic, a floating palace of dreams that
ultimately succumbs to a devastating fate.
|
0.738
|
Non conciso |
Ottenere i punteggi a livello di rivendicazione per una risposta candidata
Oltre al punteggio di assistenza a livello di risposta, puoi ottenere un punteggio di assistenza a livello di rivendicazione per ogni rivendicazione in una risposta candidata.
Per provare questa funzionalità sperimentale, contatta il team degli Account Google e richiedi di essere aggiunto alla lista consentita.
Per ottenere i punteggi a livello di rivendicazione:
Prepara il tuo insieme di fatti. Per ulteriori informazioni ed esempi, consulta la sezione Termini definiti e spiegati.
Chiama il metodo
check
utilizzando il seguente comando curl:curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/groundingConfigs/default_grounding_config:check" \ -d '{ "answerCandidate": "CANDIDATE", "facts": [ { "factText": "TEXT_0", "attributes": {"ATTRIBUTE_A": "VALUE_A0","ATTRIBUTE_B": "VALUE_B0"} }, { "factText": "TEXT_1", "attributes": {"ATTRIBUTE_A": "VALUE_A1","ATTRIBUTE_B": "VALUE_B1"} }, { "factText": "TEXT_2", "attributes": {"ATTRIBUTE_A": "VALUE_A2","ATTRIBUTE_B": "VALUE_B2"} }, ], "groundingSpec": { "citationThreshold": "CITATION_THRESHOLD", "enableClaimLevelScore": "ENABLE_CLAIM_LEVEL_SCORE", } }'
Sostituisci quanto segue:
PROJECT_ID
: il numero o l'ID del tuo progetto Google Cloud.CANDIDATE
: la stringa della risposta candidata per la quale vuoi ottenere un punteggio di supporto, ad esempioTitanic was directed by James Cameron. It was released in 1997.
. Una risposta candidata può avere una lunghezza massima di 4096 token, dove un token è definito come una parola in una frase o un punto (un segno di punteggiatura utilizzato per terminare la frase). Ad esempio, la frase "Indossavano abiti di serie nel 2024" è composta da sette token, tra cui sei parole e un punto.TEXT
: il segmento di testo da utilizzare per il grounding, ad esempioTitanic is a 1997 American epic... Academy Awards.
(vedi il testo completo in Esempi di fatti).ATTRIBUTE
: il nome di un attributo metadati associato al fatto, ad esempioauthor
otitle
. È un'etichetta definita dall'utente per aggiungere ulteriori informazioni al testo del fatto. Ad esempio, se il testo del fattoToronto is the capital of Ontario
ha un attributoauthor
con valoreWikipedia
, le seguenti affermazioni sono fondate:Wikipedia cites that Toronto is the capital of Ontario
Toronto is the capital of Ontario
Tuttavia, l'affermazione che
Government of Ontario claims that Toronto is the capital of Ontario
non è così fondata.VALUE
: il valore dell'attributo, ad esempioSimple Wikipedia
oTitanic (1997 film)
.CITATION_THRESHOLD
: un valore in virgola mobile compreso tra 0 e 1 che determina se è necessario citare un fatto per un'affermazione nella risposta candidata. Una soglia più alta comporta meno citazioni, ma più autorevoli, a sostegno della rivendicazione, mentre una soglia più bassa comporta più citazioni, ma meno autorevoli, a sostegno della rivendicazione. Se non viene impostato, il valore predefinito della soglia è 0,6.ENABLE_CLAIM_LEVEL_SCORE
: un valore booleano. Imposta questo campo sutrue
per attivare la funzionalità del punteggio a livello di rivendicazione. Per disattivare questa funzionalità, rimuovi questo campo o impostalo sufalse
.
Richiesta di esempio
Utilizzando i fatti di esempio della sezione precedente, puoi inviare la seguente richiesta. Sostituisci il campo CANDIDATE
con stringhe diverse di cui vuoi verificare la motivazione per ogni rivendicazione.
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
"https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/groundingConfigs/default_grounding_config:check" \
-d '{
"answerCandidate": "CANDIDATE",
"facts": [
{
"factText": "Titanic is a 1997 American epic romantic disaster movie. It was directed, written, and co-produced by James Cameron. The movie is about the 1912 sinking of the RMS Titanic. It stars Kate Winslet and Leonardo DiCaprio. The movie was released on December 19, 1997. It received positive critical reviews. The movie won 11 Academy Awards, and was nominated for fourteen total Academy Awards.",
"attributes": {"author":"Simple Wikipedia"}
},
{
"factText": "James Cameron's \"Titanic\" is an epic, action-packed romance set against the ill-fated maiden voyage of the R.M.S. Titanic; the pride and joy of the White Star Line and, at the time, the largest moving object ever built. She was the most luxurious liner of her era -- the \"ship of dreams\" -- which ultimately carried over 1,500 people to their death in the ice cold waters of the North Atlantic in the early hours of April 15, 1912.",
"attributes": {"author":"Simple Wikipedia"}
}
],
"groundingSpec": {
"citationThreshold": "0.6",
"enableClaimLevelScore": true,
}
}'
Esempio di risposte con punteggi a livello di rivendicazione
La tabella seguente mostra un esempio di risposta candidata e la relativa risposta quando invii la richiesta di esempio, in base ai fatti di esempio.
Risposta candidata | Controlla la risposta di messa a terra |
---|---|
Here is what I found. Titanic was directed by James Cameron. It
starred Kate Winslet and Leonardo DiCaprio.
|
Punteggio di assistenza: 0.99 Blocchi citati:
|
Verificare l'isolamento con un datastore
Per impostazione predefinita, la verifica della grounding viene eseguita in base a un insieme di fatti forniti in linea nella chiamata dell'API di verifica della grounding. Tuttavia, in alternativa alla fornitura dei fatti in linea, puoi verificare la risposta candidata rispetto a tutti i fatti in un datastore di Vertex AI Search.
Quando chiami l'API di verifica del grounding, fornisci il nome di un'app di ricerca Vertex AI. A loro volta, i datastore non strutturati associati a quell'app di ricerca contengono l'insieme di fatti utilizzati per verificare il grounding della risposta candidata.
Per verificare l'isolamento rispetto a un datastore:
Identifica un'app di ricerca generica associata ad almeno un datastore che contiene dati non strutturati. I documenti in questo datastore fungono da fonte per i fatti di base.
Per scoprire come creare un datastore e un'app di ricerca, consulta Creare un datastore di ricerca e Creare un'app di ricerca.
Trova l'ID app. Se hai già l'ID app, vai al passaggio successivo.
Nella console Google Cloud, vai alla pagina Agent Builder.
Nella pagina App, trova il nome della tua app e recupera l'ID dall'app la colonna ID.
Chiama il metodo
check
utilizzando il seguente comando curl:curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/groundingConfigs/default_grounding_config:check" \ -d '{ "answerCandidate": "CANDIDATE", "groundingSource": { "searchSource": "projects/SOURCE_PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/servingConfigs/default_search" } }'
Sostituisci quanto segue:
PROJECT_ID
: il numero o l'ID del tuo progetto Google Cloud.SOURCE_PROJECT_ID
: il numero o l'ID del progetto che contiene l'app per l'isolamento.Questo progetto di origine deve trovarsi nella stessa regione del tuo progetto, ad esempio
global
oeu
. Per informazioni generali sulle località multiregionali, consulta Località.CANDIDATE
: la stringa della risposta candidata per la quale vuoi ottenere un punteggio di supporto, ad esempioTitanic was directed by James Cameron. It was released in 1997.
. Una risposta candidata può avere una lunghezza massima di 4096 token, dove un token è definito come una parola in una frase o un punto (un segno di punteggiatura utilizzato per terminare la frase). Ad esempio, la frase "Indossavano abiti di serie nel 2024" è composta da sette token, tra cui sei parole e un punto.APP_ID
: l'ID dell'app di ricerca Vertex AI i cui datastore non strutturati contengono i fatti che vuoi utilizzare come origine del grounding.