LangChain modelos ollama

Básico
LangChain
LangChain
Actualizado: 02/12/2025

Qué es Ollama, instalación y uso de modelos

Ollama es una herramienta esencial para la ejecución local de modelos de lenguaje (LLMs). Permite correr modelos como Llama 4, Mistral o Phi directamente en tu ordenador, garantizando privacidad total de los datos y eliminando costes por uso de API.

Su diseño simplifica enormemente la gestión de modelos locales, funcionando de manera similar a Docker pero enfocado en IA. Es la solución estándar para desarrollo offline o cuando se maneja información confidencial que no debe salir de la infraestructura local.

Instalación de Ollama

El proceso de instalación es directo y varía ligeramente según el sistema operativo. Puedes descargar el instalador oficial desde ollama.com.

  • 1. Instalación:
    • macOS/Linux: Generalmente mediante terminal o gestor de paquetes.
    • Windows: Ejecutando el instalador .exe oficial.

Una vez instalado, Ollama funciona como un servicio en segundo plano que expone una API local en el puerto 11434.

  • 2. Verificación:

Abre tu terminal y comprueba que el servicio responde correctamente:

ollama --version

Descarga de modelos (Pull)

Ollama no incluye modelos por defecto; debes descargarlos según tus necesidades. El comando pull se encarga de bajar los pesos del modelo a tu máquina.

  • 1. Descargar Llama 4:
ollama pull llama4:8b

Este comando descarga la versión de 8 billones de parámetros de Llama 4, un modelo muy eficiente capaz de ejecutarse en la mayoría de portátiles modernos con GPU dedicada.

  • 2. Listar modelos disponibles:

Para ver qué modelos tienes ya instalados en tu sistema:

ollama list

Ejecución interactiva

Antes de integrarlo en código, puedes probar el modelo directamente desde la terminal para asegurar su funcionamiento.

ollama run llama4:8b "Explica qué es la recursividad en programación"

Invocar modelos de Ollama en LangChain

LangChain se integra con Ollama a través del paquete langchain-ollama, permitiendo usar tus modelos locales con la misma interfaz que los modelos en la nube de OpenAI o Anthropic.

Instalación del paquete

Necesitas instalar la librería de integración específica:

pip install langchain-ollama

Configuración con ChatOllama

La clase ChatOllama es el componente principal para interactuar con los modelos de chat. Se conecta automáticamente a tu instancia local de Ollama.

  • 1. Inicialización básica:
from langchain_ollama import ChatOllama

# Configura el modelo coincidiendo con el nombre del tag en Ollama
llm = ChatOllama(
    model="llama4:8b",
    temperature=0.7
)

Es crucial que el parámetro model coincida exactamente con el nombre del modelo que descargaste (por ejemplo, llama4:8b).

Invocación del modelo

El uso del modelo local sigue el estándar de LangChain, utilizando el método invoke.

  • 1. Invocación simple:
response = llm.invoke("¿Cuáles son los principios SOLID?")
print(response.content)
  • 2. Uso con mensajes estructurados:
from langchain_core.messages import HumanMessage, SystemMessage

messages = [
    SystemMessage(content="Eres un asistente experto en SQL."),
    HumanMessage(content="Escribe una query para obtener los usuarios activos.")
]

response = llm.invoke(messages)
print(response.content)

Parámetros avanzados

Puedes ajustar el comportamiento del modelo local configurando parámetros específicos de generación y rendimiento.

  • 1. Configuración detallada:
llm_avanzado = ChatOllama(
    model="llama4:8b",
    temperature=0.1,        # Más determinista
    num_predict=512,        # Máximo de tokens a generar
    top_k=10,              # Limitar opciones de tokens
    base_url="http://localhost:11434" # URL personalizada si es necesario
)

Embeddings con Ollama

Además de generación de texto, Ollama permite ejecutar modelos de embeddings localmente, lo cual es fundamental para aplicaciones RAG (Retrieval Augmented Generation) completamente privadas.

  • 1. Uso de OllamaEmbeddings:
from langchain_ollama import OllamaEmbeddings

embeddings = OllamaEmbeddings(
    model="nomic-embed-text"
)

vector = embeddings.embed_query("Texto para convertir a vector")
print(f"Dimensión del vector: {len(vector)}")

Asegúrate de haber hecho ollama pull nomic-embed-text previamente para tener el modelo de embeddings disponible.

Fuentes y referencias

Documentación oficial y recursos externos para profundizar en LangChain

Documentación oficial de LangChain
Alan Sastre - Autor del tutorial

Alan Sastre

Ingeniero de Software y formador, CEO en CertiDevs

Ingeniero de software especializado en Full Stack y en Inteligencia Artificial. Como CEO de CertiDevs, LangChain es una de sus áreas de expertise. Con más de 15 años programando, 6K seguidores en LinkedIn y experiencia como formador, Alan se dedica a crear contenido educativo de calidad para desarrolladores de todos los niveles.

Más tutoriales de LangChain

Explora más contenido relacionado con LangChain y continúa aprendiendo con nuestros tutoriales gratuitos.

Aprendizajes de esta lección

Instalar y configurar Ollama, usar ChatOllama para ejecutar modelos locales, seleccionar modelos apropiados según necesidades, entender las ventajas de ejecución local para privacidad y costes, y trabajar con la API local de Ollama.

Cursos que incluyen esta lección

Esta lección forma parte de los siguientes cursos estructurados con rutas de aprendizaje