Deep Research è un agente Made by Google per gli utenti che devono raccogliere, analizzare e comprendere informazioni interne ed esterne.
Panoramica
Quando inserisci un prompt in Deep Research, ad esempio "Confronta i concorrenti del progetto di esempio", Deep Research valuta se la domanda è correlata alla ricerca, genera un piano che delinea i passaggi da seguire per eseguire la ricerca e trasmette in streaming domande e risposte man mano che procede con la ricerca. Poi genera un report dei risultati con citazioni e un riepilogo audio.
Per le fonti di ricerca, Deep Research utilizza i dati indicizzati dall'app. Può anche utilizzare i risultati web se la ricerca web è abilitata per l'app.
Ecco alcuni esempi di prompt per cui Deep Research genera report:
- Come possiamo migliorare l'esperienza utente della nostra app di mobile banking esistente per renderla più intuitiva e facile da usare?
- Come possiamo ridurre i tempi di attesa dei clienti durante le ore di punta senza compromettere la qualità dell'assistenza?
- Analizza la situazione economica dei paesi dell'Europa centrale.
- Confronta BigQuery con i suoi concorrenti e fornisci i risultati in formato tabellare.
Usare Deep Research
Gli utenti finali possono accedere a Deep Research e utilizzarlo tramite l'app. Deep Research ha accesso ai dati già indicizzati dall'app e, se abilitati, ai risultati web.
Puoi ottenere i risultati di Deep Research dall'app o utilizzando l'API (disponibile pubblicamente con una lista consentita).
Console
Per utilizzare Deep Research nell'app:
Nel menu di navigazione dell'app, vai a Deep Research.
Fai clic su Origini per selezionare le origini che l'agente deve includere per fornire gli approfondimenti sui dati più pertinenti.
Nelle origini, oltre alle origini di Gemini Enterprise, puoi anche scegliere di includere i risultati della Ricerca Google.
Inserisci un prompt in Deep Research e fai clic su Invia. Se il prompt non è correlato alla ricerca, Deep Research genera una risposta. Se il prompt è correlato alla ricerca, Deep Research delinea gli argomenti che l'agente prevede di ricercare in un piano di ricerca.
Se necessario, modifica il prompt dell'agente per generare un nuovo piano di ricerca più adatto alle tue esigenze.
Se il piano di ricerca ti soddisfa, fai clic su Avvia ricerca.
L'agente inizia la ricerca in base al piano:
- Trasmette in streaming gli argomenti che sta ricercando man mano che procede
- Genera un report dei risultati con citazioni
- Crea un riepilogo audio del report di 1-2 minuti
REST
Per utilizzare Deep Research tramite l'API:
Invia una richiesta al
streamAssistmetodo.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/collections/default_collection/engines/app_id/assistants/default_assistant:streamAssist" \ -d '{ "query": { "text": "QUERY" }, "agentsSpec": { "agentSpecs": { "agentId": "deep_research" } }, "toolsSpec": { "vertexAiSearchSpec": { "dataStoreSpecs": { "dataStore": "projects/PROJECT_ID/locations/global/collections/default_collection/datastores/DATA_STORE_ID" } }, "webGroundingSpec": {} } }'Sostituisci quanto segue:
PROJECT_ID: l'ID del tuo Google Cloud progetto.APP_ID: l'ID dell'app.QUERY: la query.DATA_STORE_ID: l'ID del datastore quando un'app ha più datastore. Se lo specifichi, la ricerca è limitata ai documenti nel datastore specificato.
Risposta
Se la richiesta va a buon fine, riceverai una risposta JSON simile alla seguente. Prendi nota di SESSION_ID. Questo è necessario per avviare il processo di ricerca nel passaggio successivo.
[{ "answer": { "name": "ANSWER_ASSIST_NAME", "state": "SUCCEEDED", "replies": [ { "groundedContent": { "content": { "role": "model", "text": "INLINE_TEXT" } }, }, { "groundedContent": { "content": { "role": "model", "text": "INLINE_TEXT_WITH_RESEARCH_PLAN" }, "contentMetadata": { "contentKind": "RESEARCH_PLAN" } }, } ], }, "sessionInfo": { "session": "SESSION_ID", "queryId": "QUERY_ID", "turnId": "TURN_ID" }, "assistToken": "ASSIST_TOKEN" } ]Avvia la ricerca per la query nel passaggio precedente. Per farlo, invia un'altra richiesta al
streamAssistmetodo. In questa richiesta, imposta la query suStart Researche aggiungi le informazioni sulla sessione del passaggio precedente.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/collections/default_collection/engines/app_id/assistants/default_assistant:streamAssist" \ -d '{ "query": { "text": "Start Research" }, "session": "SESSION_ID", "agentsSpec": { "agentSpecs": { "agentId": "deep_research" } }, "toolsSpec": { "vertexAiSearchSpec": { "dataStoreSpecs": { "dataStore": "projects/PROJECT_ID/locations/global/collections/default_collection/datastores/DATA_STORE_ID" } }, "webGroundingSpec": {} }, }'Sostituisci quanto segue:
PROJECT_ID: l'ID del tuo Google Cloud progetto.APP_ID: l'ID dell'app.SESSION_ID: l'ID sessione del passaggio precedente.DATA_STORE_ID: l'ID del datastore quando un'app ha più datastore. Se lo specifichi, la ricerca è limitata ai documenti nel datastore specificato.
Risposta
Se la richiesta va a buon fine, riceverai una risposta JSON simile alla seguente risposta troncata.
La risposta contiene un'istanza della
AssistAnswerrisorsa.Si tratta di una risposta in streaming, pertanto, a seconda della quantità di dati nella risposta di ricerca, potrebbe essere necessario del tempo per trasmetterla completamente in streaming.
[{ "answer": { "state": "IN_PROGRESS", "replies": [ { "groundedContent": { "content": { "role": "model", "text": "RESEARCH_QUESTION_1" }, "contentMetadata": { "contentKind": "RESEARCH_QUESTION", "contentId": "ID0" } }, } ] }, "assistToken": "ASSIST_TOKEN" }, { "answer": { "state": "IN_PROGRESS", "replies": [ { "groundedContent": { "content": { "role": "model", "text": "RESEARCH_ANSWER_1_PART_1" }, "contentMetadata": { "contentKind": "RESEARCH_ANSWER", "contentId": "ID0" } }, } ] }, "assistToken": "ASSIST_TOKEN" }, { "answer": { "state": "IN_PROGRESS", "replies": [ { "groundedContent": { "content": { "role": "model", "text": "RESEARCH_ANSWER_1_PART_2" }, "contentMetadata": { "contentKind": "RESEARCH_ANSWER", "contentId": "ID0" } }, } ] }, "assistToken": "ASSIST_TOKEN" }, { "answer": { "state": "IN_PROGRESS", "replies": [ { "groundedContent": { "content": { "role": "model", "text": "INLINE_TEXT" }, "textGroundingMetadata": { "references": [ { "documentMetadata": { "document": "DOCUMENT_ID", "uri": "DOCUMENT_REDIRECT_URI", "title": "DOCUMENT_TITLE", "pageIdentifier": "", "domain": "DOCUMENT_DOMAIN" } } ] "searchEntryPoints": [ { "renderedContent": "GROUNDING_SEARCH_ENTRY_POINT" } ] } } } ] } }, { "answer": { "state": "IN_PROGRESS", "replies": [ { "groundedContent": { "content": { "role": "model", "file": { "fileId": "AUDIO_FILE_ID" } }, "contentMetadata": { "contentKind": "RESEARCH_AUDIO_SUMMARY" } }, } ] }, "assistToken": "ASSIST_TOKEN" } { "answer": { "name": "ANSWER_ASSIST_NAME", "state": "SUCCEEDED" }, "sessionInfo": { "session": "SESSION_ID", "queryId": "QUERY_ID", "turnId": "TURN_ID" }, "assistToken": "ASSIST_TOKEN" }]