Skip to content

Como posso atualizar o Ollama?

O Ollama para macOS e Windows baixará atualizações automaticamente. Clique no item da barra de tarefas ou da barra de menus e depois clique em "Reiniciar para atualizar" para aplicar a atualização. As atualizações também podem ser instaladas baixando a versão mais recente manualmente.

No Linux, execute novamente o script de instalação:

shell
curl -fsSL https://ollama.com/install.sh | sh

Como posso visualizar os logs?

Consulte a documentação de Solução de Problemas para mais informações sobre como usar os logs.

Minha GPU é compatível com o Ollama?

Consulte a documentação de GPU.

Como posso definir o tamanho da janela de contexto?

Por padrão, o Ollama usa um tamanho de janela de contexto de 4096 tokens.

Esse valor pode ser substituído pela variável de ambiente OLLAMA_CONTEXT_LENGTH. Por exemplo, para definir a janela de contexto padrão como 8K, use:

shell
OLLAMA_CONTEXT_LENGTH=8192 ollama serve

Para alterar esse valor ao usar o ollama run, use /set parameter:

shell
/set parameter num_ctx 4096

Ao usar a API, especifique o parâmetro num_ctx:

shell
curl http://localhost:11434/api/generate -d '{
  "model": "llama3.2",
  "prompt": "Why is the sky blue?",
  "options": {
    "num_ctx": 4096
  }
}'

Como posso saber se meu modelo foi carregado na GPU?

Use o comando ollama ps para ver quais modelos estão atualmente carregados na memória.

shell
ollama ps

INFO

Saída:

NAME        ID            SIZE    PROCESSOR   UNTIL
llama3:70b  bcfb190ca3a7  42 GB   100% GPU    4 minutes from now

A coluna Processor indicará em qual memória o modelo foi carregado:

  • 100% GPU significa que o modelo foi carregado inteiramente na GPU
  • 100% CPU significa que o modelo foi carregado inteiramente na memória do sistema
  • 48%/52% CPU/GPU significa que o modelo foi carregado parcialmente tanto na GPU quanto na memória do sistema

Como configurar o servidor Ollama?

O servidor Ollama pode ser configurado por meio de variáveis de ambiente.

Definindo variáveis de ambiente no Mac

Se o Ollama for executado como um aplicativo macOS, as variáveis de ambiente devem ser definidas usando o launchctl:

  1. Para cada variável de ambiente, execute o comando launchctl setenv.
    bash
    launchctl setenv OLLAMA_HOST "0.0.0.0:11434"
  2. Reinicie o aplicativo Ollama.

Definindo variáveis de ambiente no Linux

Se o Ollama for executado como um serviço systemd, as variáveis de ambiente devem ser definidas usando o systemctl:

  1. Edite o serviço systemd executando o comando systemctl edit ollama.service. Isso abrirá um editor.
  2. Para cada variável de ambiente, adicione uma linha Environment na seção [Service]:
    ini
    [Service]
    Environment="OLLAMA_HOST=0.0.0.0:11434"
  3. Salve e saia do editor.
  4. Recarregue o systemd e reinicie o Ollama:
    shell
    systemctl daemon-reload
    systemctl restart ollama

Definindo variáveis de ambiente no Windows

No Windows, o Ollama herda as variáveis de ambiente do seu usuário e do sistema.

  1. Primeiro, feche o Ollama clicando nele na barra de tarefas.
  2. Abra o aplicativo Configurações (Windows 11) ou Painel de Controle (Windows 10) e pesquise por variáveis de ambiente.
  3. Clique em Editar variáveis de ambiente para sua conta.
  4. Edite ou crie uma nova variável para sua conta de usuário para OLLAMA_HOST, OLLAMA_MODELS, etc.
  5. Clique em OK/Aplicar para salvar.
  6. Inicie o aplicativo Ollama pelo menu Iniciar do Windows.

Como usar o Ollama atrás de um proxy?

