- Información general
- Contratos de procesamiento de documentos
- Notas relacionadas
- Acerca de los contratos de procesamiento de documento
- Clase Cuadro
- Interfaz IPersistedActivity
- Clase PrettyBoxConverter
- Interfaz IClassifierActivity
- Interfaz IClasificadorProveedorDeCapacidades
- Clase ClassifierDocumentType
- Clase ClassifierResult
- ClassifierCodeActivity Class
- ClassifierNativeActivity Class
- ClassifierAsyncCodeActivity Class
- Clase ClasificadorCapacidadDeTipoDeDocumento
- Clase
- Clase
- Clase ExtractorDocumentType
- Clase ExtractorDocumentTypeCapabilities
- Clase ExtractorFieldCapability
- Clase
- Clase ExtractorResult
- Interfaz ICapabilitiesProvider
- Interfaz IExtractorActivity
- Clase ExtractorPayload
- Enumeración DocumentActionPriority
- Clase DocumentActionData
- Enumeración DocumentActionStatus
- DocumentActionType Enum
- Clase DocumentClassificationActionData
- Clase DocumentValidationActionData
- Clase UserData
- Clase Documento
- Clase DocumentoDividirResultado
- Clase DomExtensions
- Clase Página
- Clase SecciónDePágina
- Clase de polígono
- Clase PolygonConverter
- Clase de metadatos
- Clase GrupoDeWord
- Clase Word
- Enum FuenteDeProcesamiento
- Clase ResultadosTablaCelda
- Clase ResultadosTablaValor
- Clase ResultadosTablaColumnaInfo
- Clase TablaDeResultados
- Enum Rotación
- Enum TipoDeSección
- Enum TipoDeGrupoDeWord
- Interfaz IDocumentTextProjection
- Clase ResultadoDeClasificación
- Clase ResultadoDeExtracción
- Clase ResultadosDeDocumento
- Clase ResultadosDeLímitesDeDocumento
- Clase ResultadosDePuntoDeDatos
- Clase ResultadosDeValor
- Clase ResultadosDeContenidoDeReferencia
- Clase ResultadosDeValorDeTokens
- Clase ResultadosDeCampoDerivado
- Enum ResultadosDeFuenteDeDatos
- Clase ResultadoDeConstantes
- Clase ValorDeCampoSimple
- Clase ValorDeCampoDeTabla
- Clase GrupoDeDocumento
- Clase TaxonomíaDeDocumento
- Clase TipoDeDocumento
- Clase Campo
- Enum TipoDeCampo
- Clase InformaciónDeLenguaje
- Clase MetadataEntry
- Enumeración de tipo de texto
- Clase TipoDeCampo
- Interfaz de actividad de ITracking
- Interfaz de ITrainableActivity
- Interfaz ITrainableClassifierActivity
- Interfaz ITrainableExtractorActivity
- Clase TrainableClassifierAsyncCodeActivity
- Clase TrainableClassifierCodeActivity
- Clase TrainableClassifierNativeActivity
- Clase TrainableExtractorAsyncCodeActivity
- Clase TrainableExtractorCodeActivity
- Clase TrainableExtractorNativeActivity
- Digitalizador de Document Understanding
- Document Understanding ML
- Servidor local de OCR de Document Understanding
- Document Understanding
- Notas relacionadas
- Acerca del paquete de actividades Document Understanding
- Compatibilidad de proyectos
- Establecer contraseña de PDF
- Fusionar PDF
- Obtener el recuento de páginas del PDF
- Extraer texto en PDF
- Extraer imágenes en PDF
- Extraer rango de página en PDF
- Extraer datos del documento
- Cree una tarea de validación y espere
- Esperar la tarea de validación y continuar
- Crear tarea de validación
- Clasificar documento
- Crear tarea de validación de clasificación
- Crear tarea de validación de clasificación y esperar
- Esperar la tarea de validación de clasificación y reanudar
- OCRInteligente
- Notas relacionadas
- Acerca del paquete de actividades IntelligentOCR
- Compatibilidad de proyectos
- Configurar autenticación
- Cargar taxonomía
- Digitalizar documento
- Clasificar ámbito de documento
- Clasificador basado en palabras clave
- Clasificador de proyectos de Document Understanding
- Clasificador inteligente de palabra clave
- Crear acción de clasificación de documentos
- Esperar la acción de clasificación de documentos y reanudar
- Entrenar el alcance de los clasificadores
- Entrenador del clasificador basado en palabras clave
- Entrenador del clasificador inteligente de palabra clave
- Alcance de la extracción de información
- Extractor de proyectos de Document Understanding
- Extractor basado en regex
- Extractor de forma
- Extractor inteligente de formularios
- Mostrar Estación de Validación
- Crear acción de validación de documentos
- Esperar la acción de validación de documentos y reanudar
- Entrenar el alcance de los Extractores
- Exportar resultados de extracción
- Servicios ML
- OCR
- Contratos OCR
- Notas relacionadas
- Acerca de los contratos OCR
- Compatibilidad de proyectos
- IOCRActivity Interface
- OCRAsyncCodeActivity Class
- OCRCodeActivity Class
- OCRNativeActivity Class
- Clase Carácter
- Clase OCRResult
- Clase Word
- FontStyles Enum
- OCRRotation Enum
- Clase OCRCapabilities
- OCRScrapeBase Class
- OCRScrapeFactory Class
- ScrapeControlBase Class
- Enum ScrapeEngineUsages
- ExtraerBaseDelEctor
- Clase ScrapeEngineFactory
- Clase ExtraerEngineProvider
- OmniPage
- PDF
- [No en la lista] Abbyy
- [No en la lista] Abbyy incrustado
Actividades de Document Understanding
Extractor generativo: buenas prácticas
- Para mejorar la estabilidad, el número de solicitudes se limita a un máximo de 50.
- La respuesta, resultado de la extracción, también llamada Finalización, tiene un límite de 700 palabras. Está limitado a 700 palabras. Esto significa que no puedes extraer más de 700 palabras de una sola solicitud. Si tus requisitos de extracción superan este límite, puedes dividir el documento en varias páginas, procesarlas individualmente y luego combinar los resultados.
Imagina preguntar a cuatro o cinco personas diferentes la pregunta que quieres hacer en el mensaje generativo. Si puedes imaginar a estas personas dando respuestas ligeramente diferentes, entonces tu lenguaje es demasiado ambiguo y debes reformularlo para hacerlo más preciso.
Por ejemplo, si le das a la solicitud una solicitud general, como "Extraer toda la información personal del paciente como pares clave-valor separados por comas", se espera que el modelo encuentre cierta información por sí mismo.
- Donde la información personal está en el documento.
- Qué es personal y qué no es personal (que es muy ambiguo).
- Lo que el usuario espera obtener como "clave", y cuál es el valor de cada clave, y cuál es el formato exacto que espera el usuario.
- ¿Debería usar corchetes? ¿O solo cada par clave-valor en una línea separada?
- "Extraer el nombre del paciente"
- "Extraer el apellido del paciente"
- "Extraer la dirección del paciente, incluyendo la ciudad, el estado y el código postal"
- "Extraer la fecha de nacimiento del paciente"
Para que tu pregunta sea más específica, pide al extractor que devuelva la respuesta en un formato estandarizado. Esto reduce la ambigüedad, aumenta la precisión de la respuesta y simplifica el procesamiento posterior.
return date in yyyy-mm-dd format
. Si solo necesitas el año, especifica: return the year, as a four digit number
.
return numbers which appear in parentheses as negative
o return number in ##,###.## format
para estandarizar el separador decimal y el separador de miles para facilitar el procesamiento posterior.
Un caso especial en formato sería cuando la respuesta es una de un conjunto conocido de posibles respuestas.
What is the applicant’s marital status? Possible answers: Married, Unmarried, Separated, Divorced, Widowed, Other.
Esto no solo simplifica el procesamiento posterior, sino que también aumenta la precisión de la respuesta.
What is the termination date of this contract?
, deberías preguntar First find termination section of contract, then determine termination date, then return date in yyyy-mm-dd format.
Execute the following program:
1: Find termination section or clause
2: Find termination date
3: Return termination date in yyyy-mm-dd format
4: Stop
Execute the following program:
1: Find termination section or clause
2: Find termination date
3: Return termination date in yyyy-mm-dd format
4: Stop
Definir lo que quieres en un estilo similar a la programación, incluso llegando a utilizar la sintaxis JSON o XML, obliga al modelo generativo a utilizar sus conocimientos de programación, lo que aumenta la precisión al seguir las instrucciones.
No le pidas al extractor que realice sumas, multiplicaciones, restas, comparaciones o cualquier otra operación aritmética, porque puede cometer errores básicos, además de ser muy lenta y costosa en comparación con un sencillo flujo de trabajo para robots, que nunca cometerá un error, y es además mucho más rápido y barato.
No le pidas que siga lógicas de tipo si-entonces-si no, por la misma razón que antes. El flujo de trabajo del UiPath Robot es mucho más preciso y eficiente con este tipo de operaciones.
Actualmente, el extractor generativo no admite campos de columna. Aunque es posible que puedas extraer tablas más pequeñas a través de preguntas regulares y analizar su salida, ten en cuenta que esto es solo una solución y viene con restricciones. No está diseñado ni recomendado para extraer tablas genéricas arbitrariamente grandes.
La extracción de datos de las tablas es un desafío para el extractor generativo. La tecnología de IA generativa opera en cadenas lineales de texto y no entiende la información bidimensional visual de las imágenes. No puede extraer campos de tabla como se define en el Gestor de taxonomía, pero puede extraer texto y tablas de los documentos.
- Pide al extractor generativo que devuelva las columnas por separado y luego reúne las filas tú mismo en un flujo de trabajo. Podría preguntar:
Please return the Unit Prices on this invoice, as a list from top to bottom, as a list in the format [<UnitPrice1>, <UnitPrice2>,…]
- Pídele que devuelva cada fila por separado, como un objeto JSON. Podrías preguntar:
Please return the line items of this invoice as an JSON array of JSON objects, each object in format: {"description”: <description>, “quantity”:<quantity>, “unit_price”:<unit price>, “amount”:<amount>}
.
Los modelos de IA generativa no proporcionan niveles de confianza para las predicciones. Sin embargo, el objetivo es detectar errores y los niveles de confianza son solo una forma posible de lograr ese objetivo, y no la mejor. Una forma mucho mejor y más fiable de detectar errores es hacer la misma pregunta de varias maneras diferentes. Cuanto más diferente sea la formulación de la pregunta, mejor. Si todas las respuestas convergen hacia un resultado común, la probabilidad de que se produzca un error es muy baja. Si las respuestas no son las mismas, entonces la probabilidad de error es alta.
Por ejemplo, puedes repetir la misma pregunta dos, tres o incluso cinco veces (dependiendo de lo crucial que sea para evitar errores no detectados en tu procedimiento), combinando las sugerencias mencionadas en combinaciones variadas. Si todas las respuestas son coherentes, puede que no sea necesaria la revisión humana. Sin embargo, si alguna de las respuestas difiere, puede ser necesaria la revisión manual por parte de una persona en Action Center.