Data Retrieval Chain
Data Retrieval Chain recorre una lista de elementos y, para cada uno, hace una pregunta a tu base de conocimiento: busca los fragmentos de documentos relacionados con ese elemento y pide a un modelo de IA que responda usando solo esa información. La respuesta se añade como un campo nuevo de cada elemento.
Úsalo cuando tengas una lista de casos y quieras consultar la misma documentación para cada uno, sin preguntar a mano uno por uno.
Cuándo usarlo
- Para cada producto de un pedido, consultar en los manuales sus condiciones de garantía.
- Para cada proveedor de una lista, buscar en los contratos su plazo de pago.
- Para cada pregunta frecuente recibida por correo, preparar una respuesta basada en la documentación de soporte.
Configuración
| Campo | Qué hace |
|---|---|
| Question | El inicio de la pregunta. A cada elemento se le hace la pregunta formada por este texto seguido del valor del elemento. Por ejemplo, con “Condiciones de garantía de” y el elemento “lavadora LX200”, se pregunta “Condiciones de garantía de lavadora LX200”. |
| Prompt | Las instrucciones para el modelo. Ya trae un texto que le pide responder con la información encontrada y decir que no lo sabe si no la encuentra. Debe contener {context}, donde se colocan los fragmentos encontrados, y {question}, donde va la pregunta. |
| Conexión | Qué conectar |
|---|---|
| Data | La lista de elementos, por ejemplo la salida de CSV to Data List. |
| Model | Un componente de modelo de IA, por ejemplo OpenAI. |
| Retriever (obligatorio) | La base de conocimiento en la que se busca: la salida Retriever de un componente como Chroma DB o PGVector. |
Opciones avanzadas
| Campo | Qué hace |
|---|---|
| Source data input key | El campo de cada elemento que se añade a la pregunta. Por defecto: text, el texto principal del elemento. |
| Check if value is array | Si el valor del elemento contiene varios valores separados, hace una pregunta por cada uno y junta las respuestas en el campo de salida. Por defecto: activado. Si lo desactivas, indica en Source data input key el nombre de un campo concreto. |
| Separator for array | El carácter que separa los valores cuando Check if value is array está activado. Por defecto: la coma. |
| Output key name | El nombre del campo nuevo donde se guarda la respuesta. Por defecto: chain_result. |
| Max Concurrency | Cuántas preguntas se procesan a la vez. Por defecto: 5. |
| JSON Mode | Interpreta la respuesta del modelo como datos estructurados en formato JSON. Pide en Prompt que responda en JSON. Por defecto: desactivado. |
| JSON Flatten | Con JSON Mode activado, guarda cada dato de la respuesta JSON como un campo propio del elemento. Por defecto: desactivado. |
Resultado
Data es la misma lista que entró, con la respuesta añadida a cada elemento en el campo indicado en Output key name. Conéctala a un componente que guarde o transforme datos, por ejemplo Data to CSV.
Ejemplo
Hogar Retama recibe cada día una lista de reclamaciones con el modelo de electrodoméstico afectado:
- Conecta la lista a Data y, en Source data input key, escribe
modelo. - En Question escribe “¿Qué cubre la garantía y cuánto dura para el modelo”.
- Conecta a Retriever la base de conocimiento con los manuales y a Model un modelo de IA.
- En Output key name escribe
garantia.
Cada reclamación sale con un campo garantia que resume la cobertura de su modelo, listo para que el equipo de posventa responda al cliente.
Buenas prácticas
- Redacta Question de forma que tenga sentido seguida del valor de cada elemento.
- Desactiva Check if value is array si el valor puede contener comas que no separan elementos, por ejemplo una descripción.