LangChain na Vertex AI

O LangChain na Vertex AI (Prévia) permite aproveitar a biblioteca de código aberto LangChain para criar aplicativos personalizados de IA generativa e usar a Vertex AI para modelos, ferramentas e implantação. Com o LangChain na Vertex AI (pré-lançamento), é possível fazer o seguinte:

  • Selecione o modelo de linguagem grande (LLM) com que você quer trabalhar.
  • Definir as ferramentas para acessar APIs externas.
  • Estruture a interface entre o usuário e os componentes do sistema em um framework de orquestração.
  • Implantar o framework em um ambiente de execução gerenciado.

Vantagens

  • Personalizável: usando as interfaces padronizadas do LangChain, o LangChain na Vertex AI pode ser adotado para criar diferentes tipos de aplicativos. É possível personalizar a lógica do aplicativo e incorporar qualquer framework, oferecendo um alto grau de flexibilidade.
  • Simplifica a implantação: o LangChain na Vertex AI usa as mesmas APIs que o LangChain para interagir com LLMs e criar aplicativos. O LangChain na Vertex AI simplifica e acelera a implantação com LLMs da Vertex AI, já que o ambiente de execução do Reasoning Engine dá suporte à implantação de clique único para gerar uma API compatível com base na sua biblioteca.
  • Integração com ecossistemas da Vertex AI: o Reasoning Engine para LangChain na Vertex AI usa a infraestrutura e os contêineres pré-criados da Vertex AI para ajudar na implantação do aplicativo LLM. É possível usar a API Vertex AI para integração com modelos do Gemini, chamadas de função e extensões.
  • Seguro, particular e escalonável: é possível usar uma única chamada do SDK em vez de gerenciar o processo de desenvolvimento por conta própria. O ambiente de execução gerenciado do Reasoning Engine libera você de tarefas como desenvolvimento do servidor de aplicativos, criação de contêineres e configuração de autenticação, IAM e escalonamento. A Vertex AI lida com vulnerabilidades de contêiner, escalonamento automático e expansão regional.

Casos de uso

É possível usar o LangChain na Vertex AI para as seguintes tarefas:

Caso de uso Descrição de exemplo Link de exemplo
Extrair entidades de histórias em linguagem natural Extraia listas de personagens, relacionamentos, coisas e lugares de uma história. Notebook do SDK da Vertex AI para Python - Extração de dados estruturados usando chamada de função
Consulte e entenda bancos de dados SQL usando linguagem natural Peça para o modelo converter perguntas como "Que porcentagem de pedidos são devolvidos?". em consultas SQL e criar funções que enviam essas consultas para o BigQuery. Postagem do blog - Como criar um aplicativo de análise detalhada de dados do BigQuery com tecnologia de IA usando chamada de função no Gemini
Ajude os clientes a interagir com as empresas Crie funções que se conectam a um negócio API, permitindo que o modelo forneça respostas precisas para consultas como "Você tem o Pixel 8 Pro em estoque?" ou "Há uma loja em Mountain View, CA que eu possa visitar para experimentar?" Notebook do SDK da Vertex AI para Python: chamada de função com a API Gemini da Vertex AI e SDK para Python
Conecte-se a APIs públicas para criar aplicativos de IA generativa Converta entre moedas.

Criar uma função que se conecta a um app de câmbio de moedas, permitindo ao modelo fornecer respostas precisas a consultas como "Qual é a taxa de câmbio de reais para dólares hoje?"
Codelab: Como interagir com APIs usando chamadas de função no Gemini
Confira a previsão do tempo para um determinado local.

Criar uma função que se conecta a uma API de um serviço meteorológico, permitindo que o modelo forneça respostas precisas para consultas como "Como é o clima em Paris?".
Notebook do SDK da Vertex AI para Python: chamada de função com a API Gemini da Vertex AI e SDK para Python

Postagem do blog - Chamada de função: um framework para conectar o Gemini a sistemas, dados e APIs externos
Converta um endereço em coordenadas de latitude e longitude.

Crie uma função que converta dados de local estruturados em coordenadas de latitude e longitude. Peça ao modelo para identificar o endereço, cidade, estado e código postal em consultas como "Quero obter as coordenadas de latitude/longitude do seguinte endereço: 1600 Amphitheatre Pkwy, Mountain View, CA 94043, EUA".
Notebook do SDK da Vertex AI para Python: chamada de função com a API Gemini da Vertex AI e SDK para Python
Interpretar comandos de voz Crie funções correspondentes às tarefas automotivas. Por exemplo, crie funções que liguem o rádio ou ativem o ar-condicionado. Envie arquivos de áudio com os comandos de voz do usuário ao modelo e peça que ele converta o áudio em texto e identifique a função que o usuário quer chamar.  
Automatize fluxos de trabalho com base em gatilhos ambientais Criar funções para representar processos que podem ser automatizados. Forneça dados de sensores ambientais ao modelo e peça que ele analise e processe os dados para determinar se um ou mais fluxos de trabalho precisam ser ativados. Por exemplo, um modelo pode processar dados de temperatura em um armazém e ativar uma função de sprinkler.  
Automatizar a atribuição de tíquetes de suporte Forneça ao modelo tíquetes de suporte, registros e regras baseadas no contexto. Peça ao modelo para processar todas essas informações e determinar a quem o tíquete será atribuído. Chame uma função para atribuir o tíquete à pessoa sugerida pelo modelo.  
Recuperar informações de uma base de conhecimento Crie funções que recuperam artigos acadêmicos sobre um determinado assunto e os resumem. Habilite o modelo a responder perguntas sobre matérias acadêmicas e fornecer citações das respectivas respostas.  

