LangChain para Dummies: Guía Completa desde la Instalación hasta su Utilización

Jaime Hernández
4 min readAug 5, 2024

--

En esta guía, vamos a explorar LangChain, una poderosa biblioteca de Python para la creación y manejo de flujos de trabajo de IA. Si eres nuevo en este campo, no te preocupes, te llevaremos paso a paso desde la instalación hasta su utilización con ejemplos prácticos. ¡Empecemos!

¿Qué es LangChain?

LangChain es una biblioteca de Python diseñada para facilitar la integración de modelos de lenguaje en aplicaciones. Permite a los desarrolladores crear flujos de trabajo complejos utilizando modelos de lenguaje de manera sencilla y modular. Para obtener más información, puedes visitar la introducción oficial de LangChain.

Instalación de LangChain

Lo primero que necesitamos es instalar LangChain. Puedes hacerlo utilizando pip, el gestor de paquetes de Python. Abre tu terminal y ejecuta el siguiente comando:

pip install langchain

Configuración Inicial

Una vez instalada la biblioteca, podemos comenzar a configurar nuestro entorno de trabajo. Asegúrate de tener una versión actualizada de Python instalada y un editor de texto como Visual Studio Code o PyCharm.

Conceptos Básicos

1. Creación de un Prompt

Un prompt es una entrada que damos al modelo de lenguaje para obtener una respuesta. Aquí está el código para crear un prompt básico:

from langchain.prompts import Prompt
# Definir un prompt básico
prompt = Prompt(
template="¿Qué es la inteligencia artificial?",
variables=[]
)
# Generar el texto del prompt
prompt_text = prompt.generate({})
print(prompt_text)

Este código crea un prompt con una pregunta simple sobre inteligencia artificial. La variable template contiene el texto del prompt y variables es una lista de variables que podríamos querer sustituir, en este caso, está vacía. Para más detalles sobre los conceptos detrás de LangChain, visita la sección de conceptos oficiales.

2. Uso de un Modelo de Lenguaje

Para generar respuestas, necesitamos un modelo de lenguaje. LangChain es compatible con muchos modelos de lenguaje, incluidos los de OpenAI. A continuación, te mostramos cómo puedes utilizar uno de estos modelos.

Primero, asegúrate de tener una clave API de OpenAI. Luego, usa el siguiente código:

from langchain.models import LanguageModel
# Definir el modelo de lenguaje
model = LanguageModel.from_pretrained("openai/gpt-4o")
# Generar una respuesta utilizando el modelo
response = model.generate(prompt_text)
print(response)

Este código define un modelo de lenguaje utilizando OpenAI GPT-4o y genera una respuesta para nuestro prompt.

Ejemplos Avanzados

Ahora que ya tenemos una idea básica, veamos algunos ejemplos más avanzados de cómo podemos utilizar LangChain en diferentes contextos.

Salud: Diagnóstico Médico

from langchain.prompts import Prompt
# Definir un prompt avanzado para diagnóstico médico
prompt = Prompt(
template="Eres un médico experto en {specialty}. Un paciente presenta los siguientes síntomas: {symptoms}. ¿Cuál podría ser el diagnóstico?",
variables=["specialty", "symptoms"]
)
# Usar el prompt con variables específicas
prompt_text = prompt.generate({"specialty": "neurología", "symptoms": "dolor de cabeza intenso, visión borrosa y mareos"})
print(prompt_text)

Retail: Descripciones de Productos

from langchain.prompts import TemplatePrompt
# Definir una plantilla de prompt para descripciones de productos
template_prompt = TemplatePrompt(
template="Crea una descripción atractiva para el siguiente producto:\n\nNombre: {product_name}\nCaracterísticas: {features}\nDescripción:",
variables=["product_name", "features"]
)
# Usar la plantilla de prompt con un producto específico
product_name = "Zapatos Deportivos"
features = "ligeros, cómodos, suela antideslizante, diseño moderno"
prompt_text = template_prompt.generate({"product_name": product_name, "features": features})
print(prompt_text)

Para aprender más sobre la creación de templates de prompts, revisa la documentación sobre prompt templates.

Mesa de Ayuda: Respuestas Automatizadas

LangChain facilita la creación de flujos de trabajo complejos para mesas de ayuda, automatizando respuestas a preguntas frecuentes. Aquí tienes un ejemplo de un flujo de trabajo simple:

from langchain.workflows import Workflow
from langchain.models import LanguageModel
# Definir un modelo de lenguaje
model = LanguageModel.from_pretrained("openai/gpt-3")
# Crear un flujo de trabajo que utiliza el modelo de lenguaje
workflow = Workflow(
steps=[
{"action": model.generate, "input": {"prompt": "Responde a la siguiente pregunta frecuente: ¿Cómo puedo restablecer mi contraseña?"}},
{"action": lambda x: x.capitalize(), "input": {"text": "$output"}}
]
)
# Ejecutar el flujo de trabajo
result = workflow.run()
print(result)

Compatibilidad con Pydantic

LangChain también es compatible con Pydantic, una biblioteca que ayuda a definir y validar datos. Esta compatibilidad facilita la creación de aplicaciones robustas y confiables. Para más detalles, visita la guía de compatibilidad con Pydantic.

Conclusión

LangChain es una herramienta poderosa y flexible que facilita la creación y manejo de flujos de trabajo de IA. Desde prompts simples hasta flujos de trabajo complejos, LangChain te permite integrar modelos de lenguaje en tus aplicaciones de manera eficiente.

En codeIA.cl, somos expertos en inteligencia artificial y procesamiento del lenguaje natural. Podemos ayudarte a implementar y optimizar soluciones basadas en LangChain para llevar tu empresa al siguiente nivel. Contáctanos para más información y descubre cómo podemos transformar tus ideas en realidad utilizando LangChain y otras tecnologías de inteligencia artificial.

¡Esperamos que esta guía te haya sido útil! Si tienes alguna pregunta o necesitas asistencia, no dudes en comunicarte con nosotros. ¡Estamos aquí para ayudarte!

--

--