Esta página apresenta a integração da Vertex AI Search com o mecanismo de RAG da Vertex AI.
A Vertex AI para Pesquisa oferece uma solução para recuperar e gerenciar dados nos seus aplicativos RAG da Vertex AI. Ao usar a Vertex AI para Pesquisa como seu back-end de recuperação, você pode melhorar a performance, a capacidade de escalonamento e a facilidade de integração.
Melhoria na performance e na capacidade de escalonamento: a Vertex AI Search foi projetada para processar grandes volumes de dados com latência excepcionalmente baixa. Isso significa tempos de resposta mais rápidos e melhor desempenho para seus aplicativos RAG, especialmente ao lidar com bases de conhecimento complexas ou extensas.
Gerenciamento de dados simplificado: importe dados de várias fontes, como sites, conjuntos de dados do BigQuery e buckets do Cloud Storage, que podem agilizar seu processo de ingestão de dados.
Integração perfeita: a Vertex AI oferece integração integrada com a Vertex AI para Pesquisa, que permite selecionar a Vertex AI para Pesquisa como o back-end do corpus do seu aplicativo RAG. Isso simplifica o processo de integração e ajuda a garantir a compatibilidade ideal entre os componentes.
Melhoria na qualidade da saída do LLM: ao usar os recursos de recuperação da Vertex AI para Pesquisa, você pode garantir que seu aplicativo de RAG recupere as informações mais relevantes do seu corpus, o que leva a saídas geradas pelo LLM mais precisas e informativas.
Vertex AI para Pesquisa
A Vertex AI Search reúne a recuperação profunda de informações, o processamento de linguagem natural e os recursos mais recentes no processamento de modelos de linguagem grandes (LLMs), que ajudam a entender a intenção do usuário e retornar os resultados mais relevantes para o usuário.
Com a Vertex AI para Pesquisa, é possível criar um aplicativo de pesquisa com a qualidade do Google usando dados que você controla.
Configurar a Vertex AI para Pesquisa
Para configurar uma pesquisa da Vertex AI, faça o seguinte:
Usar a Vertex AI para Pesquisa como um back-end de recuperação para o mecanismo RAG da Vertex AI
Depois de configurar a Vertex AI para Pesquisa, siga estas etapas para defini-la como o back-end de recuperação do aplicativo RAG.
Definir a Vertex AI para Pesquisa como o back-end de recuperação para criar um corpus de RAG
Estes exemplos de código mostram como configurar a Pesquisa da Vertex AI como o back-end de recuperação de um corpus RAG.
Para usar a linha de comando para criar um corpus RAG, faça o seguinte:
Criar um corpus RAG
Substitua as seguintes variáveis usadas no exemplo de código:
- PROJECT_ID: o ID do projeto Google Cloud .
- LOCATION: a região para processar a solicitação.
- DISPLAY_NAME: o nome de exibição do corpus de RAG que você quer criar.
- ENGINE_NAME: o nome completo do recurso do mecanismo de pesquisa da Vertex AI ou do repositório de pesquisa da Vertex AI.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://
LOCATION -aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID /locations/LOCATION /ragCorpora" \ -d '{ "display_name" : "DISPLAY_NAME ", "vertex_ai_search_config" : { "serving_config": "ENGINE_NAME /servingConfigs/default_search" } }'Monitorar o progresso
Substitua as seguintes variáveis usadas no exemplo de código:
- PROJECT_ID: o ID do projeto Google Cloud .
- LOCATION: a região para processar a solicitação.
- OPERATION_ID: o ID da operação de criação do corpus da RAG.
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://
LOCATION -aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID /locations/LOCATION /operations/OPERATION_ID "
Antes de testar esse exemplo, siga as instruções de configuração para Python no Guia de início rápido da Vertex AI sobre como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Vertex AI para Python.
Para autenticar na Vertex AI, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Extrair contextos usando a API RAG
Após a criação do corpus de RAG, os contextos relevantes podem ser recuperados da
Vertex AI Search pela API RetrieveContexts
.
Este exemplo de código demonstra como recuperar contextos usando REST.
Substitua as seguintes variáveis usadas no exemplo de código:
- PROJECT_ID: o ID do projeto Google Cloud .
- LOCATION: a região para processar a solicitação.
- RAG_CORPUS_RESOURCE: o nome do recurso do corpus
RAG.
Formato:
projects/{project}/locations/{location}/ragCorpora/{rag_corpus}.
- TEXT: o texto da consulta para receber contextos relevantes.
curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION -aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID /locations/LOCATION :retrieveContexts" \
-d '{
"vertex_rag_store": {
"rag_resources": {
"rag_corpus": "RAG_CORPUS_RESOURCE "
}
},
"query": {
"text": "TEXT "
}
}'
Para saber como instalar o SDK da Vertex AI para Python, consulte Instalar o SDK da Vertex AI para Python. Saiba mais na documentação de referência da API SDK da Vertex AI para Python.
Gerar conteúdo usando a API Gemini da Vertex AI
Para gerar conteúdo usando modelos do Gemini, faça uma chamada para a
API GenerateContent
da Vertex AI. Ao especificar o
RAG_CORPUS_RESOURCE
na solicitação, ele recupera automaticamente dados da
Vertex AI para Pesquisa.
Substitua as seguintes variáveis usadas no exemplo de código:
- PROJECT_ID: o ID do projeto Google Cloud .
- LOCATION: a região para processar a solicitação.
- MODEL_ID: modelo LLM para geração de conteúdo. Por exemplo,
gemini-1.5-flash-002
. - GENERATION_METHOD: método LLM para geração de conteúdo.
Exemplo:
generateContent
,streamGenerateContent
. - INPUT_PROMPT: o texto enviado ao LLM para geração de conteúdo. Tente usar uma instrução relevante para os documentos na Pesquisa da Vertex AI.
- RAG_CORPUS_RESOURCE: o nome do recurso do corpus
RAG. Formato:
projects/{project}/locations/{location}/ragCorpora/{rag_corpus}
. SIMILARITY_TOP_K: opcional. O número de principais contextos a serem recuperados.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://
LOCATION -aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID /locations/LOCATION /publishers/google/models/MODEL_ID :GENERATION_METHOD " \ -d '{ "contents": { "role": "user", "parts": { "text": "INPUT_PROMPT " } }, "tools": { "retrieval": { "disable_attribution": false, "vertex_rag_store": { "rag_resources": { "rag_corpus": "RAG_CORPUS_RESOURCE " }, "similarity_top_k":SIMILARITY_TOP_K } } } }'
Para saber como instalar o SDK da Vertex AI para Python, consulte Instalar o SDK da Vertex AI para Python. Saiba mais na documentação de referência da API SDK da Vertex AI para Python.