LangChain en Vertex AI

LangChain en Vertex AI (vista previa) te permite aprovechar la biblioteca de código abierto LangChain para compilar aplicaciones basadas en IA generativa personalizadas y usar Vertex AI para modelos, herramientas e implementación. Con LangChain en la IA de Vertex (vista previa), puedes hacer lo siguiente:

  • Seleccionar el modelo de lenguaje grande (LLM) con el que deseas trabajar.
  • Definir herramientas para acceder a APIs externas.
  • Estructurar la interfaz entre el usuario y los componentes del sistema en un framework de organización.
  • Implementar el framework en un entorno de ejecución administrado.

Ventajas

  • Personalizable: Mediante las interfaces estandarizadas de LangChain, se puede adoptar LangChain en Vertex AI para compilar diferentes tipos de aplicaciones. Puedes personalizar la lógica de tu aplicación y, también, incorporar cualquier framework, lo que proporciona un alto grado de flexibilidad.
  • Simplifica la implementación: LangChain en Vertex AI usa las mismas APIs que LangChain para interactuar con LLM y compilar aplicaciones. LangChain en Vertex AI simplifica y acelera la implementación con LLM de Vertex AI, ya que el entorno de ejecución de Reasoning Engine admite la implementación de un solo clic para generar una API compatible basada en tu biblioteca.
  • Integración en los ecosistemas de Vertex AI: Reasoning Engine para LangChain en Vertex AI usa la infraestructura de Vertex AI y los contenedores compilados previamente para ayudarte a implementar tu aplicación de LLM. Puedes usar la API de Vertex AI para integrar en modelos de Gemini, llamadas a funciones y extensiones.
  • Seguro, privado y escalable: Puedes usar una sola llamada al SDK en lugar de administrar el proceso de desarrollo por tu cuenta. El entorno de ejecución administrado de Reasoning Engine te libera de tareas como el desarrollo del servidor de aplicaciones, la creación de contenedores y la configuración de autenticación, IAM y escalamiento. Vertex AI controla el ajuste de escala automático, la expansión regional y las vulnerabilidades de los contenedores.

Casos de uso

Puedes usar LangChain en la IA de Vertex para las siguientes tareas:

Caso de uso Descripción de ejemplo Ejemplo (vínculo)
Extrae entidades de historias en lenguaje natural Extrae listas de personajes, relaciones, objetos y lugares de una historia. Notebook de SDK de Vertex AI para Python - Extracción de datos estructurados mediante llamadas a función
Consulta y comprende las bases de datos SQL con lenguaje natural Pídele al modelo que convierta preguntas como “¿Qué porcentaje de pedidos se muestran?”. en consultas en SQL y crear funciones que envíen esas consultas a BigQuery. Entrada de blog - Compila una app de exploración de datos de BigQuery impulsada por IA mediante llamadas a funciones en Gemini
Ayuda a los clientes a interactuar con las empresas Crea funciones que se conecten a la API de una empresa, lo que permite que el modelo proporcione respuestas precisas a consultas como “¿Tienes el Pixel 8 Pro en stock?” o “¿Hay una tienda en Mountain View, California que pueda visitar para probarla?” Notebook de SDK de Vertex AI para Python - Llamadas a funciones con la API de Gemini de Vertex AI y el SDK de Python
Conéctate a APIs públicas para compilar aplicaciones de IA generativa Convierte entre monedas.

Crea una función que se conecte a una app de cambio de monedas, lo que permite que el modelo proporcione respuestas precisas a consultas como “¿Cuál es el tipo de cambio de euros a dólares hoy?”
Codelab: Cómo interactuar con las APIs a través de llamadas a funciones en Gemini
Consulta el clima de una ubicación determinada.

Crea una función que se conecte a una API de un servicio meteorológico, lo que permite que el modelo proporcione respuestas precisas a consultas, como “¿Cómo está el clima en París?”.
Notebook de SDK de Vertex AI para Python - Llamadas a funciones con la API de Gemini de Vertex AI y el SDK de Python

Entrada de blog - Llamadas a funciones: un framework para conectar Gemini a sistemas, datos y APIs externos
Convierte una dirección en coordenadas de latitud y longitud.

Crea una función que convierta los datos de ubicación estructurados en coordenadas de latitud y longitud. Pídele al modelo que identifique la dirección, la ciudad, el estado y el código postal en consultas como “Quiero obtener las coordenadas de latitud/longitud para la siguiente dirección: 1600 Amphitheatre Pkwy, Mountain View, CA 94043, EE.UU.”.
Notebook de SDK de Vertex AI para Python - Llamadas a funciones con la API de Gemini de Vertex AI y el SDK de Python
Interpreta comandos por voz Crea funciones que correspondan a las tareas en el vehículo. Por ejemplo, puedes crear funciones que activen la radio o el aire acondicionado. Envía archivos de audio de los comandos por voz del usuario al modelo y pídele al modelo que convierta el audio en texto y que identifique la función a la que el usuario desea llamar.  
Automatiza los flujos de trabajo según los activadores de entorno Crea funciones que representen procesos que se pueden automatizar. Proporciona al modelo datos de los sensores ambientales y pídele que analice y procese los datos para determinar si uno o más de los flujos de trabajo deben activarse. Por ejemplo, un modelo podría procesar datos de temperatura en un almacén y elegir activar una función de rociador.  
Automatiza la asignación de tickets de asistencia Proporciona al modelo tickets de asistencia, registros y reglas contextuales. Pídele al modelo que procese toda esta información para determinar a quién se le debe asignar el ticket. Llama a una función para asignar el ticket a la persona que sugiere el modelo.  
Recupera información de una base de conocimiento Crea funciones que recuperen artículos académicos sobre un tema determinado y los resuma. Permite que el modelo responda preguntas sobre temas académicos y proporcione citas para sus respuestas.  

Componentes del sistema

La compilación y la implementación de una aplicación de IA generativa personalizada con OSS LangChain y la IA de Vertex consta de cuatro componentes:

ComponenteDescripción
LLM

Cuando envías una consulta a tu aplicación personalizada, el LLM procesa la consulta y proporciona una respuesta.

Puedes elegir definir un conjunto de herramientas que se comunique con APIs externas y proporcionarlas al modelo. Mientras se procesa una consulta, el modelo delega ciertas tareas a las herramientas. Esto implica una o más llamadas de modelo a modelos base o ajustados.

Para obtener más información, consulta Versiones de modelo y ciclo de vida.

Herramienta

Puedes elegir definir un conjunto de herramientas que se comunique con APIs externas (por ejemplo, una base de datos) y proporcionarlas al modelo. Mientras se procesa una consulta, el modelo puede delegar ciertas tareas a las herramientas.

La implementación a través del entorno de ejecución administrado de IA de Vertex está optimizada para usar herramientas basadas en las llamadas a funciones de Gemini, pero admite la herramienta LangChain y las llamadas a funciones. Para obtener más información sobre las llamadas a funciones de Gemini, consulta Llamadas a funciones.

Framework de organización

LangChain en Vertex AI te permite aprovechar el framework de organización de LangChain en Vertex AI. Usa LangChain para decidir qué tan determinística debería ser tu aplicación.

Si ya usas LangChain, puedes usar tu código de LangChain existente para implementar tu aplicación en la IA de Vertex. De lo contrario, puedes crear tu propio código de la aplicación y estructurarlo en un framework de organización que aproveche las plantillas de LangChain de IA de Vertex.

Para obtener más información, consulta Desarrolla una aplicación.

Entorno de ejecución administrado LangChain en la IA de Vertex te permite implementar tu aplicación en un entorno de ejecución administrado de Reasoning Engine. Este entorno de ejecución es un servicio de IA de Vertex que tiene todos los beneficios de la integración a IA de Vertex: seguridad, privacidad, observabilidad y escalabilidad. Puedes producir y escalar tu aplicación con una simple llamada a la API, que te permite convertir rápidamente los prototipos probados de forma local en implementaciones listas para la empresa. Para obtener más información, consulta Implementa una aplicación.

Existen muchas formas diferentes de prototipar y compilar aplicaciones personalizadas de IA generativa que aprovechan las capacidades de agente mediante herramientas de capas, funciones personalizadas y modelos, como Gemini. Cuando llegue el momento de mover la aplicación a la producción, deberás considerar cómo implementar y administrar el agente y sus componentes subyacentes.

Con los componentes de LangChain en Vertex AI, el objetivo es ayudarte a enfocarte y personalizar los aspectos de la funcionalidad del agente que más te interesan, como las funciones personalizadas, el comportamiento del agente y los parámetros del modelo, si bien Google se encarga de la implementación, el escalamiento del empaquetado, las versiones, etc. Si trabajas en un nivel inferior de la pila, es posible que debas administrar más de lo que deseas. Si trabajas en un nivel superior de la pila, es posible que no tengas tanto control para los desarrolladores como para.

Flujo del sistema en el entorno de ejecución

Cuando el usuario realiza una consulta, el agente definido la formatea en un mensaje para el LLM. El LLM procesa el mensaje y determina si desea usar alguna de las herramientas.

Si el LLM elige usar una herramienta, genera un FunctionCall con el nombre y los parámetros con los que se debe llamar a la herramienta. El agente invoca la herramienta con el FunctionCall y proporciona los resultados de la herramienta al LLM. Si el LLM elige no usar ninguna herramienta, genera contenido que el agente retransmite al usuario.

En el siguiente diagrama, se ilustra el flujo del sistema en el entorno de ejecución:

Flujo del sistema en el entorno de ejecución 

Crea e implementa una aplicación de IA generativa

El flujo de trabajo para compilar aplicaciones de IA generativa es el siguiente:

Pasos Descripción
1. Configura el entorno Configura tu proyecto de Google e instala la versión más reciente del SDK de Vertex AI para Python.
2. Desarrollar una aplicación Desarrolla una aplicación LangChain que se pueda implementar en Reasoning Engine.
3. Implemente la aplicación Implementa la aplicación en Reasoning Engine
4. Use la aplicación Consulta a Reasoning Engine para obtener una respuesta.
5. Administra la aplicación implementada Administra y borra las aplicaciones que implementaste en Reasoning Engine.
6. Personaliza una plantilla de aplicación (opcional) Personaliza una plantilla para aplicaciones nuevas.

Los pasos se ilustran en el siguiente diagrama:

Crea e implementa una aplicación de IA generativa 

¿Qué sigue?