Como Rodar o LLaMa 3.2 (LLM) Localmente com Simplicidade Usando o Ollama e Docker: Guia Prático

Com o crescimento exponencial dos modelos de linguagem de grande porte (LLMs), a integração desses modelos em fluxos de trabalho locais tem se tornado uma necessidade real para desenvolvedores e entusiastas de IA. Um dos modelos mais robustos atualmente é o LLaMa 3.2, desenvolvido pela Meta. Ele é famoso por suas capacidades avançadas de processamento de linguagem natural, sendo amplamente utilizado em diversas aplicações de IA, como chatbots, assistentes virtuais e análise de texto. No entanto, rodar esse tipo de modelo localmente pode ser um desafio devido aos recursos computacionais necessários.

É aí que entra o Ollama, uma plataforma que facilita o uso local de LLMs de forma eficiente, simplificando o processo de integração e execução de modelos avançados como o LLaMa.

Neste guia, você aprenderá a configurar e rodar o LLaMa 3.2 localmente com o Ollama, aproveitando o poder da IA diretamente no seu ambiente de desenvolvimento, sem depender de servidores externos.

O Que é o LLaMa 3.2?

O LLaMa (Large Language Model Meta AI) é uma família de modelos de linguagem desenvolvida pela Meta (antiga Facebook). Ele é projetado para gerar texto de forma altamente eficiente, com uma capacidade impressionante de compreender e produzir linguagem natural. A versão 3.2 traz melhorias em precisão, compreensão contextual e na geração de textos complexos, tornando-se uma excelente opção para aplicações que demandam inteligência artificial avançada.

O Que é o Ollama?

O Ollama é uma plataforma que facilita a execução de modelos de linguagem localmente, oferecendo uma interface simples para rodar LLMs em diferentes sistemas operacionais. Com o Ollama, você pode executar modelos poderosos como o LLaMa em seu próprio ambiente de desenvolvimento, sem a necessidade de usar servidores na nuvem, garantindo mais privacidade e controle sobre o seu projeto.


Executando o Ollama

Para computadores com GPU’s mais fracas

Para computadores que têm GPU’s e outros recursos mais fracos, é possível executar o Ollama no Docker com base em CPU, conforme comando abaixo

docker run -d -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama

Isto criará um volume para que você possa gerir os modelos do Ollama com facilidade e o colocará exposto na porta 11434.

Para GPU’s NVIDIA

Instale os pacotes do container toolkit: https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html#installation

Configure o docker para usar os drivers NVIDIA:

sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart docker

Inicie o container (atenção para gpus=all):

docker run -d --gpus=all -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama

Para GPU’s AMD

Basta usar a tag rocm ao iniciar o container

docker run -d --device /dev/kfd --device /dev/dri -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama:rocm

Executando o LLaMa

A execução do modelo com o Ollama é simples, basta enviar o comando ao container (assim como exemplificado abaixo).

docker exec -it ollama ollama run llama3

Isso fará o pull do modelo (caso ainda não tenha) e o executará.

Com a mesma linha de pensamento, você pode definir o LLaMa3.2

docker exec -it ollama ollama run llama3.2

DICA: Para PCs mais fracos o LLaMa 3.2 tem uma versão 1B

docker exec -it ollama ollama run llama3.2:1B

A lista de todos os modelos que são possíveis de serem utilizados através do Ollama está disponível aqui: https://ollama.com/search

A API

O Ollama além da CLI também fornece uma API, onde a referência dela pode ser encontrada aqui: https://github.com/ollama/ollama/blob/main/docs/api.md

Para a API basta realizar uma requisição para a porta do container (no nosso exemplo, 11434). Abaixo exemplificamos através de um POST para a realização de um prompt através do curl

curl --request POST \
  --url http://localhost:11434/api/generate \
  --header 'Content-Type: application/json' \
  --data '{
  "model": "llama3.2:3b",
	"stream": false,
  "prompt": "Olá, como você está?"
}'

Note que utilizamos stream como false pois o Ollama permite o uso de streaming (ou seja, você pode ter uma resposta parcial e checar se done está como true, montando pouco a pouco a resposta).

DICA: Diferente do uso via CLI, /api/generate apenas executa a geração, não realiza o pull do modelo.

Você pode resolver isto através do endpoint pull (caso o modelo já exista, não será “baixado” novamente)

curl --request POST \
  --url http://localhost:11434/api/pull \
  --header 'Content-Type: application/json' \
  --data '{
  "name": "llama3.2:3b",
	"stream": false
}'

Dicas de Otimização

  1. Ajuste o uso de memória e CPU: Dependendo do seu hardware, você pode ajustar os parâmetros de execução do Ollama para otimizar o uso de recursos.
  2. Testes com diferentes configurações: Alguns modelos de linguagem permitem ajustar parâmetros como temperatura e número de tokens, o que pode impactar diretamente a qualidade das respostas geradas.

Conclusão

Rodar o LLaMa 3.2 localmente com o Ollama e Docker oferece grande flexibilidade para desenvolver soluções de IA robustas diretamente no seu ambiente local, sem depender de serviços em nuvem. Este guia mostrou como configurar seu ambiente, baixar o modelo e rodar o LLaMa no seu sistema, garantindo maior controle sobre a execução do modelo de linguagem.

Agora que você tem o LLaMa rodando localmente, as possibilidades são infinitas! Aproveite essa ferramenta poderosa para criar soluções inteligentes em seus projetos de IA.

Gostou deste artigo? Fique ligado no blog para mais tutoriais práticos sobre IA, desenvolvimento de software e tecnologia!

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Rolar para cima