Aprendizagem pessoal com IA
e orientação prática
Espelho de desenho CyberKnife

Personalização do Ollama em execução na GPU

Windows (computador)

A seguir, um exemplo de como personalizar o Ollama para ser executado na GPU em um sistema Windows.

Ollama Por padrão, a CPU é usada para inferência. Para obter uma inferência mais rápida, você pode configurar a GPU usada pelo Ollama. Este tutorial o orientará sobre como definir a variável de ambiente para ativar a aceleração da GPU em sistemas Windows.

pré-condições

  • O computador tem uma placa de vídeo NVIDIA.
  • Os drivers gráficos NVIDIA estão instalados e podem ser usados com o comando nvidia-smi para verificar se o driver está instalado.
  • O kit de ferramentas CUDA está instalado e pode ser usado com o comando nvcc --version para verificar se o CUDA está instalado.

Dica


Para a instalação dos drivers gráficos NVIDIA e do kit de ferramentas CUDA, você pode procurar tutoriais relacionados por conta própria, portanto não os repetirei neste artigo. Se o seu computador atender aos pré-requisitos acima, o Ollama será acelerado por GPU por padrão. Se quiser especificar uma GPU específica, você pode seguir as etapas abaixo para configurá-la.

Configuração de variáveis de ambiente

  1. Abra as configurações da variável de ambiente do sistema
    • Digite "Environment Variables" (Variáveis de ambiente) na barra de pesquisa do Windows e selecione "Edit System Environment Variables" (Editar variáveis de ambiente do sistema).
    • Na janela pop-up Propriedades do sistema, clique na guia Avançado e, em seguida, no botão Variáveis de ambiente.
  2. Criação da variável OLLAMA_GPU_LAYER
    • Na área "System Variables" (Variáveis do sistema), clique no botão "New" (Novo).
    • Na caixa de diálogo New System Variable (Nova variável de sistema), insira as seguintes informações:
      • Nome da variável: OLLAMA_GPU_LAYER
      • Valores variáveis: cuda (Isso dirá ao Ollama para usar CUDA para aceleração de GPU)
    • Clique em "OK" para salvar a variável.

    Personalização do Ollama em execução na GPU-1

  3. (Opcional) Especifique a GPU a ser usada
    • Se o seu sistema tiver mais de uma GPU e você quiser especificar que o Ollama use uma GPU específica, poderá definir a opção CUDA_VISIBLE_DEVICES Variáveis de ambiente.
    • Encontra o UUID da GPU: É altamente recomendável usar o UUID em vez do número, pois o número pode mudar devido a atualizações de driver ou reinicializações do sistema.
      • Abra um prompt de comando ou o PowerShell.
      • Executar comando:nvidia-smi -L
      • Na saída, encontre o valor "UUID" da GPU que você deseja usar. Exemplo:GPU 00000000:01:00.0 inferior UUID : GPU-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.

      Personalização do Ollama em execução na GPU-2

    • Crie a variável CUDA_VISIBLE_DEVICES:
      • Na área "System Variables" (Variáveis do sistema), clique no botão "New" (Novo).
      • Na caixa de diálogo New System Variable (Nova variável de sistema), insira as seguintes informações:
        • Nome da variável: CUDA_VISIBLE_DEVICES
        • Valores variáveis: O UUID da GPU encontrada, por exemplo:GPU-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
      • Clique em "OK" para salvar a variável.

Importante: Para que a variável de ambiente seja efetiva, a variável Reinicie o terminal ou o aplicativo em que o Ollama está sendo executado .

Verifique se a aceleração da GPU está em vigor:

  1. Abra um prompt de comando.
  2. Execute o Ollama, por exemplo: ollama run deepseek-r1:1.5b
  3. Abra uma nova janela do prompt de comando e use o comando ollama ps para visualizar os processos em execução no Ollama.

A personalização do Ollama é executada na GPU-3

 

Linux

A seguir, um exemplo de como personalizar o Ollama para ser executado na GPU em um sistema Linux.

  1. estabelecer ollama_gpu_selector.sh com o seguinte conteúdo:
#!/bin/bash

# Validate input
validate_input(){
if[[! $1 =~^[0-4](,[0-4])*$ ]];then
echo "Error: Invalid input. Please enter numbers between 0 and 4, separated by commas."
exit1
fi
}

# Update the service file with CUDA_VISIBLE_DEVICES values
update_service(){
# Check if CUDA_VISIBLE_DEVICES environment variable exists in the service file
if grep -q '^Environment="CUDA_VISIBLE_DEVICES='/etc/systemd/system/ollama.service;then
# Update the existing CUDA_VISIBLE_DEVICES values
sudo sed -i 's/^Environment="CUDA_VISIBLE_DEVICES=.*/Environment="CUDA_VISIBLE_DEVICES='"$1"'"/'/etc/systemd/system/ollama.service
else
# Add a new CUDA_VISIBLE_DEVICES environment variable
sudo sed -i '/\[Service\]/a Environment="CUDA_VISIBLE_DEVICES='"$1"'"'/etc/systemd/system/ollama.service
fi

# Reload and restart the systemd service
sudo systemctl daemon-reload
sudo systemctl restart ollama.service
echo "Service updated and restarted with CUDA_VISIBLE_DEVICES=$1"
}

# Check if arguments are passed
if["$#"-eq 0];then
# Prompt user for CUDA_VISIBLE_DEVICES values if no arguments are passed
read -p "Enter CUDA_VISIBLE_DEVICES values (0-4, comma-separated): " cuda_values
validate_input "$cuda_values"
update_service "$cuda_values"
else
# Use arguments as CUDA_VISIBLE_DEVICES values
cuda_values="$1"
validate_input "$cuda_values"
update_service "$cuda_values"
fi
  1. Adição de permissões de execução a arquivos de script
chmod +x ollama_gpu_selector.sh
sudo ./ollama_gpu_selector.sh

Depois de executar o script, siga as solicitações do número da GPU para especificar a GPU usada pelo Ollama. Você pode usar vírgulas para separar vários números de GPU, por exemplo:0,1,2.

  1. Reiniciar o serviço Ollama
cat /etc/systemd/system/ollama.service

Depois de executar o comando, examine o arquivo de serviço do Ollama e confirme que a opção CUDA_VISIBLE_DEVICES As variáveis de ambiente foram atualizadas.

Se tiver sido atualizado, ele adicionará, por exemplo Environment="CUDA_VISIBLE_DEVICES=0,1,2" variáveis de ambiente.

Não pode ser reproduzido sem permissão:Chefe do Círculo de Compartilhamento de IA " Personalização do Ollama em execução na GPU
pt_BRPortuguês do Brasil