Resumo rápido (julho de 2026): O Ollama (versão atual v0.32.5, 27 de julho de 2026) é uma ferramenta gratuita e open-source que baixa e executa modelos de linguagem open-weight diretamente no seu hardware com um único comando. Instale via curl -fsSL https://ollama.com/install.sh | sh no Mac ou Linux, ou irm https://ollama.com/install.ps1 | iex no Windows, depois digite ollama run llama3.2 para começar a conversar em segundos. Os modelos rodam inteiramente na sua máquina e nunca saem dela. A ferramenta em si é gratuita; um plano Pro opcional (US$ 20/mês) permite redirecionar requisições para hardware em datacenter quando os modelos excedem a RAM ou VRAM local.
Última verificação: 29 de julho de 2026, com base nos documentos oficiais e páginas de preços.
Escrito por Alexis
O Que é o Ollama, de Fato
O Ollama encapsula modelos open-weight em um servidor de inferência local com uma CLI limpa e uma API REST compatível com OpenAI em http://localhost:11434. Você instala uma vez, baixa um modelo e já tem uma interface de chat no terminal ou um endpoint de API acessível por qualquer biblioteca.
A ferramenta gerencia automaticamente a seleção do formato de quantização, a alocação de camadas na GPU e o cache de contexto. Os arquivos de modelo vêm de ollama.com/library e ficam armazenados localmente após o primeiro download. Nas execuções seguintes, o modelo carrega do disco para a VRAM (ou RAM, se não houver GPU) em segundos.
O Ollama em si é gratuito e open-source. O plano Pro de US$ 20/mês serve exclusivamente para offloading na nuvem e não é uma barreira de acesso às funcionalidades locais.
Instalar o Ollama
macOS e Linux:
curl -fsSL https://ollama.com/install.sh | sh
No Linux, o script também instala um serviço systemd para que o servidor Ollama rode em segundo plano ao iniciar o sistema.
Windows (PowerShell):
irm https://ollama.com/install.ps1 | iex
Um instalador direto também está disponível em ollama.com.
Docker:
docker run -d -p 11434:11434 ollama/ollama
Verifique a instalação:
ollama --version
Requisitos de GPU verificados pelo Ollama na inicialização:
- NVIDIA: capacidade de computação 5.0 ou superior, driver 550 ou mais recente (driver 570 exigido para placas antigas com compute 5.0-6.2)
- AMD: ROCm v7 no Linux; o suporte no Windows cobre modelos selecionados da série 7000 e PRO
- Apple Silicon: Metal API, detectado automaticamente
- Vulkan: camada de aceleração alternativa para GPUs Intel e hardware AMD adicional no Windows e Linux
Se nenhuma GPU compatível for encontrada, ou se o modelo não couber na VRAM, o Ollama usa a CPU como fallback. A saída é correta de qualquer forma; a inferência por CPU é significativamente mais lenta.
Rodando Seu Primeiro Modelo
ollama run llama3.2
Esse comando baixa a tag padrão de 3B (2.0 GB) se ainda não estiver local e abre um chat interativo. Digite /bye para sair.
Rode uma tag de tamanho específico:
ollama run llama3.2:1b # 1.3 GB, fast on limited hardware
ollama run gemma3:4b # 3.3 GB, multimodal
ollama run deepseek-r1:7b # 4.7 GB, reasoning model
Passe um prompt direto sem entrar na sessão interativa:
ollama run llama3.2 "Explain the CAP theorem in two sentences"
Envie uma imagem para um modelo multimodal:
ollama run gemma3:4b "Describe this chart. /path/to/chart.png"
Comandos principais da CLI que você vai usar com frequência:
ollama list # models downloaded locally
ollama ps # models currently loaded in memory
ollama pull qwen3:8b # download without opening a chat session
ollama rm qwen3:8b # delete a model from disk
ollama stop gemma3 # unload a model from memory
ollama show llama3.2 # print parameters, template, and license
Escolha o Modelo Certo para Seu Hardware
O Ollama usa quantização Q4 por padrão, o que reduz o tamanho do arquivo em relação ao FP16. O tamanho do arquivo do modelo quantizado é um bom indicador de quanta RAM ou VRAM livre você precisa.
| Model | Tag | File size | RAM/VRAM needed | Strengths |
|---|---|---|---|---|
| gemma3 | gemma3:270m | 292 MB | 1 GB+ | Edge / Raspberry Pi / constrained devices |
| llama3.2 | llama3.2:1b | 1.3 GB | 4 GB+ | Lightweight agents, fast on-device inference |
| llama3.2 | llama3.2:3b | 2.0 GB | 4 GB+ | General chat on laptops with 8 GB RAM |
| qwen3 | qwen3:4b | 2.5 GB | 6 GB+ | Multilingual text, 256K context window |
| gemma3 | gemma3:4b | 3.3 GB | 6 GB+ | Text plus image input on consumer laptops |
| mistral | mistral:7b | 4.4 GB | 8 GB+ | Instruction-following, function calling |
| deepseek-r1 | deepseek-r1:7b | 4.7 GB | 8 GB+ | Reasoning chains, math, logic tasks |
| llama3.1 | llama3.1:8b | 4.9 GB | 8 GB+ | Tool use, 128K context, strong general capability |
| gemma3 | gemma3:12b | 8.1 GB | 12 GB+ | Multimodal reasoning, single mid-range GPU |
| qwen3 | qwen3:14b | 9.3 GB | 12 GB+ | Coding and reasoning on 16 GB cards |
| llama3.1 | llama3.1:70b | 43 GB | 48 GB+ | Production-grade reasoning, multi-GPU rigs |
Quando o modelo cabe inteiramente na VRAM, você tem todo o throughput da GPU. Se couber parcialmente, o Ollama descarrega as camadas restantes para a RAM automaticamente; o throughput cai proporcionalmente ao número de camadas processadas na CPU. Para modelos que não couberem localmente em nenhum nível de quantização, o Ollama Cloud pode redirecionar as requisições para hardware em datacenter.
Use a API REST Local
O Ollama roda em http://localhost:11434 e aceita o mesmo formato de requisição da API OpenAI, então qualquer cliente que suporte uma URL base personalizada vai funcionar com ele sem alterações no código.
Gere uma resposta:
curl http://localhost:11434/api/generate -d '{
"model": "llama3.2",
"prompt": "What is a transformer model?",
"stream": false
}'
Chat com histórico de mensagens:
curl http://localhost:11434/api/chat -d '{
"model": "llama3.2",
"messages": [
{"role": "user", "content": "Explain attention mechanisms"}
],
"stream": false
}'
Gere embeddings (use um modelo dedicado para melhores resultados):
curl http://localhost:11434/api/embed -d '{
"model": "nomic-embed-text",
"input": "The quick brown fox"
}'
Verifique quais modelos estão carregados:
curl http://localhost:11434/api/ps
Defina "stream": true (o padrão) para receber a saída token a token como JSON delimitado por quebras de linha. Defina "stream": false para aguardar a resposta completa, o que é mais simples para scripts.
Personalize Modelos com um Modelfile
Um Modelfile incorpora um system prompt, o tamanho do contexto e os parâmetros de amostragem em um modelo local com nome definido. Você cria uma vez e, depois, ollama run my-model já carrega toda a configuração.
Crie um arquivo chamado Modelfile:
FROM llama3.2
PARAMETER temperature 0.3
PARAMETER num_ctx 8192
SYSTEM """
You are a concise technical assistant. Answer in plain text only.
Show your reasoning step by step before giving the final answer.
"""
Crie e execute:
ollama create my-assistant -f Modelfile
ollama run my-assistant
Parâmetros que mais afetam a qualidade da saída:
temperature(padrão 0.8): valores menores geram saídas mais determinísticas; aumente para tarefas criativasnum_ctx(padrão 2048): janela de contexto em tokens; aumente quando precisar colar documentos longos, mas isso eleva o uso de VRAMtop_p(padrão 0.9): controla a diversidade da saída em conjunto com a temperaturarepeat_penalty(padrão 1.1): reduz repetições em saídas longas
Você também pode usar um arquivo GGUF local: FROM ./my-model.gguf. Esse é o caminho a seguir se você baixou um modelo diretamente do Hugging Face.
Integre com Python ou JavaScript
As duas bibliotecas oficiais encapsulam a API REST com funções tipadas. Elas exigem que o Ollama esteja rodando localmente (ou apontando para um host remoto).
Python (requer Python 3.8 ou superior):
pip install ollama
from ollama import chat
response = chat(
model='llama3.2',
messages=[{'role': 'user', 'content': 'Summarize the halting problem'}]
)
print(response.message.content)
Streaming:
stream = chat(
model='llama3.2',
messages=[{'role': 'user', 'content': 'Write a regex that matches ISO dates'}],
stream=True,
)
for chunk in stream:
print(chunk['message']['content'], end='', flush=True)
JavaScript / TypeScript:
npm i ollama
import ollama from 'ollama'
const response = await ollama.chat({
model: 'llama3.2',
messages: [{ role: 'user', content: 'What is a closure?' }],
})
console.log(response.message.content)
Aponte qualquer uma das bibliotecas para um host diferente:
from ollama import Client
client = Client(host='http://192.168.1.10:11434')
const ollama = new Ollama({ host: 'http://192.168.1.10:11434' })
As duas bibliotecas expõem toda a superfície da API: chat, generate, embed, pull, rm, list, ps, create, copy, push.
Perguntas Frequentes
O Ollama funciona sem conexão com a internet após a configuração?
Sim. Depois que o modelo é baixado para o disco, o servidor de inferência roda completamente offline. O processo ollama serve não faz nenhuma chamada externa. Apenas ollama pull e ollama push exigem conexão com a internet.
Como rodar o Ollama como serviço em segundo plano no Linux?
O script de instalação configura um serviço systemd automaticamente. Verifique o status com systemctl status ollama e habilite a inicialização automática com sudo systemctl enable --now ollama. Se você instalou manualmente, o arquivo de unidade do serviço não é criado e você precisará iniciar o ollama serve por conta própria.
Dá para usar o Ollama com LangChain, LlamaIndex ou outros frameworks de IA?
Sim. Defina a URL base do seu framework como http://localhost:11434/v1 e use qualquer nome de modelo que você tenha baixado. A maioria dos frameworks que suportam endpoints compatíveis com OpenAI não exige nenhuma outra alteração no código.
O que acontece se o modelo for grande demais para a minha GPU?
O Ollama divide o modelo automaticamente, rodando na GPU as camadas que cabem na VRAM e o restante na CPU. O throughput de geração cai proporcionalmente ao número de camadas processadas na CPU. A solução prática é usar uma tag de tamanho menor ou uma variante QAT (quantization-aware-trained) do modelo, que alguns modelos como o gemma3 oferecem.
Como ver o que está na memória e liberar espaço?
ollama ps lista os modelos carregados, o consumo de memória de cada um e há quanto tempo estão residentes. Os modelos são descarregados automaticamente após 5 minutos de inatividade por padrão. Para forçar o descarregamento imediato, use ollama stop <model>.
Se este guia te poupou algumas horas de configuração, receba AI Weekly de graça, 3 edições por semana, lido por mais de 40.000 profissionais de IA.