Backend: Ollama (100% local, zero custo de API)
Converte o export do ChatGPT em memórias estruturadas por projeto usando modelos locais via Ollama.
Para desenvolvedores: Consulte o AGENTS.md para guias de desenvolvimento, estilo de código e comandos técnicos.
- Estratégia MapReduce
- Instalação
- Escolha de Modelos
- Como usar
- Estrutura do Projeto
- Privacidade
- Para Desenvolvedores
Conversas do projeto (tamanho ilimitado)
│
┌──────▼──────┐
│ FASE MAP │ MAP_MODEL (rápido)
│ │ Sumariza cada chunk de ≤116k tokens
└──────┬──────┘
│ N resumos intermediários
┌──────▼──────┐
│ FASE REDUCE │ REDUCE_MODEL (qualidade)
│ │ Mescla resumos; recursivo se necessário
└──────┬──────┘
│
┌──────▼──────┐
│ MEMÓRIA │ REDUCE_MODEL
│ FINAL │ Markdown estruturado para uso no Claude
└─────────────┘
| Janela total do modelo | 128.000 tokens |
|---|---|
| Overhead do prompt | − 4.000 |
| Reserva para resposta | − 8.000 |
| Disponível por chunk | 116.000 |
# 1. Instalar Ollama
curl -fsSL https://ollama.com/install.sh | sh
# 2. Baixar modelos recomendados
ollama pull llama3.1:8b # MAP + REDUCE padrão
ollama pull mistral-nemo:12b # REDUCE de qualidade (requer 12 GB VRAM)
# 3. Instalar dependências Python
pip install -r requirements.txt| VRAM disponível | MAP_MODEL | REDUCE_MODEL |
|---|---|---|
| 4–6 GB | llama3.2:3b |
llama3.2:3b |
| 8 GB | llama3.1:8b |
llama3.1:8b |
| 12–16 GB | llama3.1:8b |
mistral-nemo:12b |
| 24 GB+ | mistral-nemo:12b |
llama3.1:70b |
| CPU only | qwen2.5:3b |
qwen2.5:7b |
Todos os modelos listados suportam contexto de 128k tokens.
- chat.openai.com → seu avatar → Settings
- Data controls → Export data
- Aguarde o e-mail e baixe o
.zip
# Ver status do Ollama e modelos instalados
python main.py --status
# Listar projetos sem processar
python main.py chatgpt_export.zip --list-projects
# Estatísticas sem chamar o modelo (dry run)
python main.py chatgpt_export.zip --dry-run
# Baixar modelos configurados automaticamente
python main.py chatgpt_export.zip --pull
# Processar todos os projetos
python main.py chatgpt_export.zip
# Processar apenas um projeto
python main.py chatgpt_export.zip --project default
# Saída em diretório customizado
python main.py chatgpt_export.zip --output ~/minhas-memorias# Usar modelos diferentes sem editar config.py
MAP_MODEL=llama3.2:3b REDUCE_MODEL=mistral-nemo:12b python main.py export.zip
# Ollama em outro host (ex: servidor na rede local)
OLLAMA_HOST=http://192.168.1.100:11434 python main.py export.zipCada projeto gera memories/NomeDoProjeto_memory.md:
---
projeto: Linux Lab
projeto_id: proj_linux
conversas: 47
map_model: llama3.1:8b
reduce_model: mistral-nemo:12b
gerado_em: 2025-03-03T14:22:00
---
## 📋 Visão Geral do Projeto
## 🎯 Objetivos e Metas
## 🔧 Contexto Técnico
## 💡 Decisões Importantes
## ✅ O que Foi Feito
## ⏳ Pendências e Próximos Passos
## 👤 Perfil e Preferências do Usuário
## 📌 Notas e Observações- Vá em claude.ai → Projects
- Crie ou abra um projeto
- Em Project instructions, cole o conteúdo do
.mdgerado - Todas as conversas do projeto terão o contexto do ChatGPT disponível
Todo o processamento é local — seus dados nunca saem da sua máquina.
claude_memory_builder/
├── main.py # CLI principal (argparse)
├── parser.py # Leitura do export do ChatGPT
├── chunker.py # Divisão respeitando tokens (com fallback)
├── ollama_client.py # Interface com servidor Ollama
├── summarizer.py # Pipeline MapReduce
├── cache.py # Sistema de cache de resumos
├── config.py # Configurações (modelos, tokens)
├── requirements.txt # Dependências Python
├── README.md # Este arquivo
└── AGENTS.md # Guia completo para desenvolvedores
Guia completo disponível em AGENTS.md incluindo:
- Comandos de build, lint e test
- Diretrizes de estilo de código
- Padrões de desenvolvimento
- Configuração de ambiente
Comandos rápidos:
# Linting e formatação
ruff check .
ruff format .
# Verificar tipos (se mypy disponível)
mypy .
# Rodar testes (quando implementados)
pytest tests/ -v- Siga as diretrizes em AGENTS.md
- Mantenha código limpo com
ruffantes de commitar - Adicione type hints em todas as funções públicas
- Use Rich para output em CLI
MIT License - veja LICENSE para detalhes.
Feito com ❤️ para a comunidade de usuários do Claude