O Ollama baixa modelos da Internet e pode precisar de um servidor proxy para acessá-los. Use a variável HTTPS_PROXY para redirecionar solicitações de saída pelo proxy. Certifique-se de que o certificado do proxy esteja instalado como um certificado do sistema. Consulte a seção acima para saber como definir variáveis de ambiente na sua plataforma.

Note

Evite definir a variável HTTP_PROXY. O Ollama não usa HTTP para baixar modelos, apenas HTTPS. Definir HTTP_PROXY pode interromper as conexões de clientes com o servidor.

Como usar o Ollama atrás de um proxy no Docker?

A imagem de contêiner Docker do Ollama pode ser configurada para usar um proxy passando o parâmetro -e HTTPS_PROXY=https://proxy.example.com ao iniciar o contêiner.

Como alternativa, o daemon Docker pode ser configurado para usar um proxy. Instruções estão disponíveis para o Docker Desktop no macOS, Windows e Linux, e para o daemon Docker com systemd.

Certifique-se de que o certificado esteja instalado como um certificado do sistema ao usar HTTPS. Isso pode exigir uma nova imagem Docker ao usar um certificado autoassinado.

dockerfile
FROM ollama/ollama
COPY my-ca.pem /usr/local/share/ca-certificates/my-ca.crt
RUN update-ca-certificates

Compile e execute esta imagem:

shell
docker build -t ollama-with-ca .
docker run -d -e HTTPS_PROXY=https://my.proxy.example.com -p 11434:11434 ollama-with-ca

O Ollama envia meus prompts e respostas de volta para o ollama.com?

O Ollama é executado localmente. Não vemos seus prompts ou dados quando você o executa localmente. Ao usar modelos hospedados na nuvem, processamos seus prompts e respostas para fornecer o serviço, mas não armazenamos ou registramos esse conteúdo e nunca o usamos para treinamento. Coletamos informações básicas de conta e metadados de uso limitados para fornecer o serviço, que não incluem o conteúdo de prompts ou respostas. Não vendemos seus dados. Você pode excluir sua conta a qualquer momento.

Como desativar os recursos de nuvem do Ollama?

O Ollama pode ser executado no modo apenas local, desativando seus recursos de nuvem. Ao desligar os recursos de nuvem do Ollama, você perderá a capacidade de usar os modelos de nuvem do Ollama e a pesquisa na web.

Defina disable_ollama_cloud no arquivo ~/.ollama/server.json:

json
{
  "disable_ollama_cloud": true
}

Você também pode definir a variável de ambiente:

shell
OLLAMA_NO_CLOUD=1

Reinicie o Ollama após alterar a configuração. Quando desativado, os logs do Ollama mostrarão Ollama cloud disabled: true.

Como posso expor o Ollama na minha rede?

Por padrão, o Ollama vincula a porta 11434 ao endereço 127.0.0.1. Altere o endereço de vinculação com a variável de ambiente OLLAMA_HOST.

Consulte a seção acima para saber como definir variáveis de ambiente na sua plataforma.

Como usar o Ollama com um servidor proxy?

O Ollama executa um servidor HTTP e pode ser exposto usando um servidor proxy como o Nginx. Para isso, configure o proxy para encaminhar solicitações e, opcionalmente, defina os cabeçalhos necessários (se não estiver expondo o Ollama na rede). Por exemplo, com o Nginx:

nginx
server {
    listen 80;
    server_name example.com;  # Substitua pelo seu domínio ou IP
    location / {
        proxy_pass http://localhost:11434;
        proxy_set_header Host localhost:11434;
    }
}

Como usar o Ollama com o ngrok?

O Ollama pode ser acessado usando diversos aplicativos de tunelamento. Por exemplo, com o Ngrok:

shell
ngrok http 11434 --host-header="localhost:11434"

Como usar o Ollama com o Cloudflare Tunnel?

Para usar o Ollama com o Cloudflare Tunnel, use as flags --url e --http-host-header:

shell
cloudflared tunnel --url http://localhost:11434 --http-host-header="localhost:11434"

Como permitir que origens web adicionais acessem o Ollama?

