Sobre o projeto
O Local Deep Researcher é um assistente de pesquisa na web e redação de relatórios de código aberto e totalmente local, construído sobre o LangGraph. Ele é executado inteiramente na sua máquina usando qualquer LLM hospedado pelo Ollama ou LMStudio, sem exigir serviços de IA baseados na nuvem.
**Como Funciona**
O assistente segue um ciclo de pesquisa iterativo inspirado no artigo IterDRAG:
1. **Geração de Consulta**: Dado um tópico fornecido pelo usuário, um LLM local gera uma consulta de pesquisa na web.
2. **Pesquisa na Web**: Um mecanismo de busca configurável (DuckDuckGo por padrão, ou SearXNG, Tavily ou Perplexity) recupera fontes relevantes.
3. **Sumarização**: O LLM resume os resultados da pesquisa em relação ao tópico de pesquisa.
4. **Análise de Lacunas**: O LLM reflete sobre o resumo para identificar lacunas de conhecimento.
5. **Nova Consulta**: Uma nova consulta de pesquisa é gerada para abordar as lacunas identificadas.
6. **Iteração**: As etapas 2 a 5 se repetem por um número de ciclos definido pelo usuário (padrão: 3).
O resultado final é um arquivo markdown contendo o resumo da pesquisa com citações de todas as fontes utilizadas.
**Suporte a Modelos**
- **Ollama**: Suporta qualquer modelo disponível na biblioteca do Ollama (por exemplo, DeepSeek R1, Llama 3.2). Configuração via variáveis de ambiente `OLLAMA_BASE_URL` e `LOCAL_LLM`.
- **LMStudio**: Suporta modelos carregados no LMStudio com um servidor de API compatível com OpenAI. Configuração via `LMSTUDIO_BASE_URL` e `LOCAL_LLM`.
- **Chamada de Ferramentas**: A partir de agosto de 2025, suporta chamada de ferramentas para modelos como gpt-oss que não suportam o modo JSON no Ollama.
**Opções de Mecanismo de Busca**
- **DuckDuckGo** (padrão): Não requer chave de API.
- **SearXNG**: Mecanismo de metabusca auto-hospedado.
- **Tavily**: Requer chave de API.
- **Perplexity**: Requer chave de API.
**Implantação**
- **LangGraph Studio**: Inicie localmente com `langgraph dev` para uma interface interativa onde você pode configurar ajustes e visualizar o processo de pesquisa passo a passo.
- **Docker**: Um Dockerfile é fornecido, mas o Ollama deve ser executado separadamente como um serviço dependente.
- **Prioridade de Configuração**: Variáveis de ambiente > configuração da interface do LangGraph > valores padrão na classe Configuration.
**Detalhes Técnicos**
- Construído com LangGraph para fluxos de trabalho de agentes com estado e múltiplas etapas.
- Usa `python-dotenv` para gerenciamento de variáveis de ambiente.
- Inclui mecanismos de fallback para modelos que têm dificuldade com saída JSON estruturada (por exemplo, DeepSeek R1 7B e 1.5B).
- Um port em TypeScript está disponível em um repositório separado.
- Compatibilidade com navegadores: Firefox recomendado; o Safari pode encontrar avisos de conteúdo misto.
**Casos de Uso**
- Pesquisa aprofundada sobre qualquer tópico sem enviar dados para serviços de IA na nuvem.
- Geração de relatórios de pesquisa com citações para uso pessoal ou profissional.
- Exploração de tópicos iterativamente com estratégias de busca cientes de lacunas.
- Aprender como funcionam os fluxos de trabalho de pesquisa com IA agêntica.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.