Tampoco tiene realmente memoria del último mensaje si solo adjuntáramos esto a un modelo de lenguaje grande. Así que RAG, esa es una forma de ayudar a mejorar esto. RAG significa Retrieval Augmented Generation. Y lo que esto nos permite hacer es adjuntar esta fuente de conocimiento, nuestra información de la empresa en términos de los productos, preguntas frecuentes, políticas, si tenemos alguna promoción especial que actualmente sea por tiempo limitado. Aquí en los Estados Unidos ahora mismo, se acerca el 4 de julio. Así que muchas empresas están haciendo descuentos especiales para productos por la promoción del 4 de julio. Así que tal vez tengamos promociones temporales en curso. Tal vez tengamos ciertas políticas de reembolso en curso. Tal vez tengamos retiradas de productos para ciertos productos. Queremos que el modelo de lenguaje grande sepa todo eso. Y RAG es una forma de permitir que nuestro modelo de lenguaje grande tenga acceso a información actual que es relevante y que de otro modo el modelo de lenguaje grande no conocería. Porque el modelo de lenguaje grande, como saben, solo conoce la información con la que fue entrenado. Y tal vez la fecha de corte de entrenamiento para el modelo de lenguaje grande fue hace varios meses, y no tendría idea sobre la información más reciente sobre nuestros productos en nuestra tienda.
Hablemos ahora de LangChain. Entonces, ¿qué es LangChain? LangChain es una biblioteca de Python que nos permite hacer que los LLMs, modelos de lenguaje grandes, usen herramientas que se conectan a datos. Así que vamos a hablar sobre cómo sucede eso. Pero esencialmente, cuando le hago una pregunta a un modelo de lenguaje grande, en lugar de que solo responda a sus datos preentrenados, podemos usar Python para programarlo. De modo que el modelo de lenguaje grande clasifique nuestro mensaje según lo que estamos preguntando y qué tipo de herramientas necesita usar para responder adecuadamente a nuestra pregunta. ¿Y a qué tipo de fuentes de datos podría estar adjunto este modelo de lenguaje grande para que también pueda obtener la información más reciente que es actual relacionada tal vez con nuestros productos o nuestros descuentos o políticas de reembolso? En esta aplicación, vamos a usar el modelo Bedrock.
Así que LangChain va a usar el modelo Bedrock. Va a estar conectado a Bedrock para conectarse a ciertos modelos. Y también va a usar el Amazon Knowledge Base Retriever para recuperar de nuestra Bedrock Knowledge Base donde vamos a tener un montón de datos específicos de productos de la empresa, preguntas frecuentes, políticas de reembolso, cosas así. LangRaph nos permite construir agentes como un gráfico. Así que piensa en ello como un diagrama de flujo. Tal vez haya condiciones, ¿verdad? Así que si le hago una cierta pregunta, podría clasificarla como, ¿esta pregunta está relacionada con productos o está relacionada con información específica de un pedido? Así que si le pregunto, oye, ¿qué está pasando con la crema para rizos para sus productos de cuidado del cabello? ¿Cómo la uso? Va a clasificar ese mensaje como, ¿está relacionado? ¿Debería el modelo de lenguaje grande mirar la herramienta relacionada con la búsqueda de información sobre los productos en nuestro sistema RAG en Bedrock? ¿O debería, esta pregunta está relacionada con un pedido que necesitamos ayudar a procesar una devolución para un cliente? Bueno, para ese tipo de pregunta sobre un producto de cuidado del cabello para rizos, y cómo uso esta crema para rizos, lo clasificará tan inteligentemente como pueda y lo clasificará como una pregunta relacionada con el producto. Y usará las herramientas relevantes para buscar productos y responderá en consecuencia. O si le pregunto, oye, necesito devolver este champú. Bueno, clasificará ese mensaje como, bueno, no está realmente relacionado con la búsqueda de productos. Está relacionado con el manejo de la devolución.
Comments