Por padrão, o Ollama permite solicitações de origem cruzada de 127.0.0.1 e 0.0.0.0. Origens adicionais podem ser configuradas com a variável OLLAMA_ORIGINS.

Para extensões de navegador, você precisará permitir explicitamente o padrão de origem da extensão. Defina OLLAMA_ORIGINS para incluir chrome-extension://*, moz-extension://* e safari-web-extension://* se desejar permitir o acesso de todas as extensões de navegador, ou extensões específicas conforme necessário:

# Permitir todas as extensões do Chrome, Firefox e Safari
OLLAMA_ORIGINS=chrome-extension://*,moz-extension://*,safari-web-extension://* ollama serve

Consulte a seção acima para saber como definir variáveis de ambiente na sua plataforma.

Onde os modelos são armazenados?

  • macOS: ~/.ollama/models
  • Linux: /usr/share/ollama/.ollama/models
  • Windows: C:\Users\%username%\.ollama\models

Como definir um local diferente para os modelos?

Se for necessário usar um diretório diferente, defina a variável de ambiente OLLAMA_MODELS para o diretório escolhido.

Note

No Linux, ao usar o instalador padrão, o usuário ollama precisa de permissões de leitura e escrita no diretório especificado. Para atribuir o diretório ao usuário ollama, execute o comando sudo chown -R ollama:ollama <directory>.

Consulte a seção acima para saber como definir variáveis de ambiente na sua plataforma.

Como usar o Ollama no Visual Studio Code?

Já existe uma grande coleção de plugins disponíveis para o VS Code, bem como para outros editores que usam o Ollama. Consulte a lista de extensões e plugins na parte inferior do arquivo readme principal do repositório.

Como usar o Ollama com aceleração de GPU no Docker?

O contêiner Docker do Ollama pode ser configurado com aceleração de GPU no Linux ou no Windows (com WSL2). Isso requer o nvidia-container-toolkit. Consulte o repositório ollama/ollama para mais detalhes.

A aceleração de GPU não está disponível para o Docker Desktop no macOS devido à falta de passagem de GPU e emulação.

Por que a rede está lenta no WSL2 no Windows 10?

Isso pode afetar tanto a instalação do Ollama quanto o download de modelos.

Abra o Painel de Controle > Rede e Internet > Exibir status e tarefas de rede e clique em Alterar configurações do adaptador no painel esquerdo. Encontre o adaptador vEthernet (WSL), clique com o botão direito e selecione Propriedades. Clique em Configurar e abra a guia Avançado. Pesquise em cada uma das propriedades até encontrar Large Send Offload Version 2 (IPv4) e Large Send Offload Version 2 (IPv6). Desative ambas essas propriedades.

Como posso pré-carregar um modelo no Ollama para obter tempos de resposta mais rápidos?

Se você estiver usando a API, pode pré-carregar um modelo enviando uma solicitação vazia para o servidor Ollama. Isso funciona com os endpoints de API /api/generate e /api/chat.

Para pré-carregar o modelo mistral usando o endpoint de geração, use:

shell
curl http://localhost:11434/api/generate -d '{"model": "mistral"}'

Para usar o endpoint de conclusões de chat, use:

shell
curl http://localhost:11434/api/chat -d '{"model": "mistral"}'

Para pré-carregar um modelo usando a CLI, use o comando:

shell
ollama run llama3.2 ""

Como manter um modelo carregado na memória ou descarregá-lo imediatamente?

Por padrão, os modelos são mantidos na memória por 5 minutos antes de serem descarregados. Isso permite tempos de resposta mais rápidos se você estiver fazendo várias solicitações ao LLM. Se quiser descarregar um modelo da memória imediatamente, use o comando ollama stop:

shell
ollama stop llama3.2

Se você estiver usando a API, use o parâmetro keep_alive com os endpoints /api/generate e /api/chat para definir o tempo que um modelo permanece na memória. O parâmetro keep_alive pode ser definido como:

  • uma string de duração (como "10m" ou "24h")
  • um número em segundos (como 3600)
  • qualquer número negativo, que manterá o modelo carregado na memória (ex: -1 ou "-1m")
  • '0', que descarregará o modelo imediatamente após gerar uma resposta

