![A infraestrutura como código está morta: vida longa à infraestrutura do código](https://optimuscloud.com.br/wp-content/uploads/2024/03/1711737846_A-infraestrutura-como-codigo-esta-morta-vida-longa-a-infraestrutura-150x150.jpg)
A infraestrutura como código está morta: vida longa à infraestrutura do código
29 de março de 2024![Transformações de dados: Apache Flink vs. Transformações de dados Redpanda](https://optimuscloud.com.br/wp-content/uploads/2024/03/1711746009_Transformacoes-de-dados-Apache-Flink-vs-Transformacoes-de-dados-Redpanda-150x150.png)
Transformações de dados: Apache Flink vs. Transformações de dados Redpanda
29 de março de 2024A IA generativa está revolucionando a tecnologia com sua capacidade de criar conteúdo contextualmente relevante, inaugurando uma nova era de possibilidades de IA. Em sua essência está a geração aumentada de recuperação (RAG), que mescla a recuperação de informações com grandes modelos de linguagem (LLMs) para produzir respostas inteligentes e informadas a partir de documentos externos.
Este tutorial explica como construir um aplicativo LLM baseado em RAG usando ChromaDB, um banco de dados de incorporação de código aberto nativo de IA, conhecido por seu manuseio eficiente de grandes conjuntos de dados. Vou guiá-lo em cada etapa, demonstrando a aplicabilidade do RAG no mundo real na criação de aplicativos LLM avançados.
O que você precisará
Para começar a construir seu aplicativo LLM, você precisará de Python (para download no site oficial do Python), uma chave de API OpenAI (disponível na plataforma OpenAI) e um conhecimento básico de Python e APIs da web. Essas tecnologias ajudarão a garantir uma experiência tranquila ao seguir este tutorial e desenvolver seu aplicativo de bate-papo generativo com tecnologia de IA.
Configurar o projeto
Depois de baixar os aplicativos e a tecnologia necessários, comece a configurar o ambiente do seu projeto.
1. Crie e navegue até o diretório do projeto: No seu terminal, crie um novo diretório:
mkdir rag_lmm_application
Mude seu diretório de trabalho para a pasta do projeto:
cd rag_lmm_application
2. Crie seu ambiente virtual: Esta é uma etapa crucial para o gerenciamento de dependências. Você pode criar um com o seguinte comando:
python -m venv venv
e ative-o.
Para Mac ou Linux:
source venv/bin/activate
Para Windows:
VenvScriptsactivate
3. Instale os pacotes necessários: Instale bibliotecas essenciais para o seu projeto usando o comando:
pip install -r requirements.txt
Certifique-se de que todas as dependências necessárias estejam no requirements.txtfile
.
Depois de concluir essas etapas, seu ambiente estará pronto e você estará pronto para começar a criar um aplicativo de bate-papo RAG de última geração com o ChromaDB.
Carregar e processar documentos
Este aplicativo LLM lida habilmente com vários formatos de documentos, incluindo PDF, DOCX e TXT, usando carregadores LangChain. Isto é crucial para permitir a acessibilidade dos dados externos, garantir o processamento eficiente dos dados e manter a prontidão uniforme dos dados para as fases subsequentes. Este trecho ilustra o processo:
A fragmentação de dados — agrupando diferentes bits de informações em partes mais gerenciáveis ou significativas — facilita o processamento e a incorporação e permite retenção eficiente de contexto e recuperação de informações. O trecho de código a seguir demonstra esse processo vital:
Crie embeddings com OpenAI e ChromaDB
Neste aplicativo, RAG usa modelos de linguagem OpenAI para criar embeddings – representações vetoriais essenciais de texto para uma compreensão eficiente dos dados. Estas incorporações são fundamentais para a recuperação do RAG, permitindo o acesso a dados externos relevantes. Armazenados de forma eficiente no ChromaDB, eles permitem a recuperação rápida de informações, conforme destacado no trecho de código abaixo. Este processo aprimora significativamente os recursos de IA do aplicativo.
Construa a interface de bate-papo com Streamlit
Streamlit é um aplicativo que transforma scripts de dados em aplicativos da web compartilháveis em minutos. Este aplicativo RAG LLM vincula as entradas do usuário ao processamento de back-end. Com a inicialização e design de layout do Streamlit, os usuários podem fazer upload de documentos e gerenciar dados. O backend processa essas entradas e retorna respostas diretamente na interface Streamlit, exibindo uma integração perfeita de operações de frontend e backend.
O código abaixo mostra como criar um campo de entrada de texto no Streamlit e lidar com as entradas do usuário.
Com esta configuração completa, os usuários podem interagir com o aplicativo de IA de maneira contínua e intuitiva.
Recupere respostas e melhore a interação do usuário
Este aplicativo de bate-papo RAG aproveita o RetrievalQA e o ChromaDB da LangChain para responder com eficiência às consultas dos usuários com informações relevantes e precisas extraídas dos dados incorporados do ChromaDB, exemplificando recursos avançados de IA generativa.
O trecho de código abaixo demonstra a implementação prática deste processo na aplicação Streamlit:
Este código integra entradas do usuário e geração de respostas no Streamlit. Usando dados vetoriais do ChromaDB, ele busca respostas precisas, melhorando a interatividade do aplicativo de chat e fornecendo diálogos informativos de IA.
Conclusão
Este tutorial explora os meandros da construção de um aplicativo LLM usando OpenAI, ChromaDB e Streamlit. Ele explicou a configuração do ambiente, o processamento de documentos, a criação e o armazenamento de incorporações e a construção de uma interface de bate-papo amigável, destacando a poderosa combinação de RAG e ChromaDB em IA generativa.
Este repositório GitHub cobre o processo. Para executar o aplicativo, execute o seguinte comando em seu terminal:
streamlit run ./chat_with_documents.py
Agora você pode testar o aplicativo navegando até http://localhost:8501.
Encorajo você a experimentar este aplicativo, torná-lo seu e compartilhar suas experiências com outras pessoas!
Identifique a estratégia GenAI certa para o seu negócio: descubra diversos casos de uso, recursos necessários e considerações estratégicas para uma implementação bem-sucedida. Baixe o Guia do CIO para IA Generativa e ajude a conduzir sua organização em direção à inovação e ao ROI positivo.
A postagem Como construir um aplicativo de bate-papo LLM baseado em RAG com ChromaDB e Python apareceu pela primeira vez em The New Stack.