IA Generativa (GenAI)

Aceleración de la aplicación de IA RAG basada en Couchbase con NVIDIA NIM/NeMo y LangChain

Hoy nos complace anunciar nuestra nueva integración con NVIDIA NIM/NeMo. En esta entrada de blog, presentamos un concepto de solución de un chatbot interactivo basado en una Recuperación Generación aumentada (RAG) con Couchbase Capella como base de datos vectorial. Las fases de recuperación y generación de la canalización RAG se aceleran mediante NVIDIA NIM/NeMo con sólo unas pocas líneas de código. 

Empresas de diversos sectores se esfuerzan por ofrecer el mejor servicio a sus clientes. Para lograrlo, están dotando a sus trabajadores de primera línea, como enfermeras de urgencias, vendedores de tiendas y representantes de servicios de asistencia, de chatbots interactivos de preguntas y respuestas (QA) con IA para recuperar información relevante y actualizada rápidamente.

Los chatbots suelen basarse en RAGun marco de IA utilizado para recuperar hechos de la base de conocimientos de la empresa con el fin de fundamentar las respuestas del LLM en la información más precisa y reciente. Consta de tres fases distintas, que comienzan con la recuperación del contexto más relevante utilizando búsqueda vectorialPor último, se generan respuestas pertinentes mediante un LLM.

El problema de las actuales canalizaciones de RAG es que las llamadas al servicio de incrustación en la fase de recuperación para convertir las peticiones del usuario en vectores pueden añadir una latencia significativa, ralentizando las aplicaciones que requieren interactividad. Vectorizar un corpus de documentos compuesto por millones de PDF, documentos y otras bases de conocimiento puede llevar mucho tiempo, lo que aumenta la probabilidad de utilizar datos obsoletos para la GAR. Además, a los usuarios les resulta difícil acelerar la inferencia (tokens/seg) de forma rentable para reducir el tiempo de respuesta de sus aplicaciones de chatbot.

En la figura 1 se muestra una pila de rendimiento que le permitirá desarrollar fácilmente un chatbot interactivo de atención al cliente. Se compone del marco de aplicación StreamLit, LangChain para la orquestación, Couchbase Capella para la indexación y búsqueda de vectores, y NVIDIA NIM/NeMo para acelerar las etapas de recuperación y generación.

NVIDIA NIM/NeMo and LangChain

Figura 1: Arquitectura conceptual de un chatbot de control de calidad creado con Capella y NVIDIA NIM/NeMo

Couchbase Capella, una base de datos como servicio (DBaaS) de alto rendimiento, te permite empezar rápidamente a almacenar, indexar y consultar datos operativos, vectoriales, de texto, de series temporales y geoespaciales aprovechando la flexibilidad de JSON. Puede integrar fácilmente Capella para búsqueda vectorial o la búsqueda semántica sin necesidad de una base de datos vectorial independiente mediante la integración de un marco de orquestación como Cadena LangChain o LlamaIndex en su canal de producción RAG. Ofrece la búsqueda híbrida que combina la búsqueda vectorial con la búsqueda tradicional para mejorar significativamente el rendimiento de la búsqueda. Además, puedes ampliar la búsqueda vectorial a los bordes con Couchbase mobile para casos de uso de IA en los bordes.

Una vez que haya configurado la búsqueda vectorial de Capella, puede proceder a elegir un modelo de rendimiento en el menú Catálogo API de NVIDIAque ofrece una amplia gama de modelos de cimientos que abarcan modelos de código abierto, cimientos de IA de NVIDIA y modelos personalizados, optimizados para ofrecer el mejor rendimiento en la infraestructura acelerada de NVIDIA. Estos modelos se implementan como NVIDIA NIM ya sea on-prem o en la nube utilizando contenedores preconstruidos fáciles de usar a través de un único comando. Recuperador NeMo, parte de NVIDIA NeMo, ofrece recuperación de información con la menor latencia, el mayor rendimiento y la máxima privacidad de los datos. 

El chatbot que hemos desarrollado utilizando la pila antes mencionada le permitirá cargue sus documentos PDF y formule preguntas de forma interactiva. Utiliza NV-QA-Embedun modelo de incrustación de texto acelerado en la GPU para la recuperación de preguntas y respuestas, y Llama 3 - 70Bque se empaqueta como NIM y se acelera en la infraestructura de NVIDIA. El sitio langchain-nvidia-ai-endpoints contiene integraciones de LangChain para crear aplicaciones con modelos en NVIDIA NIM. Aunque hemos utilizado los endpoints alojados en NVIDIA para la creación de prototipos, le recomendamos que considere la posibilidad de utilizar NIM autoalojado consultando la página Documentación NIM para despliegues de producción. 

Puede utilizar esta solución para casos de uso que requieran una rápida recuperación de la información, como:

    • Permitir a las enfermeras de urgencias agilizar el triaje mediante un acceso rápido a la información sanitaria pertinente para aliviar el hacinamiento, las largas esperas para recibir atención y la escasa satisfacción de los pacientes.
    • Ayudar a los agentes de atención al cliente a descubrir rápidamente los conocimientos pertinentes mediante un chatbot de base de conocimientos interna para reducir los tiempos de espera de las llamadas. Esto no solo ayudará a mejorar los resultados de CSAT, sino que también permitirá gestionar grandes volúmenes de llamadas.
    • Ayudar a los vendedores de una tienda a descubrir y recomendar rápidamente artículos de un catálogo de productos similares a la imagen o descripción del artículo solicitado por un comprador pero que actualmente está agotado (stockout), para mejorar la experiencia de compra.

En conclusión, puedes desarrollar una aplicación GenAI interactiva, como un chatbot, con respuestas fundamentadas y relevantes utilizando RAG basado en Couchbase Capella y acelerarla utilizando NVIDIA NIM/NeMo. Esta combinación proporciona escalabilidad, fiabilidad y facilidad de uso. Además de desplegarse junto con Capella para una experiencia DBaaS, NIM/NeMo puede desplegarse con Couchbase on-prem o autogestionado en nubes públicas dentro de su VPC para casos de uso que tengan requisitos más estrictos de seguridad y privacidad. Además, puede utilizar Barandillas NeMo para controlar la salida de su LLM de contenidos que su empresa considere censurables.

Los detalles de la aplicación chatbot se pueden encontrar en el Couchbase Portal para desarrolladores junto con el código completo. Inscríbase en Cuenta de prueba Capella, gratis Cuenta NVIDIA NIMy empieza a desarrollar tu aplicación GenAI. 



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

Autor

Publicado por Lokesh Goel, Ingeniero de Experiencia del Desarrollador

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.