1. Por que rodar local
- Privacidade — código, logs e dados sensíveis não saem do ambiente
- Custo zero de API — depois do hardware, o modelo é gratuito
- Offline — funciona em avião, VPN restrita ou rede air-gapped
- Controle — você escolhe modelo, temperatura e system prompt
Não substitui GPT-4o ou Claude em tarefas complexas de arquitetura, mas cobre bem refatoração, testes, explicação de código e geração de boilerplate.
2. Instalar o Ollama
Linux (script oficial):
curl -fsSL https://ollama.com/install.sh | sh
macOS: baixe o app em ollama.com ou use Homebrew. Windows: instalador nativo disponível.
Depois do install, o serviço sobe em localhost:11434 e a CLI fica disponível:
ollama --version
ollama list
3. Modelos recomendados (2026)
Comece com estes (ajuste conforme RAM/GPU):
- llama3.2:3b — leve, bom para máquinas modestas e tarefas simples
- llama3.1:8b — equilíbrio qualidade/velocidade para código
- qwen2.5-coder:7b — forte em geração e explicação de código
- mistral:7b ou mixtral — alternativas sólidas
- codellama:13b — se tiver mais VRAM e quiser foco puro em código
ollama pull llama3.1:8b
ollama pull qwen2.5-coder:7b
4. Uso básico pela CLI
# Chat interativo
ollama run llama3.1:8b
# Uma pergunta e sai
ollama run llama3.1:8b "Explique este erro de segfault em C"
# API HTTP (útil para scripts)
curl http://localhost:11434/api/generate -d '{
"model": "llama3.1:8b",
"prompt": "Gere um teste unitário para esta função Python...",
"stream": false
}'
A API é compatível o suficiente com o formato OpenAI para muitos clientes simples.
5. Integração com o editor
VS Code / Cursor
- Extensão Continue ou Ollama — aponte para
http://localhost:11434 - Configure o modelo default e o system prompt focado em engenharia de software
- Use atalhos para “explicar seleção”, “gerar testes”, “refatorar”
Neovim
- Plugins como
ollama.nvimou integração viaavante.nvim/codecompanion - Mesmo endpoint local
O fluxo típico: selecione o código → peça explicação ou alteração → revise o diff antes de aplicar.
6. Hardware e quantização
- 8 GB RAM — modelos 3B–7B quantizados (Q4)
- 16 GB RAM — 7B–13B confortáveis; 8B com boa velocidade
- GPU NVIDIA com 8+ GB VRAM — acelera muito (Ollama detecta CUDA)
- Apple Silicon — Metal funciona bem; 16 GB unificados já rodam 8B com folga
Quantização (Q4, Q5, Q8) reduz memória e velocidade de carregamento com perda pequena de qualidade na maioria das tarefas de código. Teste no seu hardware: latência de 1–3 tokens/s em CPU é usável; em GPU costuma ficar bem mais rápido.
7. Limites honestos
- Modelos 7B–13B ainda erram em raciocínio multi-passo e arquiteturas complexas
- Contexto menor que os modelos de nuvem (geralmente 8k–32k tokens)
- Não substituem revisão humana nem testes
- Para código crítico de produção, combine local (rascunho) + modelo forte na nuvem (revisão final) se a política de dados permitir
O ganho real está em ter um assistente sempre disponível, offline e sem vazar o repositório. Comece com um modelo 7B/8B, integre no editor e meça se a produtividade sobe antes de investir em hardware maior.
8. Comandos explicados
| Comando | O que faz |
|---|---|
curl -fsSL https://ollama.com/install.sh | sh | Baixa e executa o instalador oficial. As opções do curl fazem falhar em erro HTTP (-f), ficar silencioso mas mostrar erros (-sS) e seguir redirecionamentos (-L). |
ollama --version | Confirma que a instalação funcionou. |
ollama list | Lista os modelos já baixados. |
ollama pull llama3.1:8b | Baixa o modelo. O 8b indica 8 bilhões de parâmetros. |
ollama run llama3.1:8b | Abre um chat interativo no terminal. |
ollama run llama3.1:8b "pergunta" | Responde a uma pergunta e encerra. |
curl http://localhost:11434/api/generate -d '{...}' | Chama a API local. O -d envia o corpo da requisição. |
| Campo do JSON | O que faz |
|---|---|
model | Qual modelo usar. |
prompt | O pedido enviado ao modelo. |
stream: false | Devolve a resposta inteira de uma vez, em vez de pedaços em sequência. O texto vem no campo response. |
| Quantização | Memória aproximada para um modelo de 8B | Efeito |
|---|---|---|
Q4 (como Q4_K_M) | cerca de 5 GB | menor uso de memória, com perda pequena de qualidade |
| Q8 | cerca de 9 GB | qualidade mais próxima do original |
| Sem quantização (16 bits) | cerca de 16 GB | maior qualidade e maior consumo |
Os valores são ordens de grandeza e ainda precisam de memória extra para o contexto da conversa. Confira o tamanho exato na página de cada modelo.
9. Erros comuns e como resolver
| Sintoma | Causa provável | Solução |
|---|---|---|
connection refused na porta 11434 | O serviço do Ollama não está rodando. | Inicie com ollama serve ou verifique o serviço com systemctl status ollama. |
model not found | O modelo ainda não foi baixado. | Rode ollama pull com o nome exato do modelo. |
| As respostas são muito lentas | O modelo é grande para a memória disponível e o sistema usa swap. | Troque por um modelo menor ou mais quantizado. |
| A API ficou acessível para a rede | A variável OLLAMA_HOST foi ajustada para 0.0.0.0. | Por padrão o Ollama escuta só em 127.0.0.1. Se expuser, use firewall e autenticação por proxy, pois a API não tem login. |