Generative AI

Como Rodar LLMs Localmente com Ollama (Guia de Configuração 2026)

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 criativas
  • num_ctx (padrão 2048): janela de contexto em tokens; aumente quando precisar colar documentos longos, mas isso eleva o uso de VRAM
  • top_p (padrão 0.9): controla a diversidade da saída em conjunto com a temperatura
  • repeat_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.