¿Te imaginas un modelo de lenguaje que no solo genere texto coherente, sino que también pueda buscar y utilizar información de una gran cantidad de documentos para responder preguntas de temas específicos? ¡Deja de imaginarlo!
La técnica RAG (Retrieval-Augmented Generation) ha llegado para revolucionar el mundo del NLP y abrir un abanico de nuevas posibilidades en tus proyectos de AI Generativa.
Qué es la técnica RAG en Inteligencia Artificial
Dentro del ámbito del procesamiento del lenguaje natural (NLP), la demanda de respuestas más detalladas y enriquecidas ha impulsado la creación de métodos más sofisticados. RAG es un claro ejemplo de ello. Este enfoque innovador fusiona la capacidad de búsqueda en grandes bases de datos de documentos con la generación de texto.
Esto se logra en dos pasos:
- Retrieval (recuperación): consiste en buscar dentro de nuestras fuentes de conocimiento los documentos que contienen la información relacionada con nuestra consulta.
- Generation (generación): una vez recuperado el fragmento o fragmentos de texto, se utiliza como contexto en la petición al modelo para generar una respuesta coherente y detallada.
La magia del RAG: Retrieval-Augmented Generation
Para llevar a cabo la etapa de recuperación, es importante que el modelo pueda comprender el significado detrás de las palabras. Es aquí donde entran en juego figuras como los embeddings y la búsqueda semántica. Por si nos es desconocido el término, los embeddings son representaciones vectoriales de palabras o frases que capturan su significado en un espacio dimensional específico. De esta manera, estructuras sintácticas con connotaciones similares se sitúan próximas dentro de dicho espacio.
Visualmente es algo muy sencillo, imaginemos un conjunto de seis palabras distintas donde tres de ellas son relativas a personas, mientras que las restantes hacen referencia a deportes. En un modelo de embedding con un espacio bidimensional (2D), las palabras hombre, mujer y niño se situarán próximas en el plano, como podemos ver en la imagen se corresponderían al grupo azul. Mientras que las palabras golf, béisbol y fútbol generarían la agrupación de color amarillo.
En esencia, gracias a los embeddings el modelo no solo busca coincidencias de palabras clave en la base de datos, sino fragmentos de texto que guarden un contenido relacionado con la consulta realizada. Esta habilidad se manifiesta en técnicas como RAG.
Taller de Azure OpenAI
Caso práctico con Azure OpenAI
Para entenderlo mejor, veamos un ejemplo. Supongamos que queremos recomendaciones técnicas sobre cómo actuar antes un caso de COVID en un hospital. Al dirigirnos al playground de Azure OpenAI y solicitar 5 directrices sobre cómo manejar un caso de COVID-19 obtenemos la respuesta señalada en verde en la siguiente imagen:
Por si no se aprecia bien en la imagen, las respuestas son:
- Utilizar equipos de protección personal (EPP) adecuados para el tratamiento de pacientes con COVID-19.
- Realizar pruebas de detección de COVID-19 a todos los pacientes que presenten síntomas compatibles con la enfermedad.
- Establecer protocolos de aislamientos para los pacientes con COVID-19.
- Limitar el contacto entre los pacientes y el personal de salud al mínimo necesario.
- Realizar una limpieza y desinfección adecuada de todas las áreas del hospital que hayan estado en contacto con pacientes con COVID-19.
Como se puede ver, las sugerencias son correctas y, para alguien ajeno al mundo médico, incluso podrían resultar sorprendentemente detalladas. Sin embargo, si algún profesional de la salud estuviera leyendo este post, podría argumentar que las respuestas que proporciona el modelo son de conocimiento común y demasiado genéricas. ¡Y lo son!
Es en este punto donde entra en juego el RAG para enriquecer nuestro modelo con guías de actuación en el COVID y sacarse un máster. Por ejemplo, si aplicamos esta técnica y generamos el contexto a partir del oficial del Ministerio de Salud, al formular la misma consulta que antes, obtenemos una respuesta mucho más específica y acorde con el ámbito:
- Realizar una pregunta de triaje para identificar a pacientes con sintomatología respiratoria.
- Invitar al paciente a que se coloque una mascarilla tipo quirúrgica.
- Derivar al paciente al circuito de aislamiento para evitar el contacto con las personas que están siendo atendidas en el circuito convencional.
- El personal que traslade al paciente al circuito de aislamiento debe llevar una mascarilla quirúrgica.
Beneficios de la técnica RAG en tu negocio
Como habréis visto, los modelos LLM poseen una gran capacidad de generar respuestas muy genéricas. A pesar de que las respuestas son correctas, a menudo carecen de la especificidad y la especialización necesarias, sobre todo en contextos altamente especializados como es el caso de la medicina.
La técnica RAG nace como una solución para abordar esta carencia, permitiendo que los modelos no sólo se basen en su entrenamiento original, sino que también puedan acceder y aprender de documentos más técnicos. Al alimentar el modelo con información de fuentes reconocidas, como las directrices del Ministerios de Salud, se potencia la capacidad de generar respuestas y recomendaciones oficiales actuales. Pensad que modelos como GPT-4, de base, solo están entrenados hasta el año 2021. Sin embargo, con la técnica RAG seremos capaces de agregarle información actualizada sin necesidad de reentrenar el modelo ya que esto último es ¡MUY COSTOSO! Y ¡POCO EFICIENTE!
Os estaréis preguntando si esta técnica puede aplicarse a más ramas y… ¡EUREKA! La respuesta es un SÍ rotundo. Consideremos, por ejemplo, el ámbito jurídico. Los abogados y demás profesionales del derecho requieren un análisis meticuloso e interpretaciones exactas de leyes y estatutos. Un enfoque demasiado generalista podría pasar por alto las particularidades de una determinada legislación.
En conclusión, la implementación de RAG es una herramienta que redefine la manera en que nos acercamos y entendemos la información, elevando la calidad y precisión de las respuestas que recibimos. Si estás intrigado por las aplicaciones prácticas que hay dentro de este sector en pleno auge y quieres saber más sobre esta técnica, te animamos a inscribirte a nuestro taller práctico de Azure OpenAI.