Tamanho de fonte
Alto contraste
Altura de linha

Como Utilizar Ollama via LangChain: Um Guia para Iniciantes

Avatar de Renata Lopes Renata Lopes
6 minutos de leitura 3 meses atrás

Se você está começando a explorar o mundo dos Modelos de Linguagem de Grande Escala (LLMs) e quer aprender a utilizar Ollama com LangChain, você está no lugar certo! Neste guia, vamos abordar desde a instalação e configuração até o uso avançado dessas ferramentas poderosas. Vamos lá!

Introdução

O que são LLMs (Large Language Models)?

LLMs, ou Modelos de Linguagem de Grande Escala, são modelos de inteligência artificial treinados em vastas quantidades de texto. Eles são capazes de entender e gerar texto de maneira muito semelhante à humana, sendo utilizados em diversas aplicações, desde chatbots até geração de conteúdo.

O que é Ollama?

Ollama é uma ferramenta que permite rodar LLMs de código aberto localmente. Isso significa que você pode utilizar modelos como Llama 2 e Mistral diretamente no seu computador, sem depender de APIs externas.

O que é LangChain?

LangChain é um framework que facilita a integração de LLMs em aplicações. Ele oferece uma linguagem expressiva para encadear operações e suporta uma ampla gama de modelos de chat, incluindo Ollama.

Por que usar Ollama com LangChain?

Usar Ollama com LangChain oferece uma combinação poderosa e flexível para quem deseja aproveitar o potencial dos Modelos de Linguagem de Grande Escala (LLMs) de forma personalizada e econômica. Ollama permite rodar LLMs de código aberto localmente, eliminando a necessidade de depender de APIs externas, o que pode reduzir custos e aumentar a privacidade dos dados. Por outro lado, LangChain facilita a integração desses modelos em aplicações, oferecendo uma série de abstrações que simplificam o desenvolvimento e permitem a criação de aplicações robustas com menos esforço. Juntos, Ollama e LangChain proporcionam uma solução eficiente e adaptável para diversas necessidades de processamento de linguagem natural.

Configurando o Ollama

Requisitos de sistema

Antes de começar, certifique-se de que seu sistema atende aos requisitos necessários para rodar o Ollama. Você precisará de um sistema operacional compatível, como macOS ou Linux, e de recursos suficientes de CPU e GPU para rodar os modelos.

Instalando Ollama no macOS

Para instalar Ollama no macOS, você pode utilizar o Homebrew, que simplifica o processo de instalação de softwares. Primeiro, certifique-se de ter o Homebrew instalado no seu sistema. Em seguida, abra o terminal e execute o comando:

brew install ollama
brew services start ollama

Verificando a instalação

Após a instalação, Ollama escutará na porta 11434 para requisições. Você pode verificar se a instalação foi bem-sucedida navegando até http://localhost:11434/ no seu navegador.

Baixando modelos LLM com Ollama

Para baixar e configurar um modelo LLM, use o comando ollama pull:

ollama pull llama2

Este comando fará o download do modelo e otimizará os detalhes de configuração, incluindo o uso da GPU.

Executando modelos com Ollama

Usando a linha de comando para interagir com modelos

Você pode interagir com os modelos diretamente pela linha de comando usando o comando ollama run:

ollama run llama2

Enviando requisições JSON para a API do Ollama

Outra forma de interagir com os modelos é enviando requisições JSON para a API do Ollama:

curl http://localhost:11434/api/generate -d '{ "model": "llama2", "prompt":"Why is the sky blue?" }'

Integrando Ollama com LangChain

Instalando LangChain e suas dependências

Para começar a usar LangChain, você precisará instalar o framework e suas dependências:

pip install langchain

Importando módulos necessários

No seu script Python, importe os módulos necessários:

from langchain_community.chat_models import ChatOllama

Inicializando uma instância do modelo Ollama

Inicialize uma instância do modelo Ollama:

chat = ChatOllama(model="llama2")

Exemplo básico de uso do Ollama com LangChain

Aqui está um exemplo básico de como usar o Ollama para gerar uma resposta a um prompt:

response = chat.invoke("Conte uma piada")
print(response)

Uso avançado do Ollama com LangChain

Utilizando lista de mensagens

Para aplicações que envolvam uma conversação, você pode utilizar a lógica de lista de mensagens do LangChain:

from langchain_core.messages import HumanMessage, SystemMessage

messages = [
    SystemMessage(content="Você é um assistente útil."),
    HumanMessage(content="O que acontece quando uma força imparável encontra um objeto inamovível?")
]

response = chat.invoke(messages)
print(response)

Streaming de respostas

Para aplicações que requerem interação em tempo real, você pode usar o streaming de respostas:

from langchain_core.messages import HumanMessage, SystemMessage

messages = [
    SystemMessage(content="Você é um assistente útil."),
    HumanMessage(content="O que acontece quando uma força imparável encontra um objeto inamovível?")
]

response_stream = chat.stream(messages)
for stream in response_stream:
    print(stream.content, end='', flush=True)

Usando templates de prompt

Você também pode usar templates de prompt para operações mais complexas:

from langchain_core.output_parsers import StrOutputParser
from langchain.prompts import ChatPromptTemplate

template = ChatPromptTemplate.from_messages([
    ('system', 'Você é um assistente útil.'),
    ('human', 'Crie uma piada sobre {topico}')
    ]
)
response = template | chat | StrOutputParser()
print(response.invoke({"topico": "espaço"}))

Resolução de problemas comuns

Problema: “Ollama não está respondendo na porta 11434”

Solução: Verifique se o serviço do Ollama está rodando corretamente. Você pode reiniciar o serviço com o comando:

brew services restart ollama

Problema: “Erro ao baixar modelos com ollama pull

Solução: Certifique-se de que você está conectado à internet e que possui espaço suficiente em disco. Tente novamente após verificar essas condições.

Problema: “LangChain não consegue se conectar ao Ollama”

Solução: Verifique se o Ollama está rodando e escutando na porta correta. Além disso, certifique-se de que você importou e configurou corretamente os módulos no seu script Python.

Conclusão

Neste guia, você aprendeu como configurar e utilizar Ollama com LangChain, desde a instalação até o uso avançado. Essa combinação poderosa permite que você aproveite o potencial dos LLMs de forma flexível e personalizada. Continue explorando e experimentando para descobrir todas as possibilidades que essas ferramentas oferecem!

Se você quiser aprender mais sobre LLMs e outras ferramentas de IA, confira nossos outros artigos e tutoriais no blog da Asimov Academy.

Referências

Imagem de um notebook

Cursos de programação gratuitos com certificado

Aprenda a programar e desenvolva soluções para o seu trabalho com Python para alcançar novas oportunidades profissionais. Aqui na Asimov você encontra:

  • Conteúdos gratuitos
  • Projetos práticos
  • Certificados
  • +20 mil alunos e comunidade exclusiva
  • Materiais didáticos e download de código
Inicie agora

Comentários

Comentar
Faça parte da discussão Crie sua conta gratuita e compartilhe
sua opinião nos comentários
Entre para a Asimov