AI e Langchain em Casa e Grátis: Notebook + Desktop Setup

Este texto é de 2025, por isso logo pode estar desatualizado 😅

A maior motivação aqui é compartilhar como fazer um setup em casa para aproveitar seu Desktop gamer com GPU para testar, desenvolver ou rodar aplicações que usam AI. Percebi essa demanda depois de ver meu MacBook fritando com o cooler no máximo ao rodar uma rede relativamente pequena no Ollama enquanto fazia um curso de AI.



Intro

Desenvolver código que consome LLMs pode ser um pouco complicado se você não tem acesso fácil a um cartão de crédito para pagar por serviços como Perplexity, ChatGPT, etc, ou pra consumir o Gemini do Google. Por isso, é interessante poder rodar uma LLM em casa, especialmente para aprendizado através de cursos.

A idéia aqui é usar a placa de vídeo de quem possui um desktop gamer mais moderno pra rodar a LLM e deixar ela acessivel na sua rede local, caso queira consumir do seu notebook ou até mesmo de um Raspberry Pi ou similar.

Ao final, um diagrama que representa o setup que queremos ter é algo assim:

Estou considerando que você já tenha WSL2 com Ubuntu instalado no seu Desktop Windows e que tenha conhecimento prévio do que é, como acessar, etc.



Ollama no WSL2

Instalar o Ollama no Ubuntu é extremamente simples. O comando abaixo basta:

 curl https://ollama.ai/install.sh | sh 


Depois, vamos iniciar o serviço aceitando conexões da LAN:

 OLLAMA_HOST=0.0.0.0 OLLAMA_ORIGINS=* ollama serve


Abrimos outra aba no terminal do WSL2 e baixamos um modelo. Eu vou usar o qwen2.5:14b pois minha GPU tem 12G de RAM e consegue trabalhar com esse tamanho, mas é necessário verificar quais modelos são compatíveis com sua placa.

 ollama pull qwen2.5:14b 


Inicializamos o modelo depois que a LLM terminar de baixar:

 ollama run qwen2.5:14b 

E agora estamos prontos para usar, tanto pelo terminal quanto remotamente.



Configurações de Rede (No Desktop)

Para que o Ollama esteja "visível"na sua rede local, primeiro descubra seu IP executando por exemplo o ifconfig no terminal do Ubuntu.

O WSL2 cria um ip interno, entre sua maquina virtual e o Windows, e esse nos vamos denominar SEU_IP_WSL2 para as partes a seguir.

Abra um terminal do Powershell no modo administrador para executar o código abaixo.

Vamos primeiro adicionar entradas no Windows Firewall para liberar o acesso à porta do Ollama:

New-NetFireWallRule -DisplayName 'WSL firewall unlock' -Direction Outbound -LocalPort 11434 -Action Allow -Protocol TCP

New-NetFireWallRule -DisplayName 'WSL firewall unlock' -Direction Inbound -LocalPort 11434 -Action Allow -Protocol TCP

Agora, precisamos adicionar uma regra de redirecionamento de tráfego para o IP do WSL2:

netsh interface portproxy add v4tov4 listenport=11434 listenaddress=0.0.0.0 connectport=11434 connectaddress=[SEU_IP_WSL2] 
Finalmente, rode um ipconfig no Powershell para pegar seu IP Windows (o que identifica seu Desktop na sua LAN), que será usado posteriormente e referenciado por SEU_IP_WINDOWS.


Usando com Langchain

Para acessar o Ollama usando Langchain, primeiro instalamos a dependência necessária com

pip install langchain-ollama

No código, importamos com:

from langchain_ollama import ChatOllama

E deixamos o host declarado como variável de ambiente:

OLLAMA_HOST=[SEU_IP_WINDOWS]:11434

Agora, basta instanciar a llm com

llm = ChatOpenAI(model="qwen2.5:14b")

Comentários

Top 3 em 1 ano: