Objetivo
En este trimestre estamos analizando la mejor herramienta para el tercer trimestre de 2024 hemos estado analizando herramientas a integrar en plataforma para la creación de Agentes IA para integrar en plataforma. Tras un análisis previo los candidatos finales son:
Flowise (https://github.com/FlowiseAI/Flowise ): Flowise es una herramienta low-code de código abierto para que los desarrolladores creen flujos de orquestación LLM y agentes AI personalizados. Está construida sobre NodeJS y tiene multitud de herramientas para usar en los flujos.
Langflow (https://www.langflow.org ): Langflow es una herramienta web de código abierto construida en Python que ofrece un interfaz gráfica para definir flujos LLM con LangChain, permitiendo manejar los conceptos de Chains, Agents y Prompt Engineering, de una forma muy sencilla.
Análisis
Ambas herramientas nos permiten crear agentes IA de manera visual a modo de flujo, pero evidentemente existen diferencias entre ellas:
La más significativa quizá sea en cuando al uso general de cada una. Si bien son herramientas muy potentes, quizá Langflow está más orientada hacia la creación de ChatBots, mientras que Flowise perite abarcar un abanico más amplio de aplicaciones de IA.
Para hacer nuestra elección, hemos valorado no solo esta principal diferencia, sino los siguientes puntos:
Interfaz: Ambos tienen una interfaz sencilla de usar.
Documentación: Ambos tienen una extensa documentación y una amplia comunidad. Bajo nuestro punto de vista, Flowise tiene algo más de detalle, especialmente en cuanto a configuración y despliegue se refiere.
Componentes disponibles y posibles extensiones: Flowise dispone de mayor cantidad de componentes especializados. Además ofrece la posiblidad de crear herramientas personalizadas desde funciones/módulos NodeJS.
Facilidad de integración con Onesait Platform: Hay varios puntos a tener en cuenta, pero principalmente lo podríamos enfocar desde el punto de vista de mantener un ecosistema de tecnologías reducido y reutilizable. En este caso Flowise cuadra mucho mejor con la arquitectura de la Onesait Platform. Principalmente en estos puntos:
Tecnología base: Flowise está basado en NodeJS lo que nos permite reducir el número de tecnologías distintas a usar, ya que otros componentes como el FlowEngine están también basados en NodeJS.
Base de datos: Tanto Flowise como LangFlow requieren de una BBDD relacional para almacenar la definición de los flujos de trabajo. En el caso de Flowise tenemos más diversidad para configurar, mientras que LangFlow solo permite PostgreSQL. La elección de Flowise en este caso nos permitiría poder usar nuestra propia BBDD de configuración (configDB). Esto simplifica no solo la arquitectura, sino en los despliegues el tener que estar gestionando distintos almacenes de datos, con el coste que ello lleva.