Crie aplicativos inteligentes com o Atlas Vector Search e o Google Vertex AI
Venkatesh Shanbhag, Ashwin Gangadhar4 min read • Published Sep 18, 2024 • Updated Sep 18, 2024
Avalie esse Tutorial
O cenário de desenvolvimento de aplicativos está evoluindo muito rapidamente. Atualmente, os usuários desejam experiências intuitivas e contextuais que entendam sua intenção e forneçam resultados relevantes mesmo quando as consultas não estão perfeitamente formuladas, pondo fim às práticas de pesquisa baseadas em palavras-chave. É aqui que o MongoDB Atlas e o Google Cloud Vertex AI podem ajudar os usuários a criar e implantar aplicativos escaláveis e resilientes.
MongoDB Atlas Vector Search é uma ferramenta de ponta que indexa e armazena vetores de alta dimensão, representando a essência de seus dados. Ele permite que você realize pesquisas de similaridade rápidas como um raio, recuperando resultados com base no significado e no contexto. O Google Vertex AI é uma plataforma abrangente de AI que abriga uma variedade de modelos e ferramentas pré-treinados, incluindo o poderoso Vertex AI PALM. Esse modelo de linguagem se destaca na extração de representações semânticas de dados de texto, gerando os vetores cruciais que alimentam o MongoDB Atlas Vector Search.
A Pesquisa Vetorial pode ser útil em uma variedade de contextos, como processamento de linguagem natural e sistemas de recomendação. É uma técnica poderosa que pode ser usada para encontrar dados semelhantes com base em seu significado.
Neste tutorial, veremos como começar a usar MongoDB Atlas e Vertex AI. Se você é novo no MongoDB Atlas, consulte a documentação para configurar o Google Cloud Marketplace ou use a página de registro do Atlas.
Certifique-se de ter os pré-requisitos abaixo configurados antes de começar a testar seu aplicativo.
Considere um caso de uso em que estamos carregando documentos PDF de amostra para o MongoDB Atlas como vetores e implantando um aplicativo no GCP para realizar uma pesquisa vetorial nos documentos PDF.
Começaremos com a criação do MongoDB Atlas Vector Search Index na coleção para armazenar e recuperar os vetores gerados pelo modelo Google Vertex AI PALM. Para armazenar e acessar vetores no MongoDB Atlas, precisamos criar um índice do Atlas Search.
- Navegue até a página Implantações de bancos de dados do seu projeto.
- Clique em Criar banco de dados. Nomeie seu banco de dados vertexaiApp e sua coleção chat-vec.
- Clique Atlas Search no menu "serviços" na barra de navegação.
- Clique emCriar Índice de Pesquisa e selecione Editor JSON em Atlas Vector Search. Em seguida, clique em Avançar.
- Na seção Banco deDados e Coleção, encontre o banco de dados vertexaiAppe selecione a coleçãochat-vec.
- Substitua a definição padrão pela seguinte definição de índice e clique em Avançar. Clique em Criar índice de pesquisa na página de revisão.
1 { 2 "fields": [ 3 { 4 "type":"vector", 5 "path":"vec", 6 "numDimensions":768, 7 "similarity": "cosine" 8 } 9 ] 10 }
Criaremos uma instância de máquina virtual do Google Cloud para executar e implantar o aplicativo. A VM do Google Cloud pode ter todas as configurações padrão. Para começar, faça login no Console do Google Cloud e execute as seguintes etapas:
- No console do Google Cloud, clique em Menu de navegação > Compute Engine.
- Crie uma nova instância de VM com as configurações abaixo:
- Nome: vertexai-chatapp
- Região: região próxima à sua localização física
- Configurações da máquina:
- Tipo de máquina: Alta memória, n1-padrão-1
- Disco de inicialização: Clique em ALTERAR
- Aumente o tamanho para 100 GB.
- Deixe as outras opções como padrão (Debian).
- Acesso: selecione Permitir acesso total a todas as APIs do Cloud.
- Firewall: selecionar tudo.
- Opções avançadas:
- Rede: expanda a interface de rede padrão.
- Para o intervalo de IPs externos: Expanda a seção e clique em RESERVE STATIC EXTERNAL IP ADDRESS (RESERVAR ENDEREÇO IP EXTERNO ESTÁTICO). Isso ajudará os usuários a acessar o aplicativo implantado a partir da Internet.
- Dê um nome ao seu IP e clique em Done (Concluído).
- Clique em CREATE e a VM será criada em cerca de dois a três minutos.
Depois que a instância de VM for criada, conecte-se por SSH à instância de VM e clone o repositório do GitHub.
1 git clone https://github.com/mongodb-partners/MongoDB-VertexAI-Qwiklab.git
O repositório contém um script para criar e implantar um aplicativoStreamlit para transformar e armazenar PDFs no MongoDB Atlas e, em seguida, pesquisá-los rapidamente com o Atlas Vector Search. O script app.py no repositório usa Python e LangChain para aproveitar o MongoDB Atlas como nossa fonte de dados e o Google Vertex AI para gerar embeddings.
Começamos configurando conexões e, em seguida, utilizamos as incorporações ChartVertexAI da LangChain e Vertex AI do Google para transformar o PDF que está sendo carregado em vetores pesquisáveis. Por fim, construímos a estrutura do aplicativo Streamlit, permitindo que os usuários insiram queries e visualizem os principais documentos recuperados com base na similaridade vetorial.
Instale as dependências necessárias em sua máquina virtual usando os comandos abaixo:
1 sudo apt update 2 sudo apt install python3-pip 3 sudo apt install git 4 git --version 5 pip3 --version 6 cd MongoDB-VertexAI-Qwiklab 7 pip3 install -r requirements.txt
Depois que os requisitos forem instalados, você poderá executar o aplicativo usando o comando abaixo. Abra o aplicativo usando o IP público da sua VM e a porta mencionada na saída do comando:
1 streamlit run app.py
O aplicativo usa a bibliotecaPdfReader para ler o arquivo PDF do usuário e agrupa os dados em lotes. Cada chunk é convertido em vetores usando as bibliotecas VertexAIEmbeddings do LangChain. O PDF carregado é gravado no MongoDB Atlas em blocos, juntamente com os vetores. Os dados podem ser visualizados em documentos do namespace vertexaiApp.chat-vec.
Para realizar uma pesquisa sobre os dados, navegue até a guia Perguntas e respostas em seu aplicativo. Digite sua query e pressione Enter. O aplicativo realizará uma pesquisa vetorial nos documentos do MongoDB usando o índice criado anteriormente. O aplicativo utiliza o modelo chat-bison para conversar com o usuário.
Neste tutorial, você aprendeu a criar um aplicativo simples usando o MongoDB Atlas e o Google Cloud Vertex AI usando o LangChain para acessar o MongoDB Atlas. Além disso, vimos como implantar o aplicativo na instância do Google Cloud Compute e acessá-lo usando o endereço IP público estático alocado.
Experimente o MongoDB Atlas gratuitamente no Google Cloud Marketplace usando nosso modelo de pagamento conforme o uso e aproveite nosso faturamento simplificado.
Principais comentários nos fóruns
Ainda não há comentários sobre este artigo.