Por exemplo, para pré-carregar um modelo e deixá-lo na memória, use:

shell
curl http://localhost:11434/api/generate -d '{"model": "llama3.2", "keep_alive": -1}'

Para descarregar o modelo e liberar memória, use:

shell
curl http://localhost:11434/api/generate -d '{"model": "llama3.2", "keep_alive": 0}'

Como alternativa, você pode alterar o tempo que todos os modelos permanecem carregados na memória definindo a variável de ambiente OLLAMA_KEEP_ALIVE ao iniciar o servidor Ollama. A variável OLLAMA_KEEP_ALIVE usa os mesmos tipos de parâmetro que o parâmetro keep_alive mencionado acima. Consulte a seção que explica como configurar o servidor Ollama para definir a variável de ambiente corretamente.

O parâmetro de API keep_alive com os endpoints /api/generate e /api/chat substituirá a configuração OLLAMA_KEEP_ALIVE.

Como gerenciar o número máximo de solicitações que o servidor Ollama pode enfileirar?

Se muitas solicitações forem enviadas ao servidor, ele responderá com um erro 503 indicando que está sobrecarregado. Você pode ajustar quantas solicitações podem ser enfileiradas definindo a variável OLLAMA_MAX_QUEUE.

Como o Ollama lida com solicitações simultâneas?

O Ollama suporta dois níveis de processamento simultâneo. Se o seu sistema tiver memória disponível suficiente (memória do sistema ao usar inferência por CPU, ou VRAM para inferência por GPU), vários modelos podem ser carregados ao mesmo tempo. Para um modelo específico, se houver memória disponível suficiente quando o modelo for carregado, ele será configurado para permitir o processamento paralelo de solicitações.

Se não houver memória disponível suficiente para carregar uma solicitação de novo modelo enquanto um ou mais modelos já estão carregados, todas as novas solicitações serão enfileiradas até que o novo modelo possa ser carregado. À medida que modelos anteriores ficam ociosos, um ou mais serão descarregados para liberar espaço para o novo modelo. As solicitações enfileiradas serão processadas em ordem. Ao usar inferência por GPU, novos modelos devem caber completamente na VRAM para permitir o carregamento simultâneo de modelos.

O processamento paralelo de solicitações para um modelo específico resulta no aumento do tamanho do contexto pelo número de solicitações paralelas. Por exemplo, um contexto de 2K com 4 solicitações paralelas resultará em um contexto de 8K e alocação de memória adicional.

As seguintes configurações de servidor podem ser usadas para ajustar como o Ollama lida com solicitações simultâneas na maioria das plataformas:

  • OLLAMA_MAX_LOADED_MODELS - O número máximo de modelos que podem ser carregados simultaneamente, desde que caibam na memória disponível. O padrão é 3 * o número de GPUs ou 3 para inferência por CPU.
  • OLLAMA_NUM_PARALLEL - O número máximo de solicitações paralelas que cada modelo processará ao mesmo tempo, padrão 1. A RAM necessária aumentará proporcionalmente a OLLAMA_NUM_PARALLEL * OLLAMA_CONTEXT_LENGTH.
  • OLLAMA_MAX_QUEUE - O número máximo de solicitações que o Ollama enfileirará quando estiver ocupado, antes de rejeitar solicitações adicionais. O padrão é 512

Observação: No Windows com GPUs Radeon, o padrão atual é de no máximo 1 modelo, devido a limitações no relatório de VRAM disponível do ROCm v5.7. Quando o ROCm v6.2 estiver disponível, as Radeon no Windows seguirão os padrões mencionados acima. Você pode habilitar o carregamento simultâneo de modelos em Radeon no Windows, mas certifique-se de não carregar mais modelos do que cabem na VRAM da sua GPU.

Como o Ollama carrega modelos em várias GPUs?

