Ejecutar acción RAG
Envía una indicación o añade y elimina datos de un espacio RAG en el servidor del modelo de IA especificado por una cuenta RAG.
Temas relacionados
Opciones
-
Nombre de cuenta RAG es una expresión de texto de la cuenta RAG que debe utilizar este paso de guión. En el archivo actual, utilice el paso de guión Configurar cuenta RAG para configurar la cuenta y asignarle este nombre en cualquier momento antes de que se ejecute este paso de guión.
-
ID de espacio es una expresión de texto que especifica el ID exclusivo del espacio RAG con el que trabajar en la cuenta RAG especificada.
-
Acción especifica el tipo de operación que se va a realizar en un espacio RAG. Esta opción controla la disponibilidad de otras opciones en el paso de guión. Elija entre las siguientes opciones:
-
Añadir datos añade un documento (datos de texto o un archivo PDF) a un espacio RAG.
-
Enviar indicación envía una indicación a un espacio RAG y obtiene una respuesta generada por la IA.
-
Eliminar datos elimina los documentos de un espacio RAG.
-
Opciones adicionales disponibles cuando Acción es Añadir datos:
-
Datos RAG especifica el documento que se va a añadir al espacio RAG:
-
Desde texto añade texto directamente a través de una expresión de texto, transferido de forma sincrónica.
-
Desde archivo añade un archivo PDF desde la ruta especificada, transferido de forma sincrónica.
-
Desde archivo (asinc.) añade un archivo PDF desde la ruta especificada, transferido de forma asíncrona (la mejor opción para archivos de gran tamaño).
-
Desde contenedor añade un archivo PDF desde un campo contenedor, transferido de forma síncrona.
-
Desde contenedor (asinc.) añade un archivo PDF desde un campo contenedor, transferido de forma asíncrona (la mejor opción para archivos de gran tamaño).
-
-
Archivo de entrada especifica una lista de una o varias rutas para un archivo PDF. El paso de guión realiza una búsqueda en la lista y añade el primer archivo PDF que encuentra correctamente. Las rutas deben utilizar uno de los prefijos de ruta
image. Consulte Crear rutas de archivo. -
Campo contenedor especifica el campo contenedor que almacena el archivo PDF que se va a añadir.
-
Detectar texto vertical mejora la extracción de texto de archivos PDF que contienen texto vertical que se encuentra comúnmente en obras literarias, periódicos, documentos gubernamentales y documentos académicos japoneses. Esta opción no está disponible cuando Datos RAG es Desde texto.
-
Tokens por fragmento de texto es una expresión numérica que especifica cuántos tokens incluir en cada fragmento de texto al añadir texto o archivos PDF al espacio RAG. Los valores válidos son de 75 a 512. Si no se especifica o se establece en 0, se utiliza el valor configurado para el servidor de modelo de IA en la Admin Console (200 tokens por defecto).
-
Objetivo de respuesta especifica el campo o variable en el que almacenar un objeto JSON devuelto por el servidor de modelo de IA sobre el documento añadido. Ver descripción.
Opciones adicionales disponibles cuando Acción es Enviar indicación:
-
El valor de Enviar indicación es una expresión de texto para la indicación o la pregunta del usuario en lenguaje natural.
-
Nombre de cuenta de IA es una expresión de texto para el nombre de la cuenta de IA que se utilizará para generar una respuesta. En el archivo actual, utilice el paso de guión Configurar cuenta de IA para configurar esta cuenta y asignarle este nombre en cualquier momento antes de que se ejecute este paso de guión.
-
Modelo es el nombre del modelo de generación de texto que se utiliza. Especifique el nombre del modelo como expresión de texto. Para conocer los modelos compatibles, consulte las Especificaciones técnicas de FileMaker.
-
Transmisión controla cómo se entrega la respuesta:
-
Encendida: La respuesta se recupera y se entrega de forma incremental (palabra por palabra o en frases). Esto puede hacer que el cliente de FileMaker se sienta más receptivo.
-
Apagada: Toda la respuesta se recupera antes de que esté disponible. Esto puede hacer que el cliente de FileMaker no responda mientras espera una respuesta completa.
-
-
Nombre de plantilla de indicaciones especifica el nombre de una plantilla de indicaciones personalizada configurada utilizando el paso de guion paso de guión Configurar plantilla de indicaciones. Utilice esta opción para diseñar una indicación adicional con el fin de contribuir a lograr una respuesta óptima en un modelo de IA.
-
Objetivo de respuesta especifica el campo o la variable en el que se almacenará la respuesta del modelo.
-
Parámetros es una expresión de texto para un objeto JSON que puede incluir:
-
Parámetros de cliente de FileMaker que se procesan y eliminan antes de enviar la solicitud:
CURLOPT_TIMEOUTestablece un tiempo máximo (en segundos) para que se complete la solicitud. El valor debe ser un número entero no negativo. Por ejemplo:{"CURLOPT_TIMEOUT": 30}. Si no hay respuesta en este momento, el cliente de FileMaker cancela la solicitud y este paso de guión devuelve el código de error 1629 ("Tiempo de espera de conexión agotado"). -
Parámetros del servidor de modelo de IA que anulan la configuración establecida en la Admin Console solo durante la duración de este paso de guión. Si no se especifica, se utilizan los valores establecidos en la Admin Console. Esos parámetros se procesan y eliminan antes de pasar cualquier otro parámetro que incluya en el objeto JSON directamente al proveedor del modelo.
Consulte la descripción para obtener más información.
-
Parámetros específicos del proveedor del modelo que se pasan directamente al proveedor del modelo junto con la indicación. Por ejemplo:
{"temperatura": 0.7, "semilla": 42}.Nota Consulte la documentación del proveedor del modelo para conocer los parámetros y valores admitidos por el modelo que está utilizando.
-
Opciones adicionales disponibles cuando Acción es Eliminar datos:
-
Parámetros es una expresión de texto para un objeto JSON que contiene una clave
idcuyo valor es una matriz de los ID de los documentos que deben eliminarse del espacio RAG especificado. Por ejemplo:Copiar{"id" : ["5f7677a0-3258-55a3-bc86-737005cb3574", "f95d4266-66cd-5b50-a01b-07a4dd66c501"]}Los ID de documento devueltos en Objetivo de respuesta cuando se añadió el documento se pueden almacenar y luego usar para eliminar un documento. O, para obtener los ID de todos los documentos de un espacio RAG, utilice la función GetRAGSpaceInfo.
Compatibilidad
| Producto | Format |
| FileMaker Pro | Sí |
| FileMaker Go | Sí |
| FileMaker WebDirect | Sí |
| FileMaker Server | Sí |
| FileMaker Cloud | Sí |
| FileMaker Data API | Sí |
| Publicación en la Web personalizada | Sí |
Se origina en
22.0
Descripción
Este paso de guión le permite crear y administrar una caché de conocimiento de documentos (datos de texto y archivos PDF) en Claris AI Model Server. A continuación, puede aprovechar esta memoria caché con una técnica denominada generación aumentada por recuperación (RAG). Mediante esta técnica, el paso de guión envía una indicación o una pregunta a un modelo de IA junto con los datos más pertinentes recuperados de la caché de información, lo que mejora la fiabilidad y la precisión de la respuesta del modelo.
La opción Acción determina lo que realiza este paso de guión.
Acción Añadir datos
Esta acción añade Datos RAG del documento especificado: exto (como cualquier expresión de texto), un archivo PDF por ruta o un archivo PDF de un campo contenedor en el registro actual o relacionado. El proceso sigue estos pasos:
-
El paso de guión envía el documento al servidor de modelos de IA.
Si añade un archivo PDF, el paso de guión envía el archivo de forma síncrona o asíncrona en función de la opción Datos RAG. Si el envío es síncrono, el guión no continúa con el siguiente paso hasta que haya finalizado la transferencia del archivo. Si el envío es asíncrono, el guión continúa con el siguiente paso mientras la transferencia del archivo está en curso (la opción más adecuada para archivos de gran tamaño), lo que permite al cliente de FileMaker seguir respondiendo a la interacción del usuario.
-
El servidor de modelo de IA asigna un ID al documento y luego lo procesa:
-
Si el documento es un archivo PDF, el servidor solo extrae texto del archivo PDF. El texto extraído se procesa de la misma manera que el texto añadido usando la opción Desde texto.
-
El servidor divide el texto en fragmentos basados en la opción Tokens por fragmento de texto (si se especifica) o el tamaño de fragmento configurado en la Admin Console.
Si el texto está en formato JSONL (JSON Lines), donde cada línea es un objeto JSON válido, el servidor detecta automáticamente este formato y trata cada línea como una unidad semántica separada: cada línea se divide por separado, pero las líneas nunca se fusionan. Esto ayuda a mejorar la precisión de recuperación de datos estructurados, como los añadidos desde una tabla de FileMaker, donde cada registro se puede formatear como una sola línea JSON, asegurando que se preserven los límites de registro.
-
Por último, el servidor obtiene vectores de incrustación para todos los fragmentos mediante el modelo de incrustación de texto configurado para RAG en el servidor.
-
-
Si se especifica un Objetivo de respuesta, el servidor de modelo de IA devuelve un objeto JSON que contiene el ID del documento y los metadatos para el documento añadido. Esto le permite almacenar el ID del documento para su uso posterior (como eliminar el documento).
El objeto JSON devuelto contiene estas claves:
-
id: el ID del documento asignado por el servidor de modelo de IA como un identificador único universal (UUID) codificado en hexadecimal. Para obtener más información sobre el formato de identificación, consulte la sección Notas. -
model: el modelo de incrustación utilizado por el servidor de modelo de IA para generar vectores de incrustación para el documento. -
rag_space_id: el ID del espacio RAG al que se añadió el documento. -
resultoerror:-
result: el estado del documento añadido cuando no hay error. Para documentos transferidos sincrónicamente con éxito, el valor es"ok". Para los documentos transferidos de forma asíncrona, el valor es una cadena que incluye el Space ID y el nombre del archivo almacenado en caché, porque el proceso aún no se ha completado. -
error: una cadena de mensaje de error cuando el servidor de modelo de IA encuentra un error.
-
-
text o file, dependiendo de la opción para Datos RAG:
-
text: el texto del documento cuando se añade usando la opción Desde texto para Datos RAG. -
file: el nombre del archivo PDF cuando se añade usando las opciones de archivo o contenedor para Datos RAG.
-
-
usage: información de uso de tokens cuando un documento se transfiere de forma sincrónica. El objeto JSON devuelto es{"prompt_tokens":<number>, "total_tokens":<number>}, dondeprompt_tokenses el número de tokens en la entrada (los fragmentos de texto que se incrustaron) ytotal_tokenses el número total de tokens procesados. Si el servidor de modelo de IA está configurado para no registrar el uso de tokens, no se devuelven recuentos de tokens.
Nota Para los documentos transferidos de forma asíncrona, las claves
rag_space_id,modelyusagedevuelven"N/A"porque estos valores no están disponibles hasta que se complete el procesamiento. -
Acción Enviar indicación
Esta acción envía la indicación de usuario al servidor de modelo de IA para obtener los datos más pertinentes del espacio RAG especificado y, a continuación, envía la indicación de usuario junto con la plantilla de indicaciones y el contenido RAG al modelo de IA. El proceso sigue estos pasos:
-
El paso de guión envía la indicación especificada por Enviar indicación y el ID de espacio al servidor de modelo de IA especificado por Nombre de cuenta RAG.
-
El servidor de modelo de IA obtiene vectores de incrustación para la indicación, realiza una búsqueda semántica de la indicación en el espacio RAG especificado y, a continuación, devuelve los resultados RAG al paso de guión.
Los resultados de RAG son los N principales fragmentos de documentos más relevantes del espacio RAG como texto (N se puede configurar en la Admin Console o anular con la opción Parámetros como se muestra a continuación).
-
El paso de guión envía la indicación y su plantilla, el modelo Parámetros, y los resultados RAG al modelo especificado por Nombre de cuenta de IA y Modelo.
-
El modelo devuelve una respuesta que el paso de guión almacena en Objetivo de respuesta.
Parámetros del servidor de modelo de IA
Para la opción Parámetros, puede usar las siguientes claves y valores, que son específicos del servidor de modelo de IA, para ajustar el comportamiento de este paso de guión. Si se especifican, estos valores anulan los establecidos en la Admin Console. Esto es útil cuando diferentes indicaciones requieren diferentes niveles de precisión o tamaño de contexto (por ejemplo, consultar un conjunto de documentos grande en lugar de uno pequeño). Si no se especifica una clave, se utilizan los valores configurados en la Admin Console.
|
Clave de parámetro |
Descripción |
Rango de valores |
|
|
Puntuación mínima de similitud de coseno para los resultados de RAG que se incluirán en el contexto. Los valores más altos devuelven menos resultados, pero más relevantes. |
De -1 a 1 |
|
|
Número total máximo de fragmentos de documentos de mejor clasificación para incluir en el contexto enviado al modelo de IA. Un valor de 0 no incluye contenido RAG. |
De 1 a 100 |
Por ejemplo, este objeto JSON establece todas las claves en la opción Parámetros:
{
"similarity_threshold" : .5,
"num_top_ranked_results" : 10
}
Acción Eliminar datos
Esta acción elimina documentos de un espacio RAG. Si se indica en la opción Parámetros, solo se eliminan los documentos especificados; de lo contrario, se eliminan todos los documentos del espacio RAG.
Nota La eliminación de documentos de un espacio RAG no puede deshacerse. Asegúrese de conservar los documentos originales en otro lugar por si necesita añadirlos de nuevo.
Notas
-
Debe configurarse una cuenta RAG mediante paso de guión Configurar cuenta RAG antes de utilizar este paso de guión.
-
Para las acciones Enviar indicación, también debe configurarse una cuenta de IA mediante el paso de guión Configurar cuenta de IA.
-
Los archivos PDF con cifrado o protección por contraseña no pueden procesarse con la acción Añadir datos.
-
Los espacios RAG son persistentes y conservan sus documentos hasta que se eliminan explícitamente mediante la acción Eliminar datos.
-
Si añade un archivo PDF con el mismo nombre de archivo que uno existente en el espacio RAG, el archivo PDF existente se elimina y el nuevo se añade con un nuevo ID de documento. Este comportamiento es el mismo tanto si añade el archivo PDF a través de una ruta como si lo hace a través de un campo contenedor.
-
Los documentos añadidos a un espacio RAG antes de la versión 26.0.1 del servidor de modelo de IA tienen ID de documento numérico (por ejemplo,
1,2,3). A partir de la versión 26.0.1, los ID de documento son cadenas UUID (por ejemplo,"5f7677a0-3258-55a3-bc86-737005cb3574"). Al trabajar con espacios RAG que contienen documentos agregados antes y después del cambio de formato de identificación, sus guiones deben manejar ambos formatos de identificación de documento.Consulte Ejemplo 3.
-
Si especifica un Nombre de plantilla de indicaciones, este paso de guión utiliza la plantilla configurada a través del paso de guión Configurar plantilla de indicaciones. Las plantillas de indicación pueden usar constantes como
:question:(reemplazadas por el valor Enviar indicación) y:context:(reemplazadas con los fragmentos de documentos recuperados mediante RAG del espacio RAG). -
Para la opción Tokens por fragmento de texto:
-
Los tamaños de fragmentos más grandes conservan más contexto, pero pueden reducir la precisión de recuperación. Los tamaños de fragmentos más pequeños mejoran la precisión, pero pueden perder el contexto. Considere el uso de valores más grandes (por ejemplo, de 250 a 300) para idiomas como japonés, chino o coreano, donde la tokenización produce menos caracteres por token, por lo que un recuento fijo de tokens cubre significativamente menos texto.
-
Para cambiar el tamaño de fragmento de los documentos existentes en un espacio RAG, debe eliminar los documentos del espacio RAG y añadirlos de nuevo con un nuevo tamaño de fragmento.
-
Si especifica un valor fuera del rango válido, este paso de guión devuelve el código de error 887 ("Acción de espacio de RAG no válida").
-
-
La calidad de las respuestas de la IA depende del modelo y de la pertinencia y la calidad de los documentos añadidos al espacio RAG.
-
En FileMaker WebDirect, cuando este paso de guión utiliza la acción Añadir datos y Datos RAG se ha establecido en Desde archivo o Desde archivo (asinc.), se abre el cuadro de diálogo Insertar para que el usuario elija un archivo PDF que cargar; se omite la opción Archivo de entrada.
Ejemplo 1 - Añadir texto a un espacio RAG
Añade contenido de texto a un espacio RAG para una base de información de clientes.
Configurar cuenta RAG [ Nombre de cuenta RAG: "cuenta-rag-atención-cliente" ; Punto de conexión: "https://myserver.example.com/llm/v1/" ; Clave de API: "eyJh..." ; Verificar certificados SSL ]
Ejecutar acción RAG [ Nombre de cuenta RAG : "cuenta-rag-atención-cliente" ; ID de espacio: "base-información" ; Acción: Añadir datos; Datos RAG: Desde texto ; "Políticas y procedimientos de atención al cliente para la gestión de devoluciones y cambios..." ]
Ejemplo 2 - Enviar una indicación para consultar un espacio RAG
Envía una indicación para consultar el mismo espacio RAG que en el Ejemplo 1 y almacena la respuesta en un campo.
El guión configura tanto la cuenta RAG como la cuenta de IA para usar el servidor de modelo de IA.
La variable $parameters incluye similarity_threshold establecido en 0,6 para garantizar que solo se incluyan los resultados RAG altamente relevantes, y num_top_ranked_results establecido en 5 para limitar el contexto a los 5 fragmentos de documento más relevantes, anulando los valores predeterminados configurados en la Admin Console. También incluye CURLOPT_TIMEOUT para cancelar la solicitud después de 30 segundos si no hay respuesta.
Cuando envía la indicación, el guión envía los parámetros temperature y max_tokens al modelo para la generación de respuestas y transmite la respuesta a un campo.
Configurar cuenta RAG [ Nombre de cuenta RAG: "cuenta-rag-atención-cliente" ; Punto de conexión: "https://myserver.example.com/llm/v1/" ; Clave de API: Global::RAG_API_Key ; Verificar certificados SSL ]
Configurar cuenta de IA [ Nombre de cuenta: "AI_Model_Server" ; Proveedor de modelos: Personalizado ; Punto de conexión: "https://myserver.example.com/llm/v1/" ; Clave de API: Global::Text_Gen_API_Key ; Verificar certificados SSL ]
Establecer variable [ $parameters ; Valor:
JSONSetElement ( "{}" ;
[ "temperature" ; .3 ; JSONNumber ] ;
[ "max_tokens" ; 500 ; JSONNumber ] ;
[ "similarity_threshold" ; .6 ; JSONNumber ] ;
[ "num_top_ranked_results" ; 5 ; JSONNumber ]
)
]
Ejecutar acción RAG [ Nombre de cuenta RAG: "cuenta-rag-atención-cliente" ; Space ID: "knowledge-base" ; Acción: Enviar indicación ; Enviar indicación: "¿Cuál es la política de devoluciones para productos defectuosos?" ; Nombre de cuenta de IA: "Servidor_modelos_IA" ; Modelo: Global::NombreModelo; Transmisión: Activo; Objetivo de respuesta: Atención_cliente::Respuesta_IA ; Parámetros: $parameters ]
Un posible resultado en el campo Asistencia_cliente::Respuesta_IA empezaría por "La política de devolución de productos defectuosos le permite devolver el artículo en un plazo de 14 días naturales".
Ejemplo 3 - Añadir y eliminar un archivo PDF de un espacio RAG
Añade un archivo PDF llamado Políticas.pdf a un espacio RAG y, a continuación, lo elimina.
Tras configurar la cuenta RAG que se va a utilizar en el servidor de modelos de IA, el guión añade el archivo Políticas.pdf al espacio RAG especificando su ruta de archivo. Antes de poder eliminar el archivo, el guión debe encontrar el ID de documento que se asignó cuando se añadió el archivo. El ID del documento es devuelto por Objetivo de respuesta y almacenado en $ragAddResponse. Por ejemplo:
{
"file": "Políticas.pdf",
"id": "f95d4266-66cd-5b50-a01b-07a4dd66c501",
"model": "multi-qa-MiniLM-L6-cos-v1",
"rag_space_id": "knowledge-base",
"result": "ok",
"usage": {
"prompt_tokens": 3803,
"total_tokens": 3803
}
}
Primero, el guión obtiene el ID del documento de $ragAddResponse y lo almacena en $id. También obtiene el tipo de datos del ID usando la función JSONGetElementType y lo almacena en $idType. El tipo de datos será JSONString para UUID o JSONNumber para ID numéricos (consulte Notas para obtener detalles sobre los formatos de ID).
A continuación, el guión construye la variable $idArrayToRemove como un objeto JSON con una clave id cuyo valor es una matriz que contiene el ID del documento a eliminar. Al añadir el ID a la matriz, el guión utiliza $idType para preservar el tipo de datos original de $ragAddResponse. Este enfoque garantiza que el guión funcione correctamente independientemente del formato de identificación que utilice el servidor de modelo de IA.
Finalmente, el guión llama a Ejecutar acción RAG para eliminar los datos estableciendo la opción Parámetros en $idArrayToRemove.
Configurar cuenta RAG [ Nombre de cuenta RAG: "cuenta-rag-atención-cliente" ; Punto de conexión: "https://myserver.example.com/llm/v1/" ; Clave de API: Global::RAG_API_Key ; Verificar certificados SSL ]
Ejecutar acción RAG [ Nombre de cuenta RAG: "cuenta-rag-atención-cliente" ; Space ID: "knowledge-base" ; Acción: Añadir datos ; Datos RAG: Desde archivo ; "Políticas.pdf" ; Objetivo de respuesta: $ragAddResponse ]
Establecer variable [ $id ; Valor: JSONGetElement ( $ragAddResponse ; "id" ) ]
Establecer variable [ $idType ; Valor: JSONGetElementType ( $ragAddResponse ; "id" ) ]
Establecer variable [ $idArrayToRemove ; Valor:
JSONSetElement ( "{}" ; "id" ;
JSONSetElement ( "[]" ; 0 ; $id ; $idType ) ;
JSONArray
)
]
Ejecutar acción RAG [ Nombre de cuenta RAG: "cuenta-rag-atención-cliente" ; Space ID: "knowledge-base" ; Acción: Eliminar datos ; Parámetros: $idArrayToRemove ]
Ejemplo 4 - Añadir documentos con diferentes tamaños de fragmentos
Añade documentación en inglés y japonés al mismo espacio RAG, utilizando diferentes tamaños de fragmentos optimizados para cada idioma.
El guión utiliza un tamaño de fragmento más pequeño (150 tokens) para la documentación técnica en inglés, para permitir la recuperación precisa de detalles técnicos específicos.
Para la documentación reglamentaria japonesa, el guión utiliza un tamaño de fragmento más grande (300 tokens) porque la tokenización japonesa produce segmentos de texto más cortos por token, lo que requiere más tokens para preservar un contexto adecuado. El guión también selecciona la opción Detectar texto vertical para mejorar la extracción de texto vertical de este archivo PDF.
Configurar cuenta RAG [ Nombre de cuenta RAG: "product-docs-rag-account" ; Punto de conexión: "https://myserver.example.com/llm/v1/" ; Clave de API: Global::RAG_API_Key ; Verificar certificados SSL ]
Ejecutar acción RAG [ Nombre de cuenta RAG: "product-docs-rag-account" ; Space ID: "product-knowledge" ; Acción: Añadir datos ; Datos RAG: Desde archivo ; "TechnicalSpecs_EN.pdf" ; Tokens por fragmento de texto: 150 ]
Ejecutar acción RAG [ Nombre de cuenta RAG: "product-docs-rag-account" ; Space ID: "product-knowledge" ; Acción: Añadir datos ; Datos RAG: Desde archivo ; "Regulations_JA.pdf" ; Detectar texto vertical ; Tokens por fragmento de texto: 300 ]
Ejemplo 5 - Añadir registros como texto JSONL
Añade registros de preguntas frecuentes de una tabla de FileMaker a un espacio RAG utilizando el formato JSONL, donde cada línea representa un registro de preguntas frecuentes completo.
El guión recorre los registros de la tabla de preguntas frecuentes y genera una cadena de texto JSONL en la que cada línea es un objeto JSON que contiene el ID de la pregunta, la pregunta y la respuesta. Cuando este texto con formato JSONL se añade al espacio RAG, el servidor de modelo de IA detecta automáticamente el formato y trata cada línea (cada registro de preguntas frecuentes) como una unidad semántica separada, preservando los límites de registro y mejorando la precisión de la recuperación.
Configurar cuenta RAG [ Nombre de cuenta RAG: "cuenta-rag-atención-cliente" ; Punto de conexión: "https://myserver.example.com/llm/v1/" ; Clave de API: Global::RAG_API_Key ; Verificar certificados SSL ]
Establecer variable [ $jsonlText ; Valor: "" ]
Ir a la presentación [ "FAQ" (FAQ) ; Animación: Ninguna ]
Ir al registro/petición/página [ Primero ]
Loop [ Flush: Siempre ]
Establecer variable [ $jsonLine ; Valor:
JSONSetElement ( "{}" ;
[ "id" ; FAQ::IDPregunta ; JSONString ] ;
[ "pregunta" ; FAQ::Pregunta ; JSONString ] ;
[ "respuesta" ; FAQ::Respuesta ; JSONString ]
)
]
Establecer variable [ $jsonlText ; Valor: $jsonlText & $jsonLine & ¶ ]
Ir al registro/petición/página [ Siguiente ; Salir después del último: Activo ]
End Loop
Ejecutar acción RAG [ Nombre de cuenta RAG: "cuenta-rag-atención-cliente" ; Space ID: "knowledge-base" ; Acción: Añadir datos ; Datos RAG: Desde texto ; $jsonlText ; Objetivo de respuesta: $ragResponse ]
La variable $jsonlText resultante contiene texto con formato JSONL como:
{"id":"001","pregunta":"¿Cuál es vuestra política de devoluciones?","respuesta":"Los artículos se pueden devolver en un plazo de 30 días..."}
{"id":"002","pregunta":"¿Cómo puedo hacer un seguimiento de mi pedido?","respuesta":"Puede seguir su pedido utilizando el número de seguimiento..."}
{"id":"003","pregunta":"¿Se realizan envíos al extranjero?","respuesta":"Sí, realizamos envíos a más de 100 países de todo el mundo..."}
Si una línea es lo suficientemente corta, el servidor del modelo de IA la convierte en un solo fragmento. Si una línea excede el límite de tokens por fragmento de texto, la línea se divide en varios fragmentos. Debido a que las líneas nunca se fusionan, al consultar el espacio RAG, los fragmentos recuperados solo contendrán contenido de un solo registro de preguntas frecuentes, lo que facilita la identificación de qué registro proporcionó la información relevante.