- Crear una actividad de extracción basada en prompts.
- Configurar una conexión LLM.
- Escribir prompts de extracción eficaces.
- Definir el formato y la estructura de salida.
- Aplicar estrictitud y reglas de validación.
- Probar y perfeccionar la extracción.
- Extracción de información del proveedor a partir de facturas
- Captura de datos de documentos a nivel de encabezado
- Procesamiento de documentos semiestructurados
- Documentos con diseños variables
Requisitos previos
Antes de comenzar, asegúrese de contar con lo siguiente:- Acceso a ABBYY Vantage Advanced Designer.
- Una conexión LLM configurada. Consulte Configurar conexiones LLM.
- Una Skill de documento con documentos de muestra cargados.
- Conocimientos básicos de la estructura JSON.
- Definiciones de campos para los datos que desea extraer.
Esta guía se centra en la extracción de campos del encabezado. Las capacidades de extracción de tablas pueden variar.
Introducción a extracción basada en prompts
¿Qué es la extracción basada en prompts?
La extracción basada en prompts utiliza LLMs para comprender y extraer datos de documentos a partir de instrucciones en lenguaje natural. Se definen los siguientes elementos:- Rol: La función que debe asumir el LLM (por ejemplo, “modelo de extracción de datos”).
- Instrucciones: Cómo extraer y dar formato a los datos.
- Estructura de salida: El formato JSON exacto de los resultados.
- Reglas: Directrices para gestionar datos ambiguos o ausentes.
Paso 1: Agregue una actividad basada en prompts
Cree una nueva actividad de extracción basada en prompts en su Skill de documento.- Abra su Skill de documento en ABBYY Vantage Advanced Designer.
- En el panel izquierdo, localice EXTRACT FROM TEXT (NLP). Este grupo también incluye las actividades de extracción Named Entities (NER) y Deep Learning.
- Busque y haga clic en Prompt-based.

- La actividad aparece en el lienzo de su flujo de trabajo.
- Conéctela entre sus actividades Input y Output.
Paso 2: Configurar la conexión LLM
Seleccione qué conexión LLM debe usar esta actividad.- Seleccione la actividad basada en prompts en su flujo de trabajo.
- En el panel Activity Properties de la derecha, busque conexión LLM.
- Haga clic en el menú desplegable.

- Seleccione en la lista la conexión LLM que haya configurado.
- Ejemplo:
Nick-ChatGPT,Microsoft Foundry,Production GPT-5.6 - Si su tenant cuenta con la licencia de ABBYY Phoenix Plus, en esta lista también aparecerá ABBYY Phoenix Model. La provisiona ABBYY, no requiere credenciales ni configuración propias, y no se puede editar ni eliminar. Consulte LLMs en ABBYY Vantage.
- Ejemplo:
- Compruebe que la conexión esté seleccionada.
Si no aparece ninguna conexión en la lista, agregue primero una en ADMIN → Configuration → Connections. Como alternativa, consulte a su ABBYY account team sobre ABBYY Phoenix Plus, que proporciona una conexión prediseñada sin necesidad de una cuenta propia con un provider. Para obtener más información, consulte Configurar conexiones LLM.
Paso 3: Defina los campos de salida
Configure los campos que desea extraer antes de escribir el prompt.- En el panel Activity Properties, ubique la sección Output.
- Verá una lista jerárquica de grupos de campos y campos.
- Para este ejemplo, extraeremos información del proveedor:
- Vendor
- Name
- Address
- TaxID
- Account Number
- Sort Code
- IBAN
- BIC_SWIFT
- Business Unit
- Name
- Address
- Invoice Date
- Invoice Number
- Totals
- Net Amount
- Vendor

- Haga clic en el botón Activity Editor para comenzar a configurar el prompt.
Paso 4: Redacte la definición del rol
Defina qué rol debe desempeñar el LLM al procesar documentos.- En el Activity Editor, verá la interfaz Prompt Text
- Empiece por la sección ROLE:

- Sé específico: “modelo de extracción de datos” le indica al LLM cuál es su propósito.
- Define el alcance: “campos relacionados con el Proveedor” limita qué extraer.
- Establece expectativas: “texto del valor tal cual” evita que se reformatee.
- Gestiona los datos faltantes: “Omite cualquier campo que no esté claramente presente”.
- Mantén el rol claro y conciso.
- Usa instrucciones imperativas (“Extrae”, “No infieras”).
- Deja claro lo que NO debe hacerse.
- Define cómo manejar los casos límite.
Paso 5: Definir el formato de salida
Indique la estructura JSON exacta de los resultados de extracción.- Debajo de la sección ROLE, agregue el encabezado FORMATO DE SALIDA.
- Defina la estructura JSON:

- FieldName: Debe coincidir exactamente con las definiciones de sus campos (p. ej.,
Vendor.Name). - Text: El valor extraído como una cadena.
- Line: Índice de línea de base 0 donde aparece el valor en el documento.
- Use los nombres exactos de los campos de la configuración de su actividad Output.
- Incluya todos los campos, aunque algunos puedan estar vacíos.
- La estructura debe ser un JSON válido.
- Los números de línea ayudan con la verificación y la resolución de problemas.
Paso 6: Agregar reglas de extracción específicas para cada campo
Proporciona instrucciones detalladas para la extracción de cada campo. Debajo de OUTPUT FORMAT, agrega reglas específicas para cada tipo de campo:
- Patrones de reconocimiento: Enumera etiquetas alternativas para cada campo.
- Especificaciones de formato: Describe el formato exacto que debe extraerse.
- Indicaciones de ubicación: Dónde suelen encontrarse los datos.
- Exclusiones: Qué NO extraer.
- Numera las reglas para mayor claridad.
- Proporciona varias variantes de etiquetas.
- Especifica a quién corresponden los datos (proveedor o cliente).
- Incluye ejemplos de formato entre paréntesis.
- Sé explícito con los campos relacionados (por ejemplo, “Ignora el IBAN: tiene su propio campo”).
Step 7: Aplicar reglas de estrictitud
Agregue reglas de validación para garantizar la calidad y la consistencia de los datos. Al final de su prompt, agregue una sección de STRICTNESS:
- Evita las alucinaciones: Los LLM pueden generar datos plausibles pero incorrectos.
- Garantiza la consistencia: Las reglas claras reducen la variación entre ejecuciones.
- Gestiona la ausencia de datos: Define qué hacer cuando no se encuentran campos.
- Mantiene la integridad de los datos: La extracción literal conserva el formato original.
- No generar nunca datos que no estén en el documento.
- Omitir las extracciones inciertas en lugar de hacer suposiciones.
- Devolver una estructura vacía si no se encuentra ningún campo.
- Respetar exactamente los nombres de los campos.
- Conservar el formato original del texto.
Paso 8: Seleccionar el formato del documento
Elija qué representación del documento enviar al LLM.- En el Activity Editor, localice el menú desplegable Prompt.
- Verá opciones sobre cómo se proporciona el documento al LLM.

-
PDF: Archivo PDF original
- Uso: Documentos en los que la estructura es fundamental
- Consideraciones: Mayor tamaño de archivo; algunos LLM tienen compatibilidad limitada con PDF
-
Texto sin formato: Extracción de texto sin formato
- Uso: Documentos sencillos de solo texto
- Consideraciones: Pierde todo el formato y la información de estructura
-
Annotated Text ⭐ (Recomendado)
- Uso: La mayoría de los tipos de documento
- Consideraciones: Conserva la estructura en un formato basado en texto
- Beneficios: El mejor equilibrio entre estructura y rendimiento
-
Texto con formato: Texto con formato básico conservado
- Uso: Documentos en los que parte del formato es importante
- Consideraciones: Punto intermedio entre Plain y Annotated
- Seleccione Annotated Text para obtener los mejores resultados
Paso 9: Pruebe la extracción
Ejecute la actividad con documentos de ejemplo para verificar los resultados.Ejecute la actividad
- Cierre el Activity Editor.
- Vaya a la pestaña All Documents.
- Seleccione un documento de prueba.
- Haga clic en el botón Test Activity o Run.

