Este é um projeto de Retrieval-Augmented Generation (RAG) que utiliza a tecnologia de IA para responder perguntas sobre o conteúdo do site da Nearx, utilizando OpenAI como provedores de LLM (Large Language Models).
- Carregamento automático de conteúdo web
- Processamento de texto usando embeddings
- Armazenamento vetorial com ChromaDB
- Suporte ao Modelos de linguagem (OpenAI)
- Sistema de memória para manter contexto das conversas
- Streaming de respostas em tempo real
- Monitoramento e debug com LangSmith
- Rastreamento de execuções e métricas de performance
- Análise detalhada de cada etapa do processo RAG
- Python 3.8 ou superior
- pip (gerenciador de pacotes Python)
- Chaves de API (OpenAI)
- Conta no LangSmith (para monitoramento)
- Clone o repositório:
git clone https://github.com/seu-usuario/langchain-rag.git
cd langchain-rag- Instale as dependências:
pip install -r requirements.txt- Configure o arquivo
.env:
OPENAI_API_KEY=sua_chave_openai
LANGSMITH_API_KEY=sua_chave_langsmith
LANGSMITH_TRACING=true- Execute o script principal:
python main.py- Digite suas perguntas quando solicitado. O sistema irá:
- Buscar informações relevantes no conteúdo armazenado
- Gerar respostas contextualizadas
- Manter histórico da conversa
langchain-rag/
├── src/
│ ├── document_loader.py
│ ├── embedding_manager.py
│ ├── rag_chain.py
│ └── utils.py
├── .env
├── main.py
└── requirements.txt
O arquivo .env deve conter:
OPENAI_API_KEY: Chave de API da OpenAILANGSMITH_API_KEY: Chave de API do LangSmith (opcional)LANGSMITH_TRACING: Habilita rastreamento do LangSmith
- LangChain
- ChromaDB
- OpenAI
- LangSmith
- Python
Contribuições são bem-vindas! Por favor, sinta-se à vontade para submeter pull requests.
Este projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.
- Equipe Nearx
- Comunidade LangChain
- Contribuidores OpenAI
O projeto utiliza o LangSmith para:
- Monitorar a performance dos modelos
- Rastrear cada etapa do processo RAG
- Debugar e otimizar as chains
- Coletar métricas de uso
- Avaliar a qualidade das respostas
Para habilitar o LangSmith:
- Crie uma conta em https://smith.langchain.com/
- Obtenha sua chave de API
- Configure as variáveis de ambiente no
.env:
LANGSMITH_API_KEY=sua_chave_langsmith
LANGSMITH_TRACING=true