← Todos os artigos
Open Source

Como Executar LLMs Localmente com Ollama e Open WebUI

Aprenda a rodar modelos de linguagem localmente usando Ollama e Open WebUI para proteger dados sensíveis e garantir conformidade com a LGPD.

5 de leitura
Como Executar LLMs Localmente com Ollama e Open WebUI
Foto por Markus Winkler

Como Executar LLMs Localmente com Ollama e Open WebUI para Garantir a Privacidade de Dados

A adoção massiva de Modelos de Linguagem de Grande Porte (LLMs) em processos corporativos e de desenvolvimento trouxe ganhos expressivos de produtividade. No entanto, o envio de dados sensíveis — como códigos-fonte proprietários, registros financeiros, documentos jurídicos e dados pessoais de clientes — para APIs hospedadas em nuvens terceirizadas gera riscos significativos de vazamento de informações e violação de conformidades como a LGPD e o GDPR.

Para mitigar esses riscos sem abrir mão do uso de inteligência artificial, a solução é a inferência local. Executar modelos open source diretamente na sua infraestrutura garante que nenhum byte de informação saia do seu perímetro de segurança.

Neste artigo, explicamos como estruturar um ambiente local completo utilizando o Ollama como motor de inferência e o Open WebUI como interface gráfica amigável.


[IMAGEM] tipo: diagrama assunto: Comparativo do fluxo de dados entre requisição para API na nuvem e processamento local isolado motivo: Ilustrar visualmente como o processamento local impede que informações confidenciais trafeguem pela internet pública [/IMAGEM]


Por que a Inferência Local é Crítica para a Segurança?

Ao utilizar serviços de IA comerciais na nuvem, sua organização depende das políticas de privacidade e da infraestrutura do provedor. Mesmo quando as empresas afirmam não utilizar dados de clientes para treinamento, existem pontos de vulnerabilidade:

  • Interceptação em trânsito: Risco de ataques do tipo Man-in-the-Middle caso as conexões não estejam perfeitamente configuradas.
  • Retenção de logs: APIs podem armazenar prompts e respostas em logs de auditoria temporários por dias ou semanas.
  • Acesso inadvertido de terceiros: Incidentes de segurança no provedor podem expor o histórico de conversas da sua conta.

Com a inferência 100% local, o modelo roda na memória RAM ou VRAM da sua própria máquina ou servidor interno. O tráfego de rede fica restrito ao loopback (127.0.0.1) ou a uma rede local privada (VLAN isolada).


Entendendo as Ferramentas

Para construir uma experiência de uso fluida e segura, combinamos duas ferramentas open source complementares:

  1. Ollama: É um gerenciador e executor de LLMs projetado para simplificar a execução de modelos (como Llama 3, Mistral e Gemma) em hardware local. Ele empacota os pesos do modelo, configurações e dependências de inferência em um único executável leve.
  2. Open WebUI: É uma interface web self-hosted com visual e funcionalidades semelhantes às de plataformas comerciais de IA (gerenciamento de chats, histórico, suporte a RAG e controle de acesso multiusuário). Ele se conecta ao Ollama via API REST interna.

Requisitos de Hardware

O desempenho da execução local depende do tamanho do modelo (medido em bilhões de parâmetros) e da quantização (compressão dos pesos do modelo).

  • Modelos de 7B a 8B parâmetros (ex.: Llama 3 8B, Mistral 7B):
  • Mínimo: 16 GB de RAM ou VRAM dedicada de 8 GB (Nvidia/Apple Silicon).
  • Recomendado: GPU com 12 GB+ de VRAM (ex.: RTX 3060/4070) ou Mac com chip M-series e 18 GB+ de memória unificada.
  • Modelos de 14B a 33B parâmetros:
  • Mínimo: 32 GB de RAM ou VRAM dedicada de 16 GB.
  • Modelos de 70B parâmetros:
  • Exigem arranjos corporativos de GPU (como múltiplas placas RTX 4090 ou A100) ou Macs com 64 GB+ de memória unificada.

Passo a Passo: Instalação e Configuração

Passo 1: Instalando e Executando o Ollama

No Linux ou macOS, a instalação pode ser feita pelo terminal com um único comando:

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

No Windows, baixe e execute o instalador oficial.

Após a instalação, verifique se o serviço está ativo baixando e testando um modelo leve de demonstração (ex.: Llama 3 de 8 bilhões de parâmetros):

bash ollama run llama3

Após o download do arquivo do modelo, você poderá interagir diretamente no terminal. Para encerrar o chat no terminal, digite /bye.

Passo 2: Implantando o Open WebUI via Docker

A maneira mais limpa e isolada de executar o Open WebUI é utilizando o Docker. Certifique-se de ter o Docker e o Docker Compose instalados na máquina.

Se o Ollama e o Open WebUI estiverem na mesma máquina, execute o comando abaixo para iniciar o container do Open WebUI conectando-o ao Ollama local:

bash docker run -d -p 3000:8080 \ --add-host=host.docker.internal:host-gateway \ -v open-webui:/app/backend/data \ --name open-webui \ --restart always \ ghcr.io/open-webui/open-webui:main

Entendendo os parâmetros: - -p 3000:8080: Mapeia a porta 3000 da sua máquina para a interface web. - --add-host=host.docker.internal:host-gateway: Permite que o container Docker acesse o serviço Ollama rodando no host nativo. - -v open-webui:/app/backend/data: Cria um volume persistente para armazenar histórico de chats, usuários e configurações.

[IMAGEM] tipo: screenshot assunto: Tela inicial do Open WebUI no navegador mostrando a caixa de seleção de modelos e campo de texto motivo: Demonstrar a experiência visual do usuário ao acessar o ambiente local via navegador [/IMAGEM]

Passo 3: Primeiro Acesso e Configuração de Segurança

  1. Abra o navegador e acesse http://localhost:3000.
  2. No primeiro acesso, o sistema pedirá a criação de uma conta de Administrador. Esta conta é estritamente local e fica armazenada no seu volume Docker.
  3. Após o login, clique no menu do perfil (canto inferior esquerdo) > Painel de Administração > Configurações > Conexões.
  4. Confirme se a URL do Ollama está apontando para http://host.docker.internal:11434.

Pronto! Agora você pode selecionar qualquer modelo instalado no Ollama diretamente pela interface web e iniciar conversas de forma totalmente offline e segura.


Boas Práticas de Segurança para Ambientes Corporativos

Se você está implantando essa solução para uma equipe em rede local, adote as seguintes recomendações:

  • Isolamento de rede: Coloque o servidor que executa o Ollama e o Open WebUI em uma subnet/VLAN separada, sem rota de saída para a internet para o tráfego de inferência.
  • Desative o cadastro público: No painel do Open WebUI, desative a opção de novos cadastros automáticos para evitar que usuários não autorizados na rede local consumam recursos de processamento.
  • Criptografia em trânsito: Se o acesso ao Open WebUI for feito por outros computadores da rede local, configure um proxy reverso (como Nginx ou Caddy) com suporte a HTTPS/TLS para criptografar o tráfego interno.

Conclusão

A adoção de LLMs não precisa ser sinônimo de transferência de controle de dados para terceiros. A combinação entre Ollama e Open WebUI entrega uma solução moderna, robusta e intuitiva, mantendo todo o fluxo de informação estritamente sob o seu domínio e alinhado às melhores práticas de cibersegurança e privacidade.

Fique por dentro das novidades

Receba as principais notícias do DigitalTech por e-mail ou WhatsApp.

Você poderá cancelar a inscrição quando desejar.