Entre la miríada de herramientas y marcos disponibles, LangChain destaca como una plataforma innovadora que permite a los desarrolladores aprovechar todo el potencial de los modelos lingüísticos.
En este mundo en rápida evolución de la inteligencia artificial (IA), mantenerse a la vanguardia requiere algo más que conocimientos teóricos: exige experiencia práctica.
Este artículo se sumerge en las aplicaciones prácticas de LangChain utilizando Python, proporcionando tutoriales paso a paso que destacan su importancia en la era de la IA.
Mediante la integración de LangChain con Ollama, demostraremos cómo ejecutar localmente grandes modelos lingüísticos (LLM), ahorrando costes y evitando problemas de conexión.
Tanto si eres un desarrollador experimentado como si eres nuevo en la IA, esta guía te ofrece valiosos conocimientos y ejemplos prácticos para ayudarte a dominar LangChain y dar forma al futuro del desarrollo de la IA.
Si tu quieres aprender más acerca de Inteligencia Artificial puedes visitar el curso AQUI
Configuración del entorno
Antes de sumergirnos en los ejemplos, vamos a configurar nuestro entorno. Necesitarás Python instalado en tu sistema.
Para ello te dejo el siguiente articulo
Si eres nuevo en Python, espero que el siguiente artículo te ponga al día:
Instalando Ollama y Comunicándose con Diferentes LLMs, Localmente:
Usaremos Ollama y ejecutaremos LLMs localmente para evitar gastos y problemas de conexión. Sigue el siguiente artículo para configurar Ollama y comunicarse con el LLM
Después de la instalación, sigue el siguiente artículo para crear una función LangChain que se comunique con múltiples LLMs.
Deberías poder comunicarte con un LLM local utilizando el siguiente comando:
from langchain_community.llms import Ollamadefchat_with(llm, prompt):return llm.invoke(prompt) phi3_llm = Ollama(model='phi3:3.8b')response = chat_with(phi3_llm, "tell me a joke")from pprint import pprintpprint(response)
Ahora, divirtámonos con LangChain y los LLM locales
Plantillas de avisos
Una plantilla de aviso en LangChain es una forma estructurada de crear avisos que se envían al modelo de lenguaje. Te permite definir una plantilla con marcadores de posición que pueden ser rellenados con valores dinámicos en tiempo de ejecución.
Esto ayuda a reutilizar los avisos y garantiza la coherencia en la forma en que se estructuran los avisos. En el siguiente artículo se explican las plantillas de avisos con ejemplos:
Uso de cadenas
Uno de los componentes principales de LangChain es el concepto de "cadenas", que permite a los desarrolladores crear secuencias de operaciones que procesan entradas y salidas de forma estructurada.
Memoria LangChain
LangChain proporciona utilidades para añadir memoria a los sistemas de IA conversacional, lo que les permite referirse a información introducida anteriormente en la conversación. Esto es esencial para crear aplicaciones interactivas y conscientes del contexto.
Aquí exploraremos cómo utilizar la memoria LangChain con sencillos ejemplos en Python.
Herramientas LangChain
LangChain proporciona varias herramientas que pueden integrarse en las aplicaciones para permitir la interacción con diferentes fuentes de datos y API. Estas herramientas se definen con un nombre, descripción, esquema de entrada, función a llamar, y si el resultado debe ser devuelto directamente al usuario.
A continuación, exploraremos algunas de estas herramientas con ejemplos sencillos en Python utilizando LangChain y el modelo Ollama.
Agentes LangChain:
Los agentes LangChain te permiten crear aplicaciones dinámicas e interactivas aprovechando los LLM para manejar diversas tareas de forma autónoma.
El siguiente artículo explorará los agentes LangChain y proporcionará ejemplos Python fáciles de seguir para ayudarte a empezar a usar Ollama y Llama3.
Agentes Langchain con herramientas personalizadas:
El siguiente artículo explorará cómo mejorar los agentes LangChain con herramientas personalizadas, usando un ejemplo de Python para obtener mi apellido, que el LLM no puede responder sin una herramienta.
Demostraremos el comportamiento del agente antes y después de añadir la herramienta personalizada, aprovechando el modelo Llama3 de Ollama como nuestro modelo de lenguaje.
Agentes LangChain con StructuredTools
personalizados
LangChain proporciona un marco versátil para construir y desplegar agentes de modelos lingüísticos, facilitando a los desarrolladores el aprovechamiento de la potencia de los grandes modelos lingüísticos (LLM) en diversas aplicaciones.
Una de las características destacables de LangChain es el uso de StructuredTools
, que permite interacciones más estructuradas y fiables con los LLM. En el siguiente artículo, profundizaremos en cómo se pueden mejorar los agentes LangChain con StructuredTools, utilizando un ejemplo práctico para ilustrar el proceso.
LangGraph
LangGraph es un módulo innovador construido sobre LangChain, diseñado para crear gráficos cíclicos para tiempos de ejecución de agentes de IA. Proporciona la flexibilidad necesaria para implementar comportamientos similares a los de una máquina de estados, mejorando los procesos de toma de decisiones.
Esta guía introducirá las características clave de LangGraph y demostrará su aplicación a través de sencillos ejemplos en Python, apoyados por diagramas.
Cómo utilizamos LangChain en Clearwater Analytics:
En el siguiente artículo se explica cómo utilizamos LangChain y Agents en Clearwater Analytics