LangChain modelos ollama

Intermedio
LangChain
LangChain
Actualizado: 09/07/2025

¡Desbloquea el curso completo!

IA
Ejercicios
Certificado
Entrar

Qué es ollama, instalación y pull de modelos

Ollama es una herramienta que permite ejecutar modelos de lenguaje grandes (LLMs) directamente en tu máquina local de forma sencilla y eficiente. A diferencia de los servicios en la nube como OpenAI, Ollama te permite trabajar con modelos de código abierto sin necesidad de conexión a internet ni costes por uso, manteniendo la privacidad de tus datos al procesar todo localmente.

La principal ventaja de Ollama radica en su simplicidad de uso. Convierte el proceso complejo de descargar, configurar y ejecutar modelos de IA en comandos simples, similar a como Docker simplifica el despliegue de aplicaciones. Esto lo convierte en una opción ideal para desarrollo, prototipado y casos de uso donde la privacidad es fundamental.

Instalación de Ollama

La instalación de Ollama varía según tu sistema operativo. 

En macOS y Linux, puedes instalarlo directamente desde la terminal:

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

Para Windows, descarga el instalador desde la página oficial de Ollama y ejecuta el archivo .exe. Una vez instalado, Ollama se ejecuta como un servicio en segundo plano, exponiendo una API REST en el puerto 11434 por defecto.

Para verificar que la instalación fue exitosa, ejecuta:

ollama --version

Este comando debería mostrar la versión instalada de Ollama, confirmando que está listo para usar:

Descarga y gestión de modelos

Ollama utiliza un sistema de gestión de modelos similar a Docker Hub. Los modelos se descargan bajo demanda y se almacenan localmente para su reutilización. Para descargar un modelo, utiliza el comando pull:

ollama pull llama3.2:3b

Este comando descarga el modelo Llama 3.2 en su versión de 3 mil millones de parámetros, que ofrece un buen equilibrio entre rendimiento y recursos necesarios. El formato modelo:tag permite especificar versiones concretas del modelo.

Algunos modelos recomendados para empezar incluyen:

  • llama3.2:3b - Modelo versátil y eficiente para tareas generales
  • phi3:mini - Modelo compacto de Microsoft, ideal para recursos limitados
  • qwen3:4b - Modelo multilingüe con buen soporte para español

Para ver los modelos disponibles localmente:

ollama list

Ejecución y prueba de modelos

Una vez descargado un modelo, puedes ejecutarlo interactivamente para verificar su funcionamiento:

ollama run llama3.2:3b

Esto inicia una sesión de chat donde puedes interactuar directamente con el modelo. Para salir de la sesión, escribe /bye o presiona Ctrl+C.

También puedes realizar consultas directas desde la línea de comandos:

ollama run llama3.2:3b "Explica qué es la programación funcional"

Invocar modelos de ollama en LangChain

Guarda tu progreso

Inicia sesión para no perder tu progreso y accede a miles de tutoriales, ejercicios prácticos y nuestro asistente de IA.

Progreso guardado
Asistente IA
Ejercicios
Iniciar sesión gratis

Más de 25.000 desarrolladores ya confían en CertiDevs

Para integrar Ollama con LangChain, necesitamos instalar el paquete específico que proporciona la interfaz entre ambas herramientas. LangChain mantiene integraciones separadas para diferentes proveedores de modelos, lo que permite una mejor modularidad y actualizaciones independientes.

Instalación de langchain-ollama

El primer paso es instalar el paquete langchain-ollama, que contiene las clases necesarias para conectar con el servidor de Ollama:

pip install langchain-ollama

Este paquete incluye tanto ChatOllama para modelos de chat como OllamaLLM para modelos de completado de texto. Para la mayoría de casos de uso modernos, utilizaremos ChatOllama ya que sigue el formato de mensajes estándar de LangChain.

Configuración básica con ChatOllama

La clase ChatOllama proporciona una interfaz consistente para interactuar con modelos ejecutándose en Ollama. La configuración básica requiere especificar el modelo que queremos utilizar:

from langchain_ollama import ChatOllama

# Configuración del modelo
llm = ChatOllama(
    model="llama3.2:3b",
    temperature=0.7
)

El parámetro model debe coincidir exactamente con el nombre del modelo que descargaste previamente con ollama pull. El parámetro temperature controla la creatividad de las respuestas, donde valores más altos generan respuestas más variadas.

Invocación directa del modelo

Una vez configurado el modelo, puedes invocarlo directamente utilizando el método invoke(), que es la forma estándar en LangChain 0.3:

from langchain_core.messages import HumanMessage

# Crear un mensaje
mensaje = HumanMessage(content="¿Cuáles son las ventajas de Python para ciencia de datos?")

# Invocar el modelo
respuesta = llm.invoke([mensaje])
print(respuesta.content)

El método invoke() acepta una lista de mensajes y devuelve un objeto AIMessage que contiene la respuesta del modelo. Esta aproximación es compatible con el sistema de mensajes de LangChain y permite construir conversaciones más complejas.

Ejemplo:

Configuración de parámetros avanzados

ChatOllama permite configurar varios parámetros que afectan el comportamiento del modelo:

llm = ChatOllama(
    model="llama3.2:3b",
    temperature=0.3,
    top_p=0.9,
    top_k=40,
    repeat_penalty=1.1,
    base_url="http://localhost:11434"
)
  • temperature: Controla la aleatoriedad (0.0 = determinista, 1.0 = muy creativo)
  • top_p: Muestreo nucleus, limita las opciones consideradas
  • top_k: Número máximo de tokens candidatos a considerar
  • repeat_penalty: Penaliza la repetición de tokens
  • base_url: URL del servidor Ollama (útil si no usa el puerto por defecto)

Embeddings en ollama

Más adelante en RAG exploraremos qué son los embeddings, pero por adelantar, permiten obtener una representación vectorial de un texto. Ollama también permite ejecutar este tipo de modelos de Embeddings:

Aprendizajes de esta lección

  • Comprender qué es Ollama y sus ventajas para ejecutar modelos de lenguaje localmente.
  • Aprender a instalar Ollama y descargar modelos específicos.
  • Configurar y ejecutar modelos Ollama desde la línea de comandos.
  • Integrar modelos Ollama con LangChain mediante el paquete langchain-ollama.
  • Utilizar funcionalidades avanzadas como manejo de conversaciones, streaming y configuración de parámetros en LangChain.

Completa LangChain y certifícate

Únete a nuestra plataforma y accede a miles de tutoriales, ejercicios prácticos, proyectos reales y nuestro asistente de IA personalizado para acelerar tu aprendizaje.

Asistente IA

Resuelve dudas al instante

Ejercicios

Practica con proyectos reales

Certificados

Valida tus conocimientos

Más de 25.000 desarrolladores ya se han certificado con CertiDevs

⭐⭐⭐⭐⭐
4.9/5 valoración