En el contexto de la Inteligencia Artificial Generativa (IA-Gen), los LLMs como GPT y los servicios como LlamaIndex y LangChain están transformando la manera en que se interactúa con datos y se automatizan los procesos. En este post, trataré de mostrar qué son estas tecnologías, sus características principales y cuándo será conveniente utilizar una u otra. Lógicamente existen otras muchas más alternativas, pero creo que estos tres pueden resumir más o menos de una manera cercana a la realidad el ecosistema actual. Antes de continuar leyendo este post, te recomiendo que eches un vistazo también a este otro: «Desarrollo de aplicaciones LLM utilizando LangChain y el modelo de lenguaje Cohere«. ¡Empezamos!

Comparativa genérica


SERVICIO CATEGORÍA FUNCIONALIDAD CASOS DE USO
LlamaIndex Marco de Recuperación de Datos e Indexación Ayuda a conectar modelos de lenguaje con datos externos organizándolos y recuperándolos eficientemente.
  • Creación de índices para datos estructurados y no estructurados.
  • Sistemas de generación aumentada por recuperación (RAG).
GPTs Modelo de Lenguaje de Propósito General (LLM) Modelo fundamental para tareas de comprensión y generación de lenguaje natural.
  • Generación y completado de texto.
  • Aprendizaje con pocos ejemplos (few-shot) y sin ejemplos (zero-shot).
  • Razonamiento general y creatividad.
LangChain Marco de Orquestación de LLM Gestiona flujos de trabajo que involucran LLMs, herramientas externas y tareas de múltiples pasos.
  • Gestión de cadenas para interacciones con LLM.
  • Integración con APIs, bases de datos y almacenes vectoriales.
  • Memoria conversacional para interacciones con estado.


GPTs

Son modelos de lenguaje de propósito general capaces de realizar una amplia gama de tareas, desde generación de texto hasta razonamiento, únicamente basándose en el conocimiento adquirido durante su preentrenamiento.

  • Aprendizaje sin contexto. Se adaptan a tareas con pocos ejemplos (few-shot) o sin necesidad de ejemplos previos (zero-shot). Gracias a su entrenamiento en datos diversos, ofrecen un rendimiento sólido sin necesidad de contexto adicional.
  • Creatividad. Son ideales para generar texto fluido y creativo.
  • APIs accesibles. Pueden integrarse fácilmente en aplicaciones mediante APIs.

Cuándo usarlos …

  • Buscas una solución rápida y generalizada para tareas como completar texto, conversaciones o resúmenes.
  • No necesitas incorporar dinámicamente conocimientos externos.

Ejemplos de uso

  • Redacción creativa, como historias o generación de ideas.
  • Escribir o reformular correos electrónicos o ensayos.
  • Crear un asistente conversacional para consultas informales.
Tienda de GPTs

Marketplace de GPTs.

LlamaIndex

Es un framework diseñado para potenciar modelos de lenguaje grandes (LLMs) como GPT, permitiéndoles recuperar y sintetizar información de fuentes de datos externas, como bases de datos, documentos, APIs o repositorios de conocimiento. Facilita la creación de un flujo de trabajo RAG (generación aumentada con recuperación) al estructurar los datos en índices que el modelo puede consultar de forma interactiva.

  • Integración de datos: Se conecta sin problemas a fuentes de datos estructuradas y no estructuradas (archivos de texto, bases de datos SQL, archivos CSV, entre otros).
  • Creación de índices: Ofrece técnicas de indexación especializadas, como índices basados en árboles, listas o palabras clave, para optimizar la recuperación de información.
  • Contexto ajustado dinámicamente: Permite inyectar el contexto adecuado para los LLMs de forma dinámica durante la inferencia.
  • Escalabilidad: Ideal para grandes conjuntos de datos, siendo una excelente opción para tareas que requieran consultas a datos externos.

Cuándo usarlo …

  • Necesitas procesar y consultar grandes volúmenes de datos externos.
  • Tu aplicación requiere inyectar dinámicamente contexto externo en las respuestas de GPT.

Ejemplos de uso …

  • Crear un chatbot que consulte documentos de políticas de una empresa.
  • Resumir y analizar datos provenientes de una base de datos de investigación.
  • Construir un sistema de preguntas y respuestas para FAQs almacenadas en múltiples formatos.
Estructura para simplificar RAG con LlamaIndex y PostgreSQL

Estructura para simplificar RAG con LlamaIndex y PostgreSQL.

LangChain

Es un framework que facilita el desarrollo de aplicaciones impulsadas por LLMs. Su enfoque está en encadenar múltiples interacciones con estos modelos, integrando herramientas externas y gestionando flujos de trabajo complejos.

  • Gestión de cadenas: Permite construir cadenas de prompts, donde las salidas de una consulta pueden alimentar a la siguiente.
  • Integración con herramientas: Compatible con APIs, bases de datos y almacenes vectoriales (como Pinecone o Weaviate).
  • Gestión de memoria: Conserva el contexto a lo largo de las interacciones, ideal para conversaciones más largas.
  • Versatilidad: Maneja flujos de trabajo complejos que combinan recuperación de información, razonamiento y procesamiento en múltiples pasos.

Cuándo usarlo …

  • Necesitas un framework para orquestar flujos de trabajo complejos con LLMs.
  • Tu aplicación requiere herramientas adicionales, memoria a largo plazo o integración con bases de datos vectoriales.

Ejemplos de uso …

  • Un chatbot de múltiples pasos que combine recuperación de documentos y razonamiento.
  • Automatización de tareas como resumir un documento y enviar un correo con los puntos clave.
  • Crear aplicaciones que combinen recuperación (con LlamaIndex u otros almacenes vectoriales) y generación de texto.
Framework de LangChain compuesto por librerías open-source

Framework de LangChain compuesto por librerías open-source.

Casos de uso

 

Escenario Herramienta Recomendada
Tareas generales de generación de texto GPTs
Incorporación de conjuntos de datos externos LlamaIndex
Encadenar múltiples herramientas o flujos de trabajo LangChain
Construcción de un chatbot con recuperación dinámica de contexto LlamaIndex (para indexación y recuperación) + GPTs (para generación de respuestas)
Orquestación de extremo a extremo de aplicaciones impulsadas por LLM LangChain (como marco central)
Escalar tareas aumentadas por recuperación con índices personalizados LlamaIndex
Tarea única, configuración mínima necesaria GPTs

 

Ahora solo queda integrar y comprobar cuál es el servicio que mejor se adapta a las necesidaddes de tu negocio. Elegir cuál es el más óptimo no es una tarea sencilla, por eso lo primero de todo es conocer para qué sirve cada uno de ellos. Si quieres seguir aprendiendo sobre este tipo de servicios, te invito a que visites el resto de artículos de mi Blog. ¡Nos vemos en el siguiente artículo!

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *