Copilot local com Gemma 4 no laptop: sem pagar por token
Como rodar Gemma 4 ou Mistral offline como copilot de código no VS Code em 2026. Setup em menos de 30 min, sem enviar código para a nuvem.
Por Vitor Morais
Fundador do MochaLabz ·
Copilot de código local é a alternativa mais barata ao GitHub Copilot ou Claude Code quando você não quer pagar por token nem enviar seu código proprietário para servidores de terceiros. Com Gemma 4 (modelos de 2B a 31B parâmetros lançados pelo Google em 2026) e ferramentas como Ollama + Continue.dev, qualquer laptop moderno consegue completar código, sugerir refatorações e responder perguntas sobre o codebase — tudo offline, zero custo variável.
Por que rodar IA local em vez de pagar por API
A conta é direta para quem escreve código o dia todo: copilots em nuvem cobram por token ou por assinatura mensal. Num mês de desenvolvimento intenso, você gera centenas de milhares de tokens só em completions inline. Local elimina esse custo variável e, dependendo do hardware, entrega latência menor porque não há round-trip de rede.
Há também o argumento de privacidade. Se você trabalha com código de clientes sob contrato de confidencialidade, mandar trechos de lógica de negócio para uma API externa é um risco real. Rodar local significa que o modelo nunca enxerga nada fora da sua máquina.
- Custo zero por token — modelos open-source não têm billing.
- Privacidade total — código do cliente fica na máquina.
- Funciona sem internet — útil em voos, escritórios com rede bloqueada ou conexões instáveis.
- Sem limite de contexto faturado — você só paga pelo hardware já tem.
- Customização possível — fine-tuning local com LoRA para o domínio do seu projeto.
Local não é gratuito em hardware
Modelos maiores (acima de 7B parâmetros) exigem GPU dedicada ou muita RAM unificada. Em laptops com apenas CPU, os tamanhos acima de 4B ficam lentos demais para uso interativo. Escolha o modelo certo para o hardware que você tem — detalhado na seção de sizing abaixo.
Qual modelo escolher: Gemma 4, Mistral ou Qwen
Gemma 4 é a geração mais recente do Google, lançada em 2026 com foco em eficiência por parâmetro. A família cobre tamanhos de 2B até 31B e todos os modelos suportam visão (multimodal), o que significa que você pode colar um screenshot de erro ou de um diagrama de banco de dados e pedir análise. O modelo de 2B pesa pouco mais de 2GB quantizado — roda bem até em MacBook Air com 8GB de RAM.
Mistral 7B e suas variantes (Mistral Nemo, Codestral) continuam sendo opção sólida para code completion puro. Codestral é especificamente treinado em código, suporta dezenas de linguagens e tem janela de contexto generosa. Se seu foco é TypeScript/Next.js e você tem 16GB de RAM, Codestral entrega qualidade próxima ao Copilot base.
Qwen 2.5 Coder é outra alternativa relevante, especialmente em tamanhos menores. A Alibaba treinou versões específicas para código com desempenho competitivo contra modelos maiores em benchmarks de geração e debugging.
| Modelo | Tamanho em disco | RAM mínima | Melhor pra |
|---|---|---|---|
| Gemma 4 2B | ~2.5 GB | 8 GB | Laptop fraco, completions rápidas |
| Gemma 4 9B | ~6 GB | 16 GB | Equilíbrio qualidade/velocidade |
| Mistral 7B | ~5 GB | 16 GB | Code geral, bom em raciocínio |
| Codestral 22B | ~14 GB | 32 GB | Code pesado, contexto longo |
| Gemma 4 27B | ~18 GB | 32 GB | MacBook Pro M3/M4, máxima qualidade local |
Setup em menos de 30 minutos: Ollama + Continue.dev no VS Code
O stack mais simples para copilot local hoje é Ollama (servidor de modelos) + Continue.dev (extensão de IDE). Ollama funciona como um Docker para LLMs: você puxa o modelo com um comando, ele expõe uma API REST local compatível com o formato OpenAI, e o Continue.dev conecta nessa API para oferecer chat, inline completion e indexação de codebase.
O Continue.dev está disponível para VS Code e JetBrains. Ele entende o contexto do arquivo aberto, arquivos referenciados e até o histórico de diff do Git quando configurado com a indexação local. Para projetos Next.js com Supabase, isso significa que o modelo consegue raciocinar sobre tipos TypeScript, rotas de API e queries sem você precisar colar contexto manualmente.
1. Instalar Ollama (macOS/Linux)
# macOS
brew install ollama
# Linux (script oficial)
curl -fsSL https://ollama.com/install.sh | sh
# Iniciar servidor
ollama serve2. Baixar o modelo
# Gemma 4 2B — mais leve, bom para laptops com 8 GB RAM
ollama pull gemma4:2b
# Gemma 4 9B — melhor qualidade, exige 16 GB RAM
ollama pull gemma4:9b
# Alternativa: Codestral (otimizado para código)
ollama pull codestral
# Verificar modelos instalados
ollama list3. Configurar Continue.dev (~/.continue/config.json)
{
"models": [
{
"title": "Gemma 4 9B Local",
"provider": "ollama",
"model": "gemma4:9b",
"apiBase": "http://localhost:11434"
}
],
"tabAutocompleteModel": {
"title": "Gemma 4 2B Autocomplete",
"provider": "ollama",
"model": "gemma4:2b"
},
"contextProviders": [
{ "name": "code" },
{ "name": "diff" },
{ "name": "terminal" },
{ "name": "problems" }
]
}Após salvar a config, abra o VS Code, instale a extensão Continue (ID: Continue.continue) e o painel lateral vai conectar automaticamente ao Ollama local. O primeiro autocomplete pode demorar alguns segundos enquanto o modelo carrega na memória; depois fica responsivo.
Indexação do codebase no Continue.dev
Use @codebase no chat do Continue para fazer perguntas sobre o projeto inteiro. O Continue gera embeddings locais (com nomic-embed-text via Ollama) e armazena o índice em ~/.continue/index. Para projetos Next.js grandes, a indexação inicial leva alguns minutos mas depois as respostas ficam muito mais relevantes — o modelo enxerga componentes, hooks e tipos sem você precisar abrir os arquivos.
Casos de uso reais no dia a dia de dev indie
Completar código inline é só o caso mais óbvio. O que realmente economiza tempo são os fluxos de chat contextual: você abre um arquivo de Server Action do Next.js com um bug e pergunta ao modelo o que está errado, sem precisar copiar o código — o Continue injeta o contexto automaticamente. Isso substitui boa parte dos Ctrl+K no Cursor ou das perguntas ao Claude via API.
- Refatoração guiada: seleciona função, pede pra converter pra async/await ou extrair em hook customizado.
- Geração de testes: com contexto do arquivo de implementação, o modelo gera testes Vitest ou Jest coerentes com a lógica.
- Debugging de query Supabase: cola o erro do console e pergunta por que a RLS policy está bloqueando.
- Geração de tipos TypeScript: descreve a estrutura de um retorno de API e pede pra inferir o tipo correto.
- Documentação inline: seleciona função e pede JSDoc — rápido e não precisa de internet.
- Code review de PR local: usa
@diffpra o modelo analisar as mudanças antes de abrir PR.
Para quem usa n8n ou automações no backend, o Ollama também expõe API REST local no formato compatível com OpenAI. Isso significa que você pode apontar workflows do n8n para o modelo local em vez de pagar por chamadas ao GPT ou Claude — útil para tarefas de classificação de texto, extração de dados ou geração de rascunhos que acontecem centenas de vezes por mês. Veja como fazer isso em detalhes no artigo sobre agentes IA com MCP.
Limites do modelo local e quando vale pagar pela API
Modelo local não substitui Claude Opus ou GPT-4 em tarefas de raciocínio complexo. Para arquitetar um sistema do zero, debugar problemas de concorrência sutil ou gerar texto de marketing que converta, os modelos frontier ainda têm vantagem significativa. O ponto ótimo é usar local para o volume alto de tarefas mecânicas e reservar a API paga para as decisões que realmente importam.
Uma forma de pensar nisso: copilot local cobre o fluxo de digitação (completions inline, snippets, pequenas refatorações) enquanto Claude ou GPT cobrem o fluxo de pensamento (arquitetura, revisão de design, geração de copy). Essa separação reduz o custo de API entre 60% e 80% em projetos onde o dev usa IA constantemente. Para entender como reduzir ainda mais os custos de API quando você precisa da nuvem, o guia sobre como economizar tokens no ChatGPT tem técnicas complementares.
| Tarefa | Local (Gemma/Mistral) | API nuvem (Claude/GPT) |
|---|---|---|
| Completions inline enquanto digita | ✅ Ideal | ❌ Caro demais em volume |
| Refatoração de função isolada | ✅ Funciona bem | Desnecessário |
| Arquitetura de sistema novo | ⚠️ Qualidade inferior | ✅ Ideal |
| Debug de bug complexo/sutil | ⚠️ Pode errar | ✅ Mais confiável |
| Geração de testes unitários | ✅ Funciona bem | Desnecessário |
| Copy de landing page/email | ⚠️ Genérico | ✅ Melhor resultado |
Gemma 4 no celular também funciona
O Google lançou o AI Edge Gallery que roda Gemma 4 diretamente no dispositivo móvel, incluindo iPhones. Não é substituto para o setup no laptop, mas é útil para consultas rápidas quando você está longe do computador e não quer gastar dados ou tokens de API.
Otimizações de performance para laptops com menos RAM
Se você tem 8GB de RAM, a chave é manter apenas o modelo necessário carregado e usar quantização Q4 (padrão do Ollama). Com ollama ps você vê quais modelos estão ativos na memória e pode forçar o descarregamento com ollama stop <model>. Em projetos Next.js, fechar o servidor de desenvolvimento durante sessões longas de chat libera RAM suficiente para o modelo 9B rodar de forma aceitável.
Gerenciar memória dos modelos carregados
# Ver modelos ativos na memória
ollama ps
# Descarregar modelo específico
ollama stop gemma4:9b
# Definir tempo de expiração automática (padrão: 5 minutos de inatividade)
# Adicionar ao ~/.zshrc ou ~/.bashrc:
export OLLAMA_KEEP_ALIVE=2m
# Listar modelos instalados e tamanho
ollama listPara quem tem GPU Nvidia discreta (mesmo que entrada, como RTX 3060 com 8GB VRAM), o Ollama detecta automaticamente e usa a GPU se disponível. A aceleração é substancial — tokens por segundo aumentam entre 5x e 10x em relação à CPU pura, tornando modelos de 7B responsivos o suficiente para uso interativo. Usuários de Apple Silicon (M1/M2/M3/M4) também têm aceleração automática via Metal, com o benefício extra de que a memória unificada permite modelos maiores sem swap.
Perguntas frequentes
Gemma 4 local é tão bom quanto GitHub Copilot?+
Em completions inline simples, Gemma 4 9B chega bem perto do Copilot base para TypeScript e Python. A diferença aparece em contextos longos e raciocínio sobre arquitetura de código — onde modelos frontier como Claude Sonnet ainda levam vantagem. Para tarefas de volume alto e repetitivas, o modelo local é suficiente e elimina o custo de assinatura.
Quanto de RAM preciso para rodar Gemma 4 no laptop?+
Gemma 4 2B roda em laptops com 8GB de RAM com quantização Q4. Para Gemma 4 9B, o ideal são 16GB. O modelo 27B exige ao menos 32GB ou Apple Silicon M2/M3/M4 com memória unificada de 24GB+. Em máquinas com menos RAM, o sistema usa swap e fica lento demais para uso interativo.
Posso usar o modelo local em projetos com código de cliente?+
Sim — esse é um dos maiores benefícios. Com Ollama rodando localmente, nenhum dado sai da máquina. O modelo não tem acesso à internet e não envia telemetria de código. Verifique apenas as licenças dos modelos: Gemma 4 tem termos de uso da Google que permitem uso comercial com algumas restrições; Mistral e Qwen têm licenças Apache 2.0 mais permissivas.
Continue.dev é a única opção de IDE plugin para Ollama?+
Não. Outras opções populares são o **Aider** (interface de linha de comando para pair programming), o **CodeGPT** (extensão VS Code) e o **Twinny** (focado em autocomplete). O Continue.dev se destaca pela indexação de codebase local e pela integração com context providers como diff, terminal e problemas do editor.
Vale a pena fazer fine-tuning local do modelo para meu stack?+
Para a maioria dos solopreneurs, não. Fine-tuning exige tempo de GPU, dados curados e manutenção quando o modelo base é atualizado. O ganho em qualidade raramente compensa o esforço comparado a usar few-shot prompting bem estruturado no chat do Continue.dev. Reserve fine-tuning para casos onde você tem uma base de código muito específica e usa o modelo centenas de vezes por dia.
Ollama funciona em Windows também?+
Sim. O Ollama tem instalador nativo para Windows e usa DirectML para aceleração em GPUs AMD e Nvidia. O desempenho no Windows é ligeiramente inferior ao macOS com Apple Silicon, mas funcional. A configuração do Continue.dev é idêntica — o caminho do config muda para `%USERPROFILE%\.continue\config.json`.
Artigos relacionados
O Que São Tokens em IA (2026): Guia Completo para LLMs como GPT e Claude
Tokens explicados: o que são, como a tokenização funciona, custo por token nos principais modelos, como contar antes de enviar e estratégias para reduzir consumo.
Como Economizar Tokens no ChatGPT, Claude e Gemini (Guia 2026)
Reduza o custo das APIs de IA em 40–80% sem perder qualidade. 12 técnicas práticas: compressão, prompt caching, modelos em cascata, RAG, batching, sumarização — com estimativas reais.
Agentes IA com MCP: automação de rotina freelancer em 2026
Integre agentes IA na sua operação freelancer usando Model Context Protocol. Automatize prospecção, follow-up e gestão sem DevOps.
Reduzir 90% do custo de API Claude com batch e caching
Aprenda a usar batch API e prompt caching do Claude pra cortar despesa com tokens. Guia prático com exemplos reais pra solopreneur.