Ao carregar um novo modelo, o Ollama compara a VRAM necessária para o modelo com a VRAM atualmente disponível. Se o modelo couber inteiramente em uma única GPU, o Ollama o carregará nessa GPU. Isso geralmente fornece o melhor desempenho, pois reduz a quantidade de dados transferidos pelo barramento PCI durante a inferência. Se o modelo não couber inteiramente em uma GPU, ele será distribuído por todas as GPUs disponíveis.

Como posso habilitar o Flash Attention?

Flash Attention é um recurso da maioria dos modelos modernos que pode reduzir significativamente o uso de memória à medida que o tamanho do contexto aumenta. O Ollama usa o Flash Attention automaticamente quando o backend e os dispositivos selecionados oferecem suporte a ele. Para forçar a ativação do Flash Attention, defina OLLAMA_FLASH_ATTENTION=1 ao iniciar o servidor Ollama. Para desativá-lo, defina OLLAMA_FLASH_ATTENTION=0.

Como posso definir o tipo de quantização para o cache K/V?

O cache de contexto K/V pode ser quantizado para reduzir significativamente o uso de memória quando o Flash Attention está habilitado.

Para usar o cache K/V quantizado com o Ollama, você pode definir a seguinte variável de ambiente:

  • OLLAMA_KV_CACHE_TYPE - O tipo de quantização para o cache K/V. O valor padrão é f16.

Nota

Atualmente esta é uma opção global - o que significa que todos os modelos serão executados com o tipo de quantização especificado.

Os tipos de quantização de cache K/V disponíveis atualmente são:

  • f16 - alta precisão e uso de memória (padrão).
  • q8_0 - quantização de 8 bits, usa aproximadamente 1/2 da memória do f16 com uma perda de precisão muito pequena, geralmente não tem impacto perceptível na qualidade do modelo (recomendado se não estiver usando f16).
  • q4_0 - quantização de 4 bits, usa aproximadamente 1/4 da memória do f16 com uma perda de precisão pequena a média que pode ser mais perceptível em tamanhos de contexto maiores.

O quanto a quantização do cache afeta a qualidade da resposta do modelo depende do modelo e da tarefa. Modelos com uma contagem GQA alta (por exemplo, Qwen2) podem sofrer um impacto maior na precisão com a quantização do que modelos com uma contagem GQA baixa.

Você pode precisar experimentar diferentes tipos de quantização para encontrar o melhor equilíbrio entre uso de memória e qualidade.

Onde posso encontrar minha Chave Pública do Ollama?

Sua Chave Pública do Ollama é a parte pública do par de chaves que permite que sua instância local do Ollama se comunique com o ollama.com.

Você precisará dela para:

  • Enviar modelos para o Ollama
  • Baixar modelos privados do Ollama para sua máquina
  • Executar modelos hospedados no Ollama Cloud

Como adicionar a chave

  • Faça login pela página Configurações nos aplicativos Mac e Windows

  • Faça login via CLI

shell
ollama signin

Onde a Chave Pública do Ollama está armazenada

Sistema OperacionalCaminho para id_ed25519.pub
macOS~/.ollama/id_ed25519.pub
Linux/usr/share/ollama/.ollama/id_ed25519.pub
WindowsC:\Users\<username>\.ollama\id_ed25519.pub

Nota

Substitua <username> pelo seu nome de usuário real do Windows.

Como posso impedir que o Ollama seja iniciado quando faço login no meu computador?

O Ollama para Windows e macOS se registra como um item de login durante a instalação. Você pode desativar essa opção se preferir que o Ollama não seja iniciado automaticamente. O Ollama respeitará essa configuração em todas as atualizações, a menos que você desinstale o aplicativo.

Windows

  • No Gerenciador de Tarefas, vá para a guia Aplicativos de inicialização, pesquise por ollama e clique em Desativar

MacOS

  • Abra Configurações e pesquise por "Itens de login", encontre a entrada Ollama em Permitir em segundo plano, depois clique no controle deslizante para desativar.