Componentes do sistema

Criar e implantar um aplicativo de IA personalizado usando o OSS LangChain e a Vertex Generative AI consiste em quatro componentes:

ComponenteDescrição
LLM

Quando você envia uma consulta para seu aplicativo personalizado, o LLM a processa e fornece uma resposta.

É possível definir um conjunto de ferramentas que se comuniquem com APIs externas e fornecê-las ao modelo. Ao processar uma consulta, o modelo delega algumas tarefas às ferramentas. Isso implica uma ou mais chamadas de modelo para modelos de fundação ou ajustados.

Para saber mais, consulte Versões e ciclo de vida do modelo.

Ferramenta

É possível definir um conjunto de ferramentas que se comunica com APIs externas (por exemplo, um banco de dados) e fornecê-las ao modelo. Ao processar uma consulta, o modelo pode delegar algumas tarefas às ferramentas.

A implantação pelo ambiente de execução gerenciado da Vertex AI é otimizada para usar ferramentas baseadas na chamada de função do Gemini, mas oferece suporte à ferramenta LangChain/chamada de função. Para saber mais sobre como chamar uma função, consulte Chamada de função.

Framework de orquestração

O LangChain na Vertex AI permite usar o framework de orquestração do LangChain na Vertex AI. Usar o LangChain para decidir o nível de determinismo do seu aplicativo.

Se você já usa o LangChain, pode utilizar seu código existente do LangChain para implantar seu aplicativo na Vertex AI. Caso contrário, é possível criar seu próprio código de aplicativo e estruturá-lo em um framework de orquestração que usa os modelos LangChain da Vertex AI.

Para saber mais, consulte Desenvolver um aplicativo.

Ambiente de execução gerenciado O LangChain na Vertex AI permite implantar o aplicativo em um ambiente de execução gerenciado do Reasoning Engine. Esse ambiente de execução é um serviço da Vertex AI que tem todos os benefícios da integração da Vertex AI: segurança, privacidade, observabilidade e escalonabilidade. Você pode colocar o aplicativo em produção e escalonar o aplicativo com uma simples chamada de API, transformando rapidamente protótipos testados localmente em implantações prontas para a empresa. Para saber mais, consulte Implantar o aplicativo.

Há muitas maneiras diferentes de prototipar e criar aplicativos personalizados de IA generativa que aproveitam os recursos agentes, criando camadas para ferramentas, funções personalizadas e complementando modelos como o Gemini. Quando for a hora de mover o aplicativo para a produção, considere como implantar e gerenciar seu agente e todos os componentes subjacentes.

Com os componentes do LangChain na Vertex AI, o objetivo é ajudar você a se concentrar e personalizar os aspectos da funcionalidade do agente que mais importam, como funções personalizadas, comportamento do agente e parâmetros do modelo. enquanto o Google cuida da implantação, do empacotamento de escalonamento, das versões etc. Se você trabalha em um nível inferior na pilha, talvez precise gerenciar mais do que quer. Se você trabalha em um nível superior na pilha, talvez não tenha tanto controle do desenvolvedor quanto gostaria.

Fluxo do sistema no ambiente de execução

Quando o usuário faz uma consulta, ela é formatada pelo agente em um comando para o LLM. O LLM processa o comando e determina se quer usar alguma das ferramentas.

Se o LLM optar por usar uma ferramenta, ele gera um FunctionCall com o nome e os parâmetros com que a ferramenta precisa ser chamada. O agente invoca a ferramenta com o FunctionCall e fornece os resultados da ferramenta de volta ao LLM. Se o LLM optar por não usar nenhuma ferramenta, ele vai gerar um conteúdo que será transmitido pelo agente de volta ao usuário.

O diagrama a seguir ilustra o fluxo do sistema no ambiente de execução:

Fluxo do sistema no ambiente de execução 

Criar e implantar um aplicativo de IA generativa

O fluxo de trabalho para criar aplicativos de IA generativa é:

Etapas Descrição
1. configurar o ambiente Configure o projeto do Google e instale a versão mais recente do SDK da Vertex AI para Python.
2. desenvolver um aplicativo Desenvolver um aplicativo LangChain que possa ser implantado no Reasoning Engine.
3. Implante o aplicativo Implantar o aplicativo no Reasoning Engine.
4. usar o aplicativo Mecanismo de raciocínio de consulta para uma resposta.
5. gerenciar o aplicativo implantado Gerencie e exclua os aplicativos que você implantou no Reasoning Engine.
6. (Opcional) Personalizar um modelo de aplicativo Personalize um modelo para novos aplicativos.

As etapas estão ilustradas no diagrama a seguir:

Criar e implantar um aplicativo de IA generativa 

A seguir