La orquestación de LLM ayuda a dar instrucciones, encadenar, gestionar y monitorizar modelos de lenguaje de gran tamaño (LLM). La orquestación de LLM está impulsada por marcos de orquestación. Estos marcos son herramientas integrales que agilizan la construcción y gestión de aplicaciones impulsadas por LLM.
Las LLMOps utilizan la orquestación en una amplia gama de aplicaciones, como la generación de lenguaje natural, la traducción automática, la toma de decisiones y los chatbots. A medida que las organizaciones adoptan la inteligencia artificial para crear este tipo de aplicaciones de IA generativa, la orquestación eficiente de LLM es crucial.
Por muy poderoso que sea el modelo fundacional de un LLM, los LLM tienen limitaciones en cuanto a lo que pueden lograr por sí solos. Por ejemplo, los LLM carecen de la capacidad de retener o aprender nueva información en tiempo real y tienen dificultades para completar problemas de varios pasos porque están limitados en lo que pueden retener del contexto1. Además, la coordinación de numerosos LLM puede complicarse rápidamente al tener que lidiar con las interfaces de programación de aplicaciones (API) de los distintos proveedores de LLM.
Los marcos de orquestación de LLM compensan estas limitaciones al simplificar los complejos procesos de integración de prompt engineering, la interacción de API, la recuperación de datos y la gestión de estados en conversaciones con modelos de lenguaje2.
Cada día se desarrollan y ganan popularidad nuevos marcos de orquestación de LLM. Algunas orquestaciones de LLM se especializan como marcos de configuración o de bases de datos, mientras que otras utilizan agentes de IA para colaborar en la realización de tareas u objetivos.
Para entender cómo funcionan los marcos de orquestación LLM, es útil comprender dónde se sitúa la orquestación dentro de la arquitectura de las aplicaciones impulsadas por LLM.
La capa de orquestación es la columna vertebral de la pila de aplicaciones de LLM. El orquestador crea un flujo de trabajo coherente mediante la gestión de las interacciones entre las demás capas de la arquitectura de la aplicación3. De forma similar a un orquestador musical, el orquestador de LLM delega y gestiona el flujo de trabajo de cada componente técnico en función de la composición de la aplicación.
Estos componentes incluyen la interacción entre LLM, las plantillas de instrucciones, las bases de datos vectoriales y los agentes4. La orquestación garantiza que cada componente de una aplicación de IA generativa funcione de forma coherente al proporcionar herramientas y mecanismos para gestionar el ciclo de vida de los LLM de forma eficaz en varias aplicaciones y entornos.
Los marcos de orquestación simplifican tareas complejas, como el encadenamiento de instrucciones, la interacción con API externas, la obtención de datos contextuales de bases de datos vectoriales y la gestión de la memoria a través de múltiples interacciones de LLM. A continuación se ofrece un resumen de las tareas operativas que se utilizan normalmente en las orquestaciones de LLM:
El prompt engineering es la práctica de estructurar las entradas de LLM (instrucciones) para que las herramientas de IA generativa produzcan resultados optimizados. Los marcos de orquestación proporcionan plantillas de instrucciones que incluyen instrucciones, ejemplos breves y contexto específico, así como preguntas adecuadas para una tarea5.
El encadenamiento se refiere a una secuencia de llamadas que conectan varios LLM para combinar sus salidas y lograr resultados más matizados (también conocido como encadenamiento de instrucciones), una herramienta o un paso de preprocesamiento de datos6.
La capa de orquestación gestiona estas tareas de prompting almacenando las instrucciones en una base de conocimientos o biblioteca en la que puede buscar y recuperar fácilmente los datos de prompting. El orquestador puede seleccionar de forma dinámica las instrucciones de la biblioteca en función de las entradas en tiempo real, el contexto o las preferencias del usuario. Además, puede secuenciar los avisos en un orden lógico para gestionar los flujos de conversación.
Los LLM carecen de la capacidad inherente de aprender de forma continua y están limitados en la comprensión contextual. Mediante la gestión de las instrucciones, el orquestador refina los resultados mediante la evaluación de las respuestas.
Los LLM tampoco pueden verificar los hechos por sí mismos, lo que provoca alucinaciones si no se gestionan. El orquestador puede comprobar las respuestas y asegurarse de que cumplen las directrices personalizadas. Si una respuesta se queda corta, el orquestador puede marcarla para su revisión humana o hacer sugerencias alternativas que permitan al LLM aprender y mejorar7.
La mayoría de los marcos de orquestación de LLM incluyen algún tipo de LLMOps para la monitorización operativa. Estas características incluyen la recopilación de métricas de rendimiento basadas en las pruebas de referencia de LLM. Estas métricas pueden observarse a través de paneles de control que permiten a los usuarios mantenerse al día con las métricas de rendimiento de los LLM en tiempo real.
Otros recursos de LLMOps incluyen herramientas de diagnóstico para el análisis de la causa raíz (RCA), que reducen el tiempo que se tarda en depurar.
El orquestador facilita el acceso a datos y su recuperación de las fuentes identificadas mediante el uso de conectores o API adecuados. El preprocesamiento se refiere a la conversión de datos sin procesar procedentes de múltiples fuentes en un formato adecuado para el LLM. Cuanto mayor sea una recopilación de datos, más sofisticado deberá ser el mecanismo que los analice. El preprocesamiento garantiza que los datos se adapten a los requisitos planteados por cada algoritmo de minería de datos8. Los orquestadores pueden facilitar el preprocesamiento al ajustar y refinar los datos para hacerlos más valiosos.
El orquestador inicia el LLM para ejecutar su tarea asignada. Una vez que se completa el procesamiento, el orquestador recibe el resultado del modelo e integra cualquier mecanismo de feedback para evaluar su calidad general y lo entrega al destino apropiado.
El orquestador contiene almacenes de memoria que actúan como base de conocimientos para mejorar los resultados e interacciones de LLM y proporcionar una comprensión contextual. Al gestionar y almacenar mensajes o entradas anteriores, el orquestador acumula conocimientos a largo plazo que proporcionan respuestas más precisas basadas en interacciones pasadas9.
El orquestador es responsable de facilitar la implementación de las características de observabilidad de LLM y los marcos de protección. Desde una perspectiva de LLMOps, los LLM que funcionan sin estas capacidades corren el riesgo de producir resultados erróneos y de correr riesgos de seguridad basados en las limitadas capacidades de los LLM que no están bien ajustados.
Los marcos de orquestación de LLM proporcionan la gestión y la optimización necesarias para agilizar las interacciones y los flujos de trabajo de LLM para mejorar las LLMOps.
Los desarrolladores de aplicaciones tienen la opción de adoptar las soluciones emergentes o montar las suyas propias desde cero. Elegir el marco de orquestación de LLM adecuado requiere una planificación y una estrategia cuidadosas.
Aspectos a tener en cuenta antes de elegir un marco de orquestación de LLM:
Compruebe la documentación de la API del marco de trabajo y asegúrese de que es útil y permite a los desarrolladores empezar a trabajar fácilmente. Compruebe también los recursos de la comunidad del marco de trabajo para calibrar el tipo de soporte para la resolución de problemas que se ofrece.
Evalúe las implicaciones económicas de adoptar diferentes marcos. Muchos marcos de orquestación de LLM son de código abierto con una opción empresarial de pago. Asegúrese de que el modelo de precios funcione no solo con la inversión inicial, sino también con los gastos continuos, como licencias, actualizaciones y servicios de soporte. Un marco rentable ofrece un equilibrio entre el precio y las características que proporciona.
Al elegir el LLM correcto, compruebe las características de seguridad, como el cifrado, los controles de acceso y los registros de auditoría, que proporcionan seguridad de datos y ayudan a proteger los suyos y a cumplir con la normativa de privacidad pertinente.
Solicite información sobre las herramientas de monitorización y gestión. Entre ellas se incluyen características para el seguimiento de métricas como los tiempos de respuesta, la precisión y el uso de recursos.
He aquí algunos marcos de orquestación conocidos y emergentes:
IBM watsonx Orchestrate utiliza el procesamiento del lenguaje natural (PLN) para acceder a una amplia gama de habilidades de machine learning. El marco de IBM consta de miles de aplicaciones y habilidades prediseñadas, incluido un creador de asistentes de IA y un estudio de habilidades.
Los casos de uso incluyen ayudar a los departamentos de recursos humanos proporcionándoles las herramientas necesarias para incorporar y prestar apoyo a las nuevas contrataciones y potenciar los equipos de compras y ventas.
Un marco de código abierto basado en Python para crear aplicaciones de LLM. LangChain se compone de varias bibliotecas de código abierto que proporcionan una interfaz flexible con los principales componentes de las aplicaciones de LLM, como modelos de incrustación, LLM, almacenes de vectores, recuperadores y mucho más11.
Los casos de uso integrales más habituales de LangChain incluyen cadenas de preguntas y respuestas y agentes sobre una base de datos SQL, chatbots, extracción, análisis de consultas, resumen, simulaciones de agentes, agentes autónomos y mucho más12.
El marco de conversación multiagente de código abierto de Microsoft ofrece una abstracción de alto nivel de modelos fundacionales. AutoGen es un marco agentivo, lo que significa que utiliza varios agentes para conversar y resolver tareas. Sus principales características incluyen agentes de IA personalizables que participan en conversaciones multiagente con patrones flexibles para crear una amplia gama de aplicaciones de LLM13.
Las implementaciones de AutoGen en aplicaciones basadas en LLM incluyen chatbots de tutoría matemática, ajedrez conversacional, toma de decisiones, chat grupal dinámico y codificación multiagente14. AutoGen ofrece monitorización y análisis para la depuración a través de AgentOps15.
LlamaIndex proporciona las herramientas para crear aplicaciones de LLM aumentadas por el contexto. Entre ellas se incluyen herramientas de integración de datos, como los conectores, para procesar datos procedentes de más de 160 fuentes y formatos16. LlamaIndex también incluye un conjunto de módulos para evaluar el rendimiento de las aplicaciones de LLM.
Entre los numerosos casos de uso populares de LlamaIndex se incluyen las aplicaciones de preguntas y respuestas (generación aumentada por recuperación, también conocida como RAG), los chatbots, la comprensión de documentos y la extracción de datos, así como el ajuste de modelos a partir de datos para mejorar el rendimiento17.
Haystack es un marco de trabajo Python de código abierto desarrollado con dos conceptos principales para crear sistemas personalizados de IA generativa de principio a fin: componentes y pipelines. Haystack colabora con muchos proveedores de LLM, bases de datos vectoriales y herramientas de IA que hacen que las herramientas para crear a partir de él sean completas y flexibles18.
Entre los casos de uso habituales que ofrece Haystack se incluyen los sistemas de búsqueda semántica, la extracción de información y la respuesta a preguntas de estilo preguntas frecuentes19.
crewAI es un marco multiagente de código abierto creado a partir de LangChain. Los agentes autónomos de IA que desempeñan funciones se reúnen en equipos para completar los flujos de trabajo y las tareas relacionadas con la aplicación de LLM20. crewAI ofrece una versión empresarial llamada crewAI+.
Las aplicaciones tanto para principiantes como para usuarios más técnicos incluyen la generación de páginas de aterrizaje, el análisis de valores y la conexión. crewAI utiliza AgentOps para proporcionar monitorización y métricas a los agentes21.
Los marcos de orquestación de LLM siguen madurando a medida que avanzan las aplicaciones de IA generativa, agilizando los flujos de trabajo de LLMOps para más soluciones de inteligencia artificial.
Los marcos de orquestación proporcionan las herramientas y la estructura necesarias para que una aplicación de LLM saque el máximo provecho de sus modelos. Los marcos futuros podrían utilizar agentes de IA y sistemas multiagente para facilitar la automatización inteligente.
Los patrones en los marcos de orquestación emergentes sugieren que la creación de arquitecturas más complejas, como los sistemas multiagente capaces de integrarse para implementar características, proporciona a los agentes las habilidades que necesitan para llevar a cabo flujos de trabajo autónomos.
La usabilidad también se está convirtiendo en una prioridad para las plataformas de orquestación. A medida que el mercado madure, se desarrollarán más herramientas que se centren en la experiencia del usuario. Este enfoque también reduce las barreras técnicas para utilizar estos marcos. Algunos marcos de orquestación, como IBM watsonx Orchestrate, aprovechan una interfaz de lenguaje natural para facilitar la participación y la usabilidad.
Gestionar la orquestación de LLM es una tarea compleja, mientras que la orquestación es clave para escalar y automatizar los flujos de trabajo basados en LLM.
Explore la biblioteca de modelos fundacionales de IBM en la cartera de watsonx para escalar la IA generativa para su negocio con confianza.
Ponga la IA a trabajar en su negocio con la experiencia líder en IA del sector de IBM y junto a su cartera de soluciones.
Reinvente las operaciones y flujos de trabajo críticos añadiendo IA para maximizar las experiencias, la toma de decisiones en tiempo real y el valor empresarial.
1 Andrei Kucharavy. “Fundamental Limitations of Generative LLMS” [Limitaciones fundamentales de los LLM generativos]. SpringerLink. 1 de enero de 1970. https://link.springer.com/chapter/10.1007/978-3-031-54827-7_5.
2 Anna Vyshnevska. “LLM Orchestration for Competitive Business Advantage: Tools & Frameworks” [La orquestación del LLM para una ventaja empresarial competitiva: herramientas y marcos]. Master of Code Global. 26 de junio de 2024. https://masterofcode.com/blog/llm-orchestration.
3 Matt Bornstein, Rajko Radovanovic. “Emerging Architectures for LLM Applications” [Arquitecturas emergentes para aplicaciones de LLM]. Andreessen Horowitz. 8 de mayo de 2024. https://a16z.com/emerging-architectures-for-llm-applications/.
4 Vyshnevska. “LLM Orchestration for Competitive Business” [Orquestación de LLM para empresas competitivas].
5 “Quick Reference” [Referencia rápida]. LangChain. https://python.langchain.com/v0.1/docs/modules/model_io/prompts/quick_start/.
6 “Chains” [Cadenas]. LangChain. https://python.langchain.com/v0.1/docs/modules/chains/.
7 Manish. “Compounding GenAI Success” [El éxito de la IA generativa].
8 Salvador Garcia et al. “Big Data Preprocessing: Methods and Prospects - Big Data Analytics” [Preprocesamiento de big data: métodos y perspectivas - Análisis de big data]. SpringerLink. 1 de noviembre de 2016. https://link.springer.com/article/10.1186/s41044-016-0014-0.
9 Manish. “Compounding GenAI Success” [El éxito de la IA generativa].
10 “Create Your AI App!” [¡Cree su aplicación de IA!]. Langflow. https://www.langflow.org/.
11 “Conceptual Guide” [Guía conceptual]. LangChain. https://python.langchain.com/v0.2/docs/concepts/.
12 “Use Cases” [Casos de uso]. LangChain. https://js.langchain.com/v0.1/docs/use_cases/.
13 “Getting Started: Autogen” [Primeros pasos: AutoGen]. AutoGen RSS. https://microsoft.github.io/autogen/docs/Getting-Started/.
14 “Multi-Agent Conversation Framework: Autogen” [Marco de conversación multiagente: AutoGen]. AutoGen RSS. https://microsoft.github.io/autogen/docs/Use-Cases/agent_chat/#diverse-applications-implemented-with-autogen.
15 “AgentOps”. AgentOps. https://www.agentops.ai/?=autogen.
16 “Loading Data (Ingestion)” [Carga de datos (ingesta)]. LlamaIndex. https://docs.llamaindex.ai/en/stable/understanding/loading/loading/.
17 “Use Cases” [Casos de uso]. LangChain. https://js.langchain.com/v0.1/docs/use_cases/.
18 “What Is Haystack?” [¿Qué es Haystack?]. Pajar. https://haystack.deepset.ai/overview/intro.
19 “Use Cases” [Casos de uso]. Haystack. https://haystack.deepset.ai/overview/use-cases.
20 “Ai Agents Forreal Use Cases” [Agentes de IA para casos de uso reales]. crewAI. https://www.crewai.com/.
21 crewAI, Inc. “Agent Monitoring with AgentOps” [Monitorización de agentes con AgentOps]. crewAI. https://docs.crewai.com/introduction#agentops.