Al habilitar la función de texto enriquecido, las respuestas de los modelos de lenguaje grande (LLM) pueden incluir imágenes, tablas y bloques de código extraídos de sus documentos fuente, no solo texto sin formato.
Cómo funciona
Durante la indexación, el pipeline de RAG extrae elementos de texto enriquecido (imágenes, tablas y código) de cada documento y los guarda como etiquetas de texto enriquecido junto con los fragmentos de texto correspondientes. Cuando se envía una consulta mediante la API SearchKnowledge:
Open Search recupera los fragmentos relevantes, incluidas las etiquetas de texto enriquecido integradas.
El LLM genera una respuesta con los fragmentos recuperados. Las etiquetas de texto enriquecido se conservan en la respuesta.
Según el valor que establezca en
rich_text_strategy, Open Search procesa las etiquetas en línea (Markdown) o devuelve el contenido sin procesar por separado para que su aplicación lo renderice.
Habilitar la función de texto enriquecido
Configure el parámetro rich_text_strategy en la pestaña Other Parameters de la página Q&A Test. Deje el campo en blanco para deshabilitar el texto enriquecido.
La lista desplegable rich_text_strategy ofrece dos opciones: inside_response (integra el contenido de texto enriquecido en línea dentro del cuerpo de la respuesta) y extend_response (devuelve el contenido de texto enriquecido como extensión).
El arreglodataen la respuesta puede incluir elementos con"type": "IMAGE". Estos son resultados de imágenes de la fase de recuperación, no generados por la función de texto enriquecido. Las imágenes generadas por texto enriquecido aparecen endata.answer(parainside_response) o endata.rich_text_ref(paraextend_response), y tienen mayor relevancia contextual que las imágenes de la fase de recuperación.
Elegir una estrategia
El parámetro rich_text_strategy acepta dos valores. Elija según cómo su aplicación renderiza el contenido:
|
Estrategia |
Formato de respuesta |
Entrega de texto enriquecido |
Recomendada para |
|
|
Markdown |
En línea en |
Aplicaciones que renderizan Markdown de forma nativa |
|
|
Texto sin formato |
Por separado en |
Aplicaciones con lógica de renderizado personalizada |
Configurar el parámetro
Agregue rich_text_strategy al objeto options.chat en su solicitud de la API SearchKnowledge:
{
"question": {
"text": "How do I configure a sensitive data identification rule?",
"type": "TEXT"
},
"options": {
"chat": {
"rich_text_strategy": "inside_response"
}
}
}
Referencia de parámetros de la API
Este parámetro pertenece a la operación de la API SearchKnowledge.
|
Parámetro |
Tipo |
Obligatorio |
Descripción |
|
|
String |
No |
Estrategia de procesamiento de texto enriquecido. Si está ausente o en blanco, el texto enriquecido se deshabilita y se usa el método de procesamiento predeterminado. Valores válidos: |
Analizar la respuesta
inside_response
Analice data.answer como Markdown. Las etiquetas de texto enriquecido se resuelven en línea; las tablas aparecen como HTML dentro del Markdown. Ignore el campo rich_text_ref.
extend_response
Analice data.answer como texto sin formato. La respuesta contiene marcadores de posición de texto enriquecido con el formato [^<id>^]. Busque cada ID de marcador de posición en el arreglo data.rich_text_ref y reemplácelo con el contenido correspondiente.