Gemma de Embedding Agentic Rag
Esta aplicação Streamlit demonstra um Agente de Geração Aumentada por Recuperação (RAG) agentic utilizando o EmbeddingGemma do Google para embeddings …
- Llama
- local
RAG e Conhecimento ·Médio
Cole uma descrição de bug real do seu pipeline LLM + RAG. O script pede a um LLM para classificar a falha num dos vários padrões reutilizáveis e sugere uma correção estrutural mínima (não apenas 'adicione mais contexto' ou 'tente um modelo melhor').
OPENAI_API_KEYSECRET_RAG_KEYLicença Apache-2.0 · conteúdo curado, traduzido e mantido pelo Doutor AI.
Uma pequena clínica de diagnóstico de falhas RAG independente de framework.
Colas uma descrição de bug real do teu pipeline LLM + RAG.
O script pede a um LLM para classificar a falha num dos vários padrões reutilizáveis
e sugere uma correção estrutural mínima (não apenas “adiciona mais contexto” ou “experimenta um modelo melhor”).
O objetivo é mostrar uma forma orientada a padrões para depurar incidentes RAG que pode ser
adaptada a qualquer stack: LangChain, LlamaIndex, microserviços personalizados ou infra-estrutura interna.
Ao executar este exemplo, vais aprender a:
Isto não é um framework completo.
É uma compacta aplicação clínica que demonstra um padrão que podes adaptar nas tuas próprias stacks.
Este tutorial espera os seguintes ficheiros em rag_tutorials/rag_failure_diagnostics_clinic:
README.md ← este ficheiro rag_failure_diagnostics_clinic.py ← script CLI interativo mínimo requirements.txt ← dependências Python O script é completamente autónomo.
Todas as definições de padrões e prompts estão dentro desta pasta.
A clínica utiliza um pequeno conjunto opinativo de 12 padrões de falha reutilizáveis.
Cada bug é mapeado para exatamente um padrão primário, com candidatos secundários opcionais.
Podes modificar ou estender estes padrões para corresponder aos teus próprios incidentes de produção.
| ID | Nome do padrão | Sintoma típico |
|---|---|---|
| P01 | Alucinação de recuperação / desvio de fundamentação | Resposta confiante contradiz documentos recuperados. |
| P02 | Bug de limite de chunk ou segmentação | Fatos relevantes são divididos ou truncados entre chunks. |
| P03 | Desajuste de embedding / distância semântica vs vetorial | Similaridade cosseno não corresponde à verdadeira relevância. |
| P04 | Desvio ou obsolescência do índice | Dados antigos ou em falta, mesmo que a fonte de verdade esteja atualizada. |
| P05 | Reescrita de consulta ou desalinhamento do router | Router envia consultas para a ferramenta ou conjunto de dados errados. |
| P06 | Desvio de raciocínio em cadeia longa | Tarefas de múltiplos passos perdem gradualmente o controle das restrições anteriores. |
| P07 | Uso indevido de chamadas de ferramentas ou ferramentas sem fundamentação | Ferramentas são chamadas com argumentos errados ou sem fundamentação. |
| P08 | Vazamento de memória de sessão / contexto em falta | A conversa perde fatos importantes entre turnos ou sessões. |
| P09 | Pontos cegos na avaliação | O sistema passa em testes, mas falha em incidentes reais. |
| P10 | Ordem de arranque / dependência não pronta | Serviços falham ou 5xx durante os primeiros minutos após o deploy. |
| P11 | Desvio de configuração ou segredos entre ambientes | Funciona localmente, quebra apenas em staging / produção devido a configurações. |
| P12 | Interferência multi-inquilino / multi-agente | Pedidos ou agentes interferem no estado ou recursos uns dos outros. |
Os exemplos integrados correspondem aproximadamente a:
És encorajado a substituir estes por excertos dos teus próprios incidentes.
A um alto nível:
rag_failure_report.json juntamente com o texto original do bug e o nome do modelo.
A intenção é mostrar como um pequeno vocabulário de padrões + prompt pode transformar um LLM
num ajudante leve para triagem de incidentes.
OPENAI_API_KEY para https://api.openai.com/v1.OPENAI_BASE_URL.Instruções de Instalação
Pré-requisitos
Antes de começares, certifica-te de que tens os seguintes pré-requisitos instalados:
Node.js (versão 14 ou superior)npm (versão 6 ou superior)Instalação
git clone https://github.com/username/awesome-llm-apps.git
cd awesome-llm-apps
npm install
Execução
Para executar a aplicação, utiliza o seguinte comando:
npm start
A aplicação estará disponível em http://localhost:3000.
Estrutura do Projeto
A estrutura do projeto é a seguinte:
awesome-llm-apps/
├── src/
│ ├── components/
│ ├── pages/
│ └── utils/
├── public/
│ └── index.html
├── package.json
└── README.md
## Contribuição
Se desejas contribuir para este projeto, segue os seguintes passos:
1. Cria um fork do repositório.
2. Cria uma nova branch para a tua funcionalidade:
```bash
git checkout -b minha-funcionalidade
git commit -m "Adiciona nova funcionalidade"
git push origin minha-funcionalidade
Este projeto está licenciado sob a Licença MIT. Consulta o ficheiro [LICENSE](LICENSE) para mais informações.
cd rag_tutorials/rag_failure_diagnostics_clinic
pip install -r requirements.txt
Minimal requirements.txt
Para criar um ficheiro requirements.txt mínimo, basta incluir as bibliotecas que precisas para o teu projeto. Aqui está um exemplo básico:
flask
requests
numpy
## Como criar o `requirements.txt`
1. Cria um novo ficheiro chamado `requirements.txt` na raiz do teu projeto.
2. Adiciona as bibliotecas que necessitas, uma por linha.
3. Guarda o ficheiro.
## Instalar as dependências
Para instalar as dependências listadas no `requirements.txt`, utiliza o seguinte comando:
pip install -r requirements.txt
## Exemplo de `requirements.txt`
Aqui está um exemplo de um ficheiro `requirements.txt` mais completo:
flask==2.0.1
requests>=2.25.1
numpy<1.20
Neste exemplo, especificamos versões exatas ou intervalos de versões para garantir que o teu projeto funcione corretamente.
## Conclusão
Um `requirements.txt` bem definido é essencial para a gestão de dependências em projetos Python. Certifica-te de que o manténs atualizado à medida que adicionas ou removes bibliotecas do teu projeto.
openai>=1.6.0
Define a tua chave de API como uma variável de ambiente (recomendado):
export OPENAI_API_KEY="sk-..."
# optional, if you use a custom endpoint
# export OPENAI_BASE_URL="https://your-proxy.example.com/v1"
# export OPENAI_MODEL="gpt-4o-mini"
Dica: Se preferires o Colab, também podes copiar o ficheiro inteiro rag_failure_diagnostics_clinic.py para uma única célula do Colab e executá-lo lá.
Executar a clínica
A partir de dentro de rag_tutorials/rag_failure_diagnostics_clinic:
python rag_failure_diagnostics_clinic.py
You will see a simple text UI:
OPENAI_API_KEY não estiver definido, o script irá pedir uma chave de API.https://api.openai.com/v1) e o modelo (gpt-4o) ou substituí-los.1 → exemplo de alucinação de recuperação incorporada (estilo P01).2 → exemplo de ordenação de startups (estilo P10).3 → exemplo de desvio de configuração / segredos (estilo P11).p → cola a tua própria descrição de bug.Cada execução imprime um diagnóstico e escreve um ficheiro rag_failure_report.json contendo o texto do bug, as definições do modelo e a resposta do assistente.
Podes comprometer vários relatórios no teu próprio repositório como uma leve biblioteca de incidentes RAG.
Algumas ideias para estender este padrão:
Esta aplicação Streamlit demonstra um Agente de Geração Aumentada por Recuperação (RAG) agentic utilizando o EmbeddingGemma do Google para embeddings …
Uma aplicação RAG agentic construída com o framework Agno, apresentando GPT-5 e LanceDB para recuperação eficiente de conhecimento e resposta a pergun…
Arquitetura de Fluxo.
Precisa de uma solução à medida?
Não sabe por onde começar a usar IA no seu negócio? Receba uma avaliação gratuita e um plano à medida - sem compromisso.
O Doutor AI dá-lhe 1859 prompts de IA prontos a copiar, por indústria e em português simples - mais uma biblioteca técnica completa para quem quer ir mais longe.