Inteligencia Artificial (IA)

Codelab: Creación de un agente de IA con los servicios de IA y el catálogo de agentes de Couchbase

En este CodeLab, aprenderás a crear un Agente de búsqueda de hoteles utilizando Cadena LangChain, Servicios de inteligencia artificial de Couchbasey Catálogo de agentes. También incorporaremos Arize Phoenix para la observabilidad y la evaluación, con el fin de garantizar que nuestro agente funcione de manera confiable.

Este tutorial te lleva desde cero hasta crear un agente totalmente funcional que puede buscar hoteles, filtrar por servicios y responder consultas en lenguaje natural utilizando datos del mundo real.

Nota: Puede encontrar el cuaderno completo de Google CodeLab para este CodeLab. aquí.

¿Qué son los servicios de inteligencia artificial de Couchbase?

La creación de aplicaciones de IA a menudo implica combinar múltiples servicios: una base de datos vectorial para la memoria, un proveedor de inferencia para LLM (como OpenAI o Anthropic) y una infraestructura independiente para integrar modelos.

Servicios de inteligencia artificial de Couchbase Optimiza este proceso al proporcionar una plataforma unificada en la que conviven sus datos operativos, la búsqueda vectorial y los modelos de inteligencia artificial. Ofrece:

  • API de inferencia y embeddings de LLM: Acceda a modelos LLM populares (como Llama 3) y modelos de incrustación directamente en Couchbase Capella, sin claves API externas, sin infraestructura adicional y sin salida de datos. Los datos de su aplicación permanecen dentro de Capella. Las consultas, los vectores y la inferencia de modelos se realizan donde se encuentran los datos. Esto permite experiencias de IA seguras y de baja latencia, al tiempo que se cumplen los requisitos de privacidad y cumplimiento normativo. De ahí el valor clave: datos e IA juntos, sin enviar información confidencial fuera de su sistema.
  • Plataforma unificada: Base de datos + Vectorización + Búsqueda + Modelo
  • Búsqueda vectorial integrada: Realice búsquedas semánticas directamente en sus datos JSON con una latencia de milisegundos.

¿Por qué es necesario?

A medida que pasamos de los chatbots simples a flujos de trabajo de agentes, donde los modelos de IA utilizan herramientas de forma autónoma, la latencia y la complejidad de la configuración se convierten en cuellos de botella. Al ubicar sus datos y servicios de IA en el mismo lugar, se reduce la sobrecarga operativa y la latencia. Además, herramientas como la Catálogo de agentes Ayuda con la gestión de cientos de indicaciones y herramientas para agentes y proporciona un registro integrado para tus agentes.

Requisitos previos

Antes de empezar, asegúrate de que tienes:

  • A Couchbase Capella cuenta.
  • Python 3.10+ instalado.
  • Conocimientos básicos de Python y cuadernos Jupyter.

Crear un clúster en Couchbase Capella

  1. Inicie sesión en Couchbase Capella.
  2. Cree un nuevo clúster o utilice uno existente. Tenga en cuenta que el clúster debe ejecutar la última versión de Couchbase Server 8.0 con los servicios de datos, consultas, índices y eventos.
  3. Cree un cubo.
  4. Cree un ámbito y una colección para sus datos.

Paso 1: Instalar dependencias

Comenzaremos instalando los paquetes necesarios. Esto incluye el couchbase-infraestructura ayudante para la configuración, el agentec CLI para el catálogo y los paquetes de integración LangChain.

Paso 2: Infraestructura como código

En lugar de hacer clic manualmente en la interfaz de usuario, utilizamos el couchbase-infraestructura paquete para aprovisionar mediante programación nuestro entorno Capella. Esto garantiza una configuración reproducible.

Nos comprometemos a:

  1. Cree un proyecto y un grupo.
  2. Implementar un modelo de incrustación (nvidia/llama-3.2-nv-embedqa-1b-v2) y un máster en Derecho (meta/llama3-8b-instrucción).
  3. Cargar el viaje-muestra conjunto de datos.

Couchbase AI Services proporciona puntos finales compatibles con OpenAI que utilizan los agentes.

Asegúrese de seguir los pasos para configurar el certificado raíz de seguridad. Las conexiones seguras a Couchbase Capella requieren un certificado raíz para la verificación TLS. Puede encontrarlo en el ## 📜 Configuración del certificado raíz sección del cuaderno de Google Colab.

Paso 3: Integración del catálogo de agentes

En Catálogo de agentes es una potente herramienta para gestionar el ciclo de vida de las capacidades de su agente. En lugar de codificar de forma rígida las indicaciones y las definiciones de herramientas en sus archivos Python, puede gestionarlas como activos versionados. Puede centralizar y reutilizar sus herramientas en todos sus equipos de desarrollo. También puede examinar y supervisar las respuestas de los agentes con Agent Tracer.

Inicializar y descargar recursos

Primero, inicializamos el catálogo y descargamos nuestras indicaciones y herramientas predefinidas.

Indexar y publicar

Utilizamos agentec para indexar nuestros archivos locales y publicarlos en Couchbase. Esto almacena los metadatos en su base de datos, lo que permite que el agente los busque y los encuentre en tiempo de ejecución.

Paso 4: Preparación del almacén de vectores

Para que nuestro agente pueda buscar hoteles semánticamente (por ejemplo, “lugar acogedor cerca de la playa”), necesitamos generar incrustaciones vectoriales para nuestros datos de hoteles.

Definimos un asistente para dar formato a los datos de nuestro hotel en una representación de texto enriquecido, dando prioridad a la ubicación y las comodidades.

Paso 5: Creación del agente LangChain

Utilizamos el Catálogo de agentes para obtener nuestras definiciones de herramientas y mensajes de forma dinámica. El código sigue siendo genérico, mientras que sus capacidades (herramientas) y personalidad (mensajes) se gestionan por separado. También crearemos nuestro ReAct agentes.

Paso 6: Ejecutar el agente

Una vez inicializado el agente, podemos realizar consultas complejas. El agente:

  1. Reciba la entrada del usuario.
  2. Decide que necesita utilizar el buscar_base_de_datos_vectorial herramienta.
  3. Realiza la búsqueda en Capella.
  4. Sintetizar los resultados en una respuesta en lenguaje natural.

Ejemplo de resultado:

Agente: Encontré un hotel en Giverny que ofrece desayuno gratis llamado Le Clos Fleuri. Se encuentra en el número 5 de la rue de la Dîme, 27620 Giverny. Ofrece conexión a internet y estacionamiento gratuitos.

Nota: En Capella Model Services, los resultados del modelo pueden ser en caché (tanto caché semántica como estándar). El mecanismo de almacenamiento en caché mejora la eficiencia y la velocidad del RAG, especialmente cuando se trata de consultas repetidas o similares. Cuando se procesa una consulta por primera vez, el LLM genera una respuesta y luego la almacena en Couchbase. Cuando más tarde se reciben consultas similares, se devuelven las respuestas almacenadas en caché. La duración del almacenamiento en caché se puede configurar en los servicios del modelo Capella.

Agregar caché semántico

El almacenamiento en caché resulta especialmente útil en situaciones en las que los usuarios pueden enviar consultas similares varias veces o en las que se solicitan con frecuencia determinados datos. Al almacenarlos en una caché, podemos reducir considerablemente el tiempo que se tarda en responder a estas consultas, mejorando así la experiencia del usuario.

Paso 7: Observabilidad con Arize Phoenix

En producción, es necesario saber por qué un agente ha dado una respuesta concreta. Utilizamos Arize Phoenix para rastrear el “proceso de pensamiento” del agente (la cadena ReAct).

También podemos realizar evaluaciones para verificar si alucinaciones o relevancia.

Al inspeccionar la interfaz de usuario de Phoenix, puede visualizar la secuencia exacta de llamadas a herramientas y ver la latencia de cada paso de la cadena.

Conclusión

Hemos creado con éxito un potente agente de búsqueda de hoteles. Esta arquitectura aprovecha:

  1. Servicios de inteligencia artificial de Couchbase: Para una capa de datos e inteligencia artificial unificada y de baja latencia.
  2. Catálogo de agentes: Para una gestión organizada y versionada de las herramientas y las indicaciones de los agentes. El catálogo de agentes también proporciona seguimiento. Permite a los usuarios utilizar SQL++ con seguimientos, aprovechar el rendimiento de Couchbase y obtener información detallada sobre las indicaciones y las herramientas en la misma plataforma.
  3. LangChain: Para una orquestación flexible.
  4. Arize Phoenix: Por motivos de observabilidad.

Este enfoque se adapta bien a los equipos que desarrollan sistemas complejos con múltiples agentes, en los que la gestión de datos y el descubrimiento de herramientas son retos fundamentales.

Comparte este artículo
Recibe actualizaciones del blog de Couchbase en tu bandeja de entrada
Este campo es obligatorio.

Autor

Publicado por Laurent Doguin

Laurent es un metalero empollón que vive en París. Principalmente escribe código en Java y texto estructurado en AsciiDoc, y a menudo habla sobre datos, programación reactiva y otras cosas de moda. También fue Developer Advocate de Clever Cloud y Nuxeo, donde dedicó su tiempo y experiencia a ayudar a esas comunidades a crecer y fortalecerse. Ahora dirige las relaciones con los desarrolladores en Couchbase.

Deja un comentario

¿Listo para empezar con Couchbase Capella?

Empezar a construir

Consulte nuestro portal para desarrolladores para explorar NoSQL, buscar recursos y empezar con tutoriales.

Utilizar Capella gratis

Ponte manos a la obra con Couchbase en unos pocos clics. Capella DBaaS es la forma más fácil y rápida de empezar.

Póngase en contacto

¿Quieres saber más sobre las ofertas de Couchbase? Permítanos ayudarle.