Nesta página, explicamos como embasar respostas usando seus dados da Vertex AI para Pesquisa.
Embasar o Gemini com seus dados
Se você quiser fazer a geração aumentada de recuperação (RAG), conecte seu modelo aos dados do site ou aos conjuntos de documentos e use o embasamento com a Vertex AI para Pesquisa.
O embasamento com seus dados aceita um máximo de 10 fontes de dados da Vertex AI para Pesquisa e pode ser combinado com o Embasamento com a Pesquisa Google.
Modelos compatíveis
Esta seção lista os modelos que oferecem suporte ao embasamento com seus dados.
- Gemini 2.5 Flash (pré-lançamento)
- Gemini 2.5 Flash-Lite (Pré-lançamento)
- Gemini 2.5 Flash-Lite
- Gemini 2.5 Flash com áudio nativo da API Live (pré-lançamento)
- Gemini 2.0 Flash com API Live (pré-lançamento)
- Gemini 2.5 Pro
- Gemini 2.5 Flash
- Gemini 2.0 Flash
Pré-requisitos
Antes de embasar a saída do modelo nos dados, faça o seguinte:
No console do Google Cloud , acesse a página IAM e pesquise a permissão
discoveryengine.servingConfigs.search
, que é necessária para o serviço de embasamento funcionar.Ative os Aplicativos de IA e a API.
Crie uma fonte de dados e um aplicativo dos Aplicativos de IA.
Consulte a Introdução à Vertex AI para Pesquisa para mais informações.
Ativar aplicativos de IA
No console Google Cloud , acesse a página Aplicativos de IA.
Leia e aceite os Termos de Serviço e clique em Continuar e ativar a API.
Os aplicativos de IA estão disponíveis no local global
ou nas multirregiões eu
e us
. Para
saber mais, consulte Locais dos aplicativos de IA.
Criar um repositório de dados nos Aplicativos de IA
Para criar um repositório de dados nos Aplicativos de IA, você pode escolher embasar com dados de sites ou documentos.
Site
Abra a página Criar um data store no console do Google Cloud .
Na caixa Conteúdo do site, clique em Selecionar.
O painel Especificar os sites do repositório de dados vai aparecer.Se a Indexação avançada de sites não estiver marcada, selecione a caixa de seleção Indexação avançada de sites para ativar.
O painel Configurar seu repositório de dados é exibido.Na seção Especificar padrões de URL para indexar, faça o seguinte:
- Adicione URLs para Sites a serem incluídos.
- Opcional: adicione URLs para Sites a serem excluídos.
Clique em Continuar.
No painel Configurar seu repositório de dados,
- Selecione um valor na lista Local do repositório de dados.
- Insira um nome no campo Nome do repositório de dados. O ID é gerado. Use esse ID ao gerar respostas embasadas com seu repositório de dados. Para mais informações, consulte Gerar respostas embasadas com seu repositório de dados.
- Clique em Criar.
Documentos
Abra a página Criar um data store no console do Google Cloud .
Na caixa Cloud Storage, clique em Selecionar.
O painel Importar dados do Cloud Storage vai aparecer.Na seção Documentos não estruturados (PDF, HTML, TXT e mais), selecione Documentos não estruturados (PDF, HTML, TXT e mais).
Selecione uma opção de Frequência de sincronização.
Selecione uma opção em Selecionar uma pasta ou um arquivo para importar e insira o caminho no campo.
Clique em Continuar.O painel
Configurar seu repositório de dados vai aparecer.No painel Configurar seu repositório de dados,
- Selecione um valor na lista Local do repositório de dados.
- Insira um nome no campo Nome do repositório de dados. O ID é gerado.
- Para selecionar opções de análise e divisão em partes para seus documentos, expanda a seção Opções de processamento de documentos. Para mais informações sobre diferentes analisadores, consulte Analisar documentos.
- Clique em Criar.
Clique em Criar.
Gerar respostas embasadas com seu repositório de dados
Use as instruções a seguir para embasar um modelo com seus dados. É possível usar no máximo 10 armazenamentos de dados.
Se você não souber o ID do repositório de dados, siga estas etapas:
No console Google Cloud , acesse a página Aplicativos de IA e, no menu de navegação, clique em Repositórios de dados.
Clique no nome do seu repositório de dados.
Na página Dados do seu repositório de dados, encontre o ID do repositório.
Console
Para embasar a saída do modelo com aplicativos de IA usando o Vertex AI Studio no consoleGoogle Cloud , siga estas etapas:
- No console Google Cloud , acesse a página Vertex AI Studio Freeform.
- Para ativar o embasamento, clique no botão Embasamento: seus dados.
- Clique em Personalizar.
- Selecione Vertex AI para Pesquisa como sua fonte.
- Usando esse formato de caminho, substitua o ID do projeto e o ID do repositório de dados:
projects/project_id/locations/global/collections/default_collection/dataStores/data_store_id.
- Clique em Salvar.
- Insira o comando na caixa de texto e clique em Enviar.
Suas respostas aos comandos são embasadas em aplicativos de IA.
Python
Instalar
pip install --upgrade google-genai
Para saber mais, consulte a documentação de referência do SDK.
Defina variáveis de ambiente para usar o SDK de IA generativa com a Vertex AI:
# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values # with appropriate values for your project. export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT export GOOGLE_CLOUD_LOCATION=global export GOOGLE_GENAI_USE_VERTEXAI=True
from google import genai
from google.genai.types import (
GenerateContentConfig,
VertexAISearch,
Retrieval,
Tool,
HttpOptions,
)
client = genai.Client(http_options=HttpOptions(api_version="v1"))
# Replace with your Vertex AI Search data store details
DATA_STORE_PATH = "projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID"
tool = Tool(
retrieval=Retrieval(
vertex_ai_search=VertexAISearch(
data_store=DATA_STORE_PATH
)
)
)
response = client.models.generate_content(
model="gemini-2.5-flash", # Or another supported model
contents="What information can you find about topic X in the provided documents?", # Your query
config=GenerateContentConfig(
tools=[tool],
),
)
print(response.text)
REST
Para testar um prompt de texto usando a API Vertex AI, envie uma solicitação POST para o endpoint do modelo do editor.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- LOCATION: a região para processar a solicitação. Para usar o endpoint
global
, exclua o local do nome do endpoint e configure o local do recurso comoglobal
. - PROJECT_ID: o ID do projeto.
- MODEL_ID: o ID do modelo multimodal.
- PROMPT: o comando a ser enviado para o modelo.
Método HTTP e URL:
POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:generateContent
Corpo JSON da solicitação:
{ "contents": [{ "role": "user", "parts": [{ "text": "PROMPT" }] }], "tools": [{ "retrieval": { "vertexAiSearch": { "datastore": projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID } } }], "model": "projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID" }
Para enviar a solicitação, expanda uma destas opções:
Você receberá uma resposta JSON semelhante a esta:
{ "candidates": [ { "content": { "role": "model", "parts": [ { "text": "You can make an appointment on the website https://dmv.gov/" } ] }, "finishReason": "STOP", "safetyRatings": [ "..." ], "groundingMetadata": { "retrievalQueries": [ "How to make appointment to renew driving license?" ], "groundingChunks": [ { "retrievedContext": { "uri": "https://vertexaisearch.cloud.google.com/grounding-api-redirect/AXiHM.....QTN92V5ePQ==", "title": "dmv" } } ], "groundingSupport": [ { "segment": { "startIndex": 25, "endIndex": 147 }, "segment_text": "ipsum lorem ...", "supportChunkIndices": [1, 2], "confidenceScore": [0.9541752, 0.97726375] }, { "segment": { "startIndex": 294, "endIndex": 439 }, "segment_text": "ipsum lorem ...", "supportChunkIndices": [1], "confidenceScore": [0.9541752, 0.9325467] } ] } } ], "usageMetadata": { "..." } }
Entender a resposta
A resposta das duas APIs inclui o texto gerado pelo LLM, que é chamado de candidato. Se o comando do modelo embasar corretamente com sua fonte de dados, as respostas vão incluir metadados de embasamento, que identificam as partes da resposta derivadas dos seus dados. No entanto, há vários motivos para esses metadados não serem fornecidos e a resposta ao comando não ser embasada. Esses motivos incluem baixa relevância de fonte ou informações incompletas na resposta do modelo.
Confira a seguir um detalhamento dos dados de saída:
- Função: indica o remetente da resposta embasada. Como a resposta sempre contém texto embasado, a função é sempre
model
. - Texto: a resposta embasada gerada pelo LLM.
- Metadados de embasamento: informações sobre a fonte de embasamento, que contém os seguintes elementos:
- Trechos de embasamento: uma lista de resultados do seu índice que apoiam a resposta.
- O embasamento oferece suporte a: informações sobre uma declaração específica na resposta que podem ser usadas para mostrar citações:
- Segmento: a parte da resposta do modelo que é fundamentada por um trecho de embasamento.
- Índice do trecho de embasamento: o índice dos trechos de embasamento na lista de trechos de embasamento que corresponde a esta declaração.
- Níveis de confiança: um número de 0 a 1 que indica o nível de embasamento da declaração no conjunto de partes de embasamento fornecido. Não disponível para Gemini 2.5 e versões mais recentes.
A seguir
- Para saber como enviar solicitações de comando de chat, consulte Chat com vários turnos.
- Para saber mais sobre as práticas recomendadas de IA responsável e os filtros de segurança da Vertex AI, consulte Práticas recomendadas de segurança.