Crie aplicações baseadas em MDIs com o LangChain
Esta página apresenta como criar aplicações com tecnologia de GML usando o LangChain. As vistas gerais nesta página incluem links para guias de procedimentos no GitHub.
O que é a LangChain?
O LangChain é uma framework de orquestração de GMLs que ajuda os programadores a criar aplicações de IA generativa ou fluxos de trabalho de geração aumentada de recuperação (RAG). Fornece a estrutura, as ferramentas e os componentes para simplificar os fluxos de trabalho complexos de MDIs.
Para mais informações sobre o LangChain, consulte a página Google LangChain. Para mais informações sobre a framework LangChain, consulte a documentação do produto LangChain.
Componentes do LangChain para o Bigtable
O Bigtable oferece as seguintes interfaces LangChain:
- Vectore store
- Armazenamento de chaves-valores
- Carregador de documentos
- Histórico de mensagens do Chat
Saiba como usar o LangChain com o início rápido do LangChain para o Bigtable. Este início rápido cria uma aplicação que acede a um conjunto de dados de filmes da Netflix para que os utilizadores possam interagir com os dados de filmes.
Armazenamento de vetores para o Bigtable
Pode usar o arquivo vetorial para guardar documentos de texto juntamente com as respetivas incorporações de vetores e outros metadados numa tabela do Bigtable. Isto permite-lhe:
- Pesquise os seus documentos com técnicas como a pesquisa de similaridade vetorial ou a pesquisa de relevância marginal máxima (MMR).
- Realizar filtragem adicional nos resultados da pesquisa vetorial com os metadados dos documentos.
Para mais informações, consulte o tópico Bases de dados vetoriais do LangChain.
Guia de procedimentos da base de dados vetorial
O guia do Bigtable para arquivos de vetores mostra como fazer o seguinte:
- Instale o pacote de integração e o LangChain
- Configure o serviço de incorporação
- Crie e configure o armazenamento do Bigtable
- Personalize a ligação e a autenticação
- Consultar a loja com o algoritmo kNN e filtrar os resultados pelos metadados dos documentos
Armazenamento de chave-valor para o Bigtable
O Bigtable fornece um armazenamento de chave/valor para o LangChain sob a forma de uma classe ByteStore que lhe permite trabalhar com documentos ou incorporações armazenados como objetos de bytes. Esta abordagem pode ajudar a reduzir significativamente os custos e a latência quando realiza tarefas como o armazenamento em cache e a indexação de incorporações para consultas repetidas.
Para mais informações, consulte o tópico Armazenamentos de chaves-valores do LangChain.
Guia de procedimento da loja de chaves-valores
O guia do Bigtable para armazenamentos de chave-valor mostra como fazer o seguinte:
- Instale o pacote de integração e o LangChain
- Inicialize o motor e as tabelas necessários
- Personalize a ligação e a autenticação
- Como usar
BigtableByteStorecomo uma camada de colocação em cache para incorporações de vetores
Carregador de documentos para o Bigtable
O carregador de documentos guarda, carrega e elimina objetos Document do LangChain.
Por exemplo, pode carregar dados para processamento em incorporações e armazená-los no arquivo de vetores ou usá-los como uma ferramenta para fornecer contexto específico às cadeias.
Para carregar documentos do carregador de documentos no Bigtable, use a classe BigtableLoader. Os métodos BigtableLoader devolvem um ou mais documentos
de uma tabela. Use a classe BigtableSaver para guardar e eliminar documentos.
Para mais informações, consulte o tópico Carregadores de documentos do LangChain.
Guia de procedimentos do carregador de documentos
O guia do Bigtable para o carregador de documentos mostra-lhe como fazer o seguinte:
- Instale o pacote de integração e o LangChain
- Carregue documentos a partir de uma tabela
- Adicione um filtro ao carregador
- Personalize a ligação e a autenticação
- Personalize a construção de documentos especificando o conteúdo e os metadados do cliente
- Como usar e personalizar um
BigtableSaverpara armazenar e eliminar documentos
Histórico de mensagens de chat para o Bigtable
As aplicações de perguntas e respostas requerem um histórico das coisas ditas na conversa para dar contexto à aplicação para responder a mais perguntas do utilizador. A classe ChatMessageHistory do LangChain permite que a aplicação guarde mensagens e as obtenha quando necessário para formular mais respostas. Uma mensagem pode ser uma pergunta, uma resposta, uma declaração, uma saudação ou qualquer
outro texto que o utilizador ou a aplicação forneça durante a conversa.
ChatMessageHistory armazena cada mensagem e encadeia as mensagens para cada conversa.
O Bigtable expande esta classe com BigtableChatMessageHistory.
Guia de procedimento do histórico de mensagens de chat
O guia do Bigtable para o histórico de mensagens do chat mostra como fazer o seguinte:
- Instale o LangChain e autentique-se no Google Cloud
- Inicialize o esquema do Bigtable
- Inicialize a classe
BigtableChatMessageHistorypara adicionar e eliminar mensagens - Use um cliente para personalizar a ligação e a autenticação