- Espere a que el LLM procese el documento
- Tiempo de procesamiento: normalmente, entre 5 y 30 segundos, según la complejidad del documento.
- Verá un indicador de carga mientras espera la respuesta de la API.
Revisar resultados
Una vez finalizado el procesamiento:- La interfaz cambia a la vista Predictive.
- Revise el panel Output, que muestra los campos extraídos.
- Haga clic en cada campo para ver:
- Valor extraído
- Confianza (si se proporciona)
- Región resaltada en la imagen del documento

- ✅ Todos los campos esperados tienen valor
- ✅ Los valores coinciden exactamente con el documento
- ✅ No hay datos alucinados ni inferidos
- ✅ Manejo adecuado de campos multilínea
- ✅ Los campos que faltan se omiten (no se rellenan con datos incorrectos)
Patrones de resultados comunes
Extracción exitosa:Paso 10: Refina tu prompt
Ajusta tu prompt en función de los resultados de las pruebas.Problemas comunes y soluciones
Problema: el LLM extrae el campo equivocado- Solución: Añada pistas de ubicación más específicas.
- Ejemplo: “Solo del lado del Proveedor; excluya las direcciones del cliente/comprador”
- Solución: Enfatice la extracción literal.
- Ejemplo: “Extraiga el formato numérico exactamente como aparece impreso (p. ej., ‘12-34-56’)”
- Solución: Refuerce las reglas de estrictitud.
- Ejemplo: “No genere ni infiera valores nunca. Omítalos si no están presentes.”
- Solución: Especifique las secuencias de escape.
- Ejemplo: “Para valores multilínea, use
\npara los saltos de línea”
- Solución: Verifique que los nombres de campo coincidan exactamente.
- Ejemplo: Use
Vendor.Account Numbery noAccountNumber
Proceso de mejora iterativa
- Pruebe con varios documentos: No optimice basándose en un solo ejemplo.
- Documente patrones: Anote qué reglas funcionan y cuáles necesitan ajustes.
- Agregue ejemplos específicos: Incluya ejemplos de formato entre paréntesis.
- Refine la estrictitud: Ajústela según los patrones de sobreextracción o subextracción.
- Pruebe casos límite: Use documentos con campos faltantes o diseños inusuales.
Ejemplos de mejoras
Antes:Entender el proceso de extracción
Cómo funciona la Extracción basada en prompts
- Conversión del documento: Su documento se convierte al formato seleccionado (se recomienda Annotated Text).
- Ensamblado del prompt: Se combinan su rol, el formato de salida, las reglas de campo y las reglas de estrictitud.
- Llamada de API: El prompt y el documento se envían al LLM a través de su conexión.
- Procesamiento del LLM: El LLM lee el documento y extrae los datos de acuerdo con sus instrucciones.
- Respuesta JSON: El LLM devuelve datos estructurados en el formato JSON especificado.
- Asignación de campos: Vantage asigna la respuesta JSON a los campos de salida definidos.
- Verificación: Los números de línea y las puntuaciones de confianza (si se proporcionan) ayudan a verificar la exactitud.
Uso de tokens y costos
Factores que afectan el costo:- Longitud del documento: Los documentos más largos usan más tokens.
- Complejidad del prompt: Los prompts detallados aumentan la cantidad de tokens.
- Elección del formato: Annotated Text suele ser más eficiente que PDF.
- Número de campos: Más campos = prompts más largos.
- Usa un lenguaje conciso, pero claro, en los prompts.
- No dupliques las instrucciones.
- Elimina los ejemplos innecesarios.
- Considera agrupar los campos de datos relacionados.
Buenas prácticas
Redacción de prompts
Haz lo siguiente:- ✅ Usa instrucciones claras y en imperativo (“Extrae”, “Reconoce”, “Omite”).
- ✅ Proporciona varias variantes de etiqueta para cada campo.
- ✅ Incluye ejemplos de formato entre paréntesis.
- ✅ Especifica qué NO extraer (exclusiones).
- ✅ Numera tus reglas para poder consultarlas fácilmente.
- ✅ Usa una terminología uniforme en todo el texto.
- ❌ Uses instrucciones vagas (“obtén el nombre”).
- ❌ Supongas que el LLM conoce convenciones propias del dominio.
- ❌ Escribas oraciones demasiado largas y complejas.
- ❌ Te contradigas en distintas secciones.
- ❌ Omitas las reglas de estrictitud.
Definiciones de campos
Instrucciones eficaces para los campos:- Comience con patrones de reconocimiento (etiquetas alternativas).
- Especifique el formato exacto que se debe conservar.
- Proporcione indicaciones de ubicación (posición habitual).
- Defina la pertenencia de los datos (Proveedor frente a cliente).
- Incluya el tratamiento de valores multilínea.
- Remítase a campos relacionados para evitar confusiones.
Estrategia de pruebas
- Empiece con documentos sencillos: Primero pruebe la extracción básica.
- Amplíe las pruebas a distintas variaciones: Pruebe diferentes diseños y formatos.
- Pruebe casos límite: campos faltantes, posiciones inusuales, múltiples coincidencias.
- Documente los fallos: Conserve ejemplos de los casos en que falla la extracción.
- Itere de forma sistemática: Cambie solo una cosa a la vez.
Optimización del rendimiento
Para la velocidad:- Mantén los prompts concisos.
- Usa el formato Annotated Text.
- Minimiza el número de campos por actividad.
- Considera dividir los documentos complejos.
- Proporciona reglas exhaustivas para los campos.
- Incluye ejemplos de formato.
- Agrega reglas de estrictitud claras.
- Haz pruebas con muestras de documentos diversas.
- Optimiza la longitud del prompt.
- Usa formatos de documento eficientes.
- Almacena en caché los resultados cuando corresponda.
- Supervisa el uso de tokens desde el panel del proveedor de LLM.
Solución de problemas
Problemas de extracción
Problema: Los campos están vacíos aunque los datos estén presentes. Soluciones:- Compruebe que la ortografía del nombre del campo coincida exactamente.
- Verifique que los datos estén en el formato de documento seleccionado.
- Añada más variaciones de etiquetas a los patrones de reconocimiento.
- Reduzca temporalmente la estrictitud para ver si el LLM los encuentra.
- Compruebe si la calidad del documento afecta al OCR o a la extracción de texto.
- Refuerce las especificaciones del proveedor.
- Añada exclusiones explícitas para los datos del cliente/comprador.
- Proporcione indicaciones de ubicación (por ejemplo, “parte superior del documento”, “sección del emisor”).
- Incluya ejemplos de extracción correcta e incorrecta.
- Especifique explícitamente el formato de la secuencia de escape (
\n). - Proporcione ejemplos de salida multilínea correcta.
- Verifique que el formato del documento conserve los saltos de línea.
- Añada la instrucción: “Conserve los saltos de línea originales usando
\n”.
- Destaque “literalmente” y “exactamente como está impreso”.
- Añada una regla de estrictitud: “Sin normalización ni inferencia”.
- Proporcione ejemplos específicos que muestren la conservación del formato.
- Incluya ejemplos negativos: “No ‘12-34-56’, manténgalo como ‘12 34 56’”.
Problemas de rendimiento
Problema: La extracción es demasiado lenta. Soluciones:- Cambie al formato Annotated Text si usa PDF.
- Simplifique el prompt sin perder instrucciones clave.
- Reduzca la resolución del documento si las imágenes son muy grandes.
- Compruebe el estado del proveedor de LLM y los límites de tasa.
- Considere usar un modelo más rápido para documentos sencillos.
- Refuerce las reglas de estrictitud.
- Haga que las instrucciones sean más específicas y claras.
- Añada más ejemplos de formato.
- Reduzca la complejidad del prompt para evitar interpretaciones.
- Pruebe valores de temperatura más altos (si están disponibles en la conexión).
- Optimice la longitud del prompt.
- Use Annotated Text en lugar de PDF.
- Procese documentos en lotes durante las horas de menor actividad.
- Considere usar modelos más pequeños o más económicos para documentos sencillos.
- Supervise y configure alertas de presupuesto en el panel del proveedor de LLM.
Técnicas avanzadas
Extracción condicional
Puede indicarle al LLM que extraiga determinados campos solo si se cumplen ciertas condiciones:Compatibilidad multilingüe
La extracción basada en prompts funciona bien con documentos multilingües:Reglas de Validación
Añada lógica de validación a sus prompts:Relaciones entre campos
Especifique cómo se relacionan los campos entre sí:Limitaciones y consideraciones
Capacidades actuales
Admitido:- ✅ Extracción de campos a nivel de encabezado
- ✅ Valores de una sola línea y multilínea
- ✅ Varios campos por documento
- ✅ Lógica de extracción condicional
- ✅ Documentos en varios idiomas
- ✅ Formatos de documento variables
- ⚠️ Extracción de tablas (varía según la implementación)
- ⚠️ Estructuras complejas anidadas
- ⚠️ Documentos muy grandes (límites de tokens)
- ⚠️ Procesamiento en tiempo real (latencia de la API)
- ⚠️ Resultados deterministas garantizados
Cuándo usar la extracción basada en prompts
Para obtener orientación sobre cuándo la extracción basada en prompts encaja bien y cuándo conviene optar por la extracción tradicional, consulte Cuándo usar LLMs.Integración con Skills de documento
Uso de los datos extraídos
Después de finalizar la extracción, los datos de los campos están disponibles en todo el Skill de documento:- Actividades de validación: Permiten aplicar reglas de negocio a los valores extraídos.
- Actividades de script: Permiten procesar o transformar los datos extraídos.
- Actividades de exportación: Permiten enviar datos a sistemas externos.
- Interfaz de revisión: Permite verificar manualmente los campos extraídos.
Combinación con otras actividades
La extracción basada en prompts puede utilizarse junto con otras actividades:Asignación de campos
Los campos JSON extraídos se asignan automáticamente a los campos de salida que haya definido:"FieldName": "Vendor.Name"→ Se asigna al campo de salidaVendor.Name.- La jerarquía de campos se conserva en la estructura de salida.
- Los números de línea ayudan en la verificación y la solución de problemas.
Resumen
Has completado correctamente lo siguiente:- ✅ Creaste una actividad de extracción basada en prompts.
- ✅ Configuraste una conexión LLM.
- ✅ Redactaste un prompt de extracción completo con rol, formato y reglas.
- ✅ Seleccionaste el formato de documento óptimo (Annotated Text).
- ✅ Aplicaste reglas de estrictitud para garantizar la calidad de los datos.
- ✅ Probaste la extracción y revisaste los resultados.
- ✅ Aprendiste las mejores prácticas de la ingeniería de prompts.
- La extracción basada en prompts usa instrucciones en lenguaje natural.
- El formato Annotated Text ofrece los mejores resultados.
- Los prompts claros y específicos producen una extracción consistente.
- Las reglas de estrictitud evitan las alucinaciones y mantienen la calidad de los datos.
- Las pruebas iterativas y el refinamiento mejoran la precisión.
Próximos pasos
- Pruebe con diversos documentos: Valide distintos diseños y variaciones.
- Perfeccione sus prompts: Mejórelos continuamente en función de los resultados.
- Supervise los costos: Haga un seguimiento del uso de tokens en el panel de control de su proveedor de LLM.
- Optimice el rendimiento: Ajuste los prompts para mejorar la velocidad y la precisión.
- Explore la extracción de tablas: Experimente con la extracción de partidas (si es compatible).
- Intégrelo con flujos de trabajo: Combínelo con otras actividades para lograr un procesamiento integral.
Recursos adicionales
- Documentación de ABBYY Vantage Advanced Designer: https://docs.abbyy.com
- Guía de configuración de conexiones LLM: Configurar conexiones LLM.
- Mejores prácticas de prompt engineering: Consulte la documentación de su proveedor de LLM.
- Soporte: Póngase en contacto con el soporte de ABBYY para obtener asistencia técnica.
