DEV Community

Wanderson Alves Rodrigues
Wanderson Alves Rodrigues

Posted on

Ollama: Aproveitando o Poder dos Modelos de Linguagem Locais

Nos últimos anos, os modelos de linguagem grandes (LLMs) como o GPT-4 revolucionaram a forma como interagimos com a inteligência artificial. No entanto, utilizar esses modelos geralmente requer acesso à nuvem, o que pode levantar preocupações com privacidade, latência e custos. É aqui que entra o Ollama, uma ferramenta poderosa que permite executar LLMs localmente no seu próprio hardware. Neste post, vamos explorar o que é o Ollama, seus benefícios e como você pode começar a usá-lo.

O que é o Ollama?

O Ollama é uma ferramenta de código aberto que possibilita a execução, criação e compartilhamento dos modelos de linguagem (LLMs) diretamente no seu próprio computador. Ele permite que você baixe, gerencie e execute modelos em seu próprio hardware, eliminando a necessidade de dependência da nuvem. Isso significa que você pode ter controle total sobre os seus dados, reduzir a latência das inferências e otimizar o uso dos recursos computacionais disponíveis e ter uma flexibilidade ao permitir a execução de modelos com diferentes configurações e tamanhos.

Benefícios de Usar o Ollama

  1. Privacidade dos Dados: Ao executar modelos localmente, você garante que seus dados não saiam do seu ambiente controlado. Isso é crucial para empresas e indivíduos preocupados com a privacidade e segurança da informação.

  2. Redução de Latência: A execução local dos modelos elimina a necessidade de comunicação com servidores remotos, resultando em respostas mais rápidas e eficientes.

  3. Controle de Recursos: Com o Ollama, você pode otimizar o uso dos recursos de hardware disponíveis, como CPU e GPU, ajustando as configurações para atender às suas necessidades específicas.

  4. Custo-Benefício: Evitar custos de serviços em nuvem pode ser uma vantagem significativa, especialmente para projetos de longo prazo ou com alta demanda de processamento.

Instalando o Ollama

Para instalar o Ollama, você pode baixar diretamente do site oficial ou utilizar uma imagem Docker disponível no Docker Hub. O comando abaixo vai instalar na sua maquina Ollama:

curl -fsSL https://ollama.com/install.sh | sh
Enter fullscreen mode Exit fullscreen mode

Agora que já temos o Ollama instalado, vamos verificar se está tudo funcionando corretamente.

ollama --version
Enter fullscreen mode Exit fullscreen mode

Se tudo estiver funcionando corretamente, você verá a versão do Ollama que está rodando na sua máquina:

ollama version is 0.2.8
Enter fullscreen mode Exit fullscreen mode

Rodando um modelo de Machine Learning com o Ollama

Para nosso exemplo vamos usar o modelo llama3.1 de 8B de parâmetros.O Llama 3.1 criado pela Meta é o primeiro modelo disponível abertamente que rivaliza com os principais modelos de IA quando se trata de recursos de última geração em conhecimento geral, capacidade de direção, matemática, uso de ferramentas e tradução multilíngue.

Para rodar llama3.1, você pode utilizar o seguinte comando:

ollama run llama3.1
Enter fullscreen mode Exit fullscreen mode

Na primeira vez que você rodar o comando, o Ollama irá baixar o modelo do llama3.1 e depois irá rodar o modelo.

pulling manifest 
pulling ff07ca852139... 100% ▕██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▏ 4.7 GB                         
pulling cdbcae7e69d5... 100% ▕██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▏  571 B                         
pulling f1cd752815fc... 100% ▕██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▏  12 KB                         
pulling 56bb8bd477a5... 100% ▕██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▏   96 B                         
pulling 7f5b37e43ea5... 100% ▕██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▏  485 B                         
verifying sha256 digest 
writing manifest 
removing any unused layers 
success 
Enter fullscreen mode Exit fullscreen mode

Quando você ver o prompt >>> Send a message (/? for help):, você poderá interagir com o modelo.

>>> 
Use Ctrl + d or /bye to exit.
>>> Olá, tudo bem?
Tudo! Quais são as suas dúvidas ou o que você precisa? Estou aqui para te ajudar.

>>> Send a message (/? for help)
Enter fullscreen mode Exit fullscreen mode

Já estamos com o llama3.1 rodando na nossa máquina. Agora podemos interagir com o modelo e ver o que ele é capaz de fazer.
Para sair do modelo, você pode utilizar o comando Ctrl + d no terminal ou digitar /bye no prompt do modelo.
Para listar quais são os modelos disponíveis para rodar com o Ollama, execute o comando:

ollama list
Enter fullscreen mode Exit fullscreen mode

A saída:

NAME            ID              SIZE    MODIFIED      
llama3.1:latest a23da2a80395    4.7 GB  9 minutes ago   
Enter fullscreen mode Exit fullscreen mode

Caso você queira remover um modelo que você baixou, você pode utilizar o seguinte comando:

ollama remove llama3.1  
Enter fullscreen mode Exit fullscreen mode

Instalando o Ollama via Docker

Vamos então efetuar o pull destas imagens:

docker pull ollama/ollama
Enter fullscreen mode Exit fullscreen mode

Agora que já temos as imagens, vamos iniciar um container com o ollama e deixa-lo acessível, para isso iremos executar o comando:

docker run -d -p 11434:11434 --name myollama ollama/ollama
Enter fullscreen mode Exit fullscreen mode

Para verificar se tudo realmente está disponível, vamos executar o comando para verificar a versão do ollama.

docker exec myollama ollama --version
Enter fullscreen mode Exit fullscreen mode

Para rodar o modelo llama3.1:

docker exec -it myollama ollama run llama3.1
Enter fullscreen mode Exit fullscreen mode

Para listar os modelos existentes:

docker exec myollama ollama list
Enter fullscreen mode Exit fullscreen mode

Para remover modelo:

docker exec myollama ollama rm llama3.1
Enter fullscreen mode Exit fullscreen mode

Instalando o Open WebUI

Para que possamos ter uma interface gráfica para a nossa IA, vamos usar a ferramenta é o Open WebUI.
Para instalar o Open WebUI, você pode utilizar o seguinte comando:

docker run -d --network=host -e OLLAMA_BASE_URL=http://127.0.0.1:11434 -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main    
Enter fullscreen mode Exit fullscreen mode

Onde:

  • --network=host é utilizado para que o container tenha acesso a rede da máquina host.

  • -v open-webui:/app/backend/data é utilizado para criar um volume para armazenar os dados do Open WebUI.

  • -e OLLAMA_BASE_URL é utilizado para informar a URL base do Ollama, que está rodando na sua máquina, se você estiver rodando o Ollama em outro lugar, você pode alterar o IP e a porta.

  • --name open-webui é utilizado para dar um nome ao container.

  • --restart always é utilizado para que o container seja reiniciado sempre que a máquina for reiniciada.

  • ghcr.io/open-webui/open-webui:main é a imagem do Open WebUI que será utilizada.

Para acessar o Open WebUI, acesse http://localhost:8080

Depois de criar o usuário, você poderá acessar a interface gráfica e interagir com a sua IA.

Image description

Referências:

Apresentando o Llama 3.1: nossos modelos mais capazes até o momento
Llama 3.1 - 405B, 70B & 8B with multilinguality and long context
Llama 3.1 - huggingface
Ollama
Open WebUI

Top comments (0)