DEV Community

Wanderson Alves Rodrigues
Wanderson Alves Rodrigues

Posted on • Edited on

14 1

Ollama: Aproveitando o poder dos modelos de linguagem locais

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

Image of Docusign

🛠️ Bring your solution into Docusign. Reach over 1.6M customers.

Docusign is now extensible. Overcome challenges with disconnected products and inaccessible data by bringing your solutions into Docusign and publishing to 1.6M customers in the App Center.

Learn more

Top comments (0)

A Workflow Copilot. Tailored to You.

Pieces.app image

Our desktop app, with its intelligent copilot, streamlines coding by generating snippets, extracting code from screenshots, and accelerating problem-solving.

Read the docs