Ir al contenido

IDP Extract

Extrae todo lo que pide un proyecto de extracción de un documento, enruta al perfil del formato que tenga delante y busca cada valor en la página, así que sabes de dónde salió cada dato y cuánta confianza merece.

Es el camino normal del IDP: una actividad. Por dentro carga el documento si hace falta, enruta al perfil, extrae todos los campos en una sola llamada al modelo, groundea y persiste el resultado en el store — pero eso es asunto suyo, no tuyo.

IDP Extract document = = doc
project = "hoja-de-vida-equipo-biomedico"
credential = = credential("anthropic-key")
→ output: res

El proyecto trae la configuración, no el playbook

Sección titulada «El proyecto trae la configuración, no el playbook»

Antes esta actividad pedía taxonomy, model, mode y endpoint. Ahora pide un proyecto de extracción y de ahí sale todo lo demás. El proyecto —que se edita en el portal— lleva:

  • el esquema canónico (los campos que entregas, el contrato),
  • N perfiles de formato, uno por layout, cada uno con sus overrides sobre el canónico,
  • un router que elige el perfil por el código impreso del formato,
  • la config: modelo, modo de lectura, endpoint y credencial de OCR.

Así, quien sabe qué campos importan lo configura en el portal y no toca el playbook. El playbook solo dice qué proyecto y de dónde sale el documento.

ParámetroTipoQué es
projecttextoEl nombre de un proyecto de extracción del entorno. Trae el canónico, los perfiles, el modelo, el modo de lectura y el endpoint de OCR. Para CI también acepta un JSON de resolución en línea.
credentialcredencialCredencial de Zoan Cloud con la API key del proveedor del modelo. Usa = credential("nombre").
documentobjetoUn documento que ya leyó IDP Classify o IDP Load Document. Si lo pasas, no se vuelve a leer el fichero — con un escaneo, releerlo es pagar Azure dos veces.
pathtextoLa ruta, si no pasas document.
dpiintEl dpi en el que vuelven las cajas. Usa el mismo que le des a PDF To Images si vas a subir el documento, o las cajas caen en el sitio equivocado.
pagestextoQué páginas leer. Vacío = todas.
azureCredentialcredencialCredencial de Zoan Cloud con la key de Azure Document Intelligence. Solo para escaneos.
maxRetriesintReintentos ante un fallo transitorio del proveedor. Un backfill son miles de llamadas: el 429 o 5xx suelto es una certeza, no un riesgo.

Un mismo tipo de documento llega en varios formatos, y cada formato pinta los campos en otro sitio. El proyecto tiene un perfil por formato; IDP Extract lee el código impreso del documento (por ejemplo F-GOP-007), elige el perfil que le corresponde y funde sus overrides sobre el canónico. La salida sale siempre con nombres canónicos — el mapeo es identidad.

Si el proyecto configura un modelo de escalada, cuando más del 10% de los campos quedan bajo umbral la actividad reintenta una vez con ese modelo y se queda con el resultado que deja menos campos a revisar. Una llamada extra de céntimos que evita minutos de revisor. El consumo de ambas llamadas se suma en usage.

Si le pasas document (una lectura ya hecha) y pages (un rango, "4-7"), la actividad recorta la lectura a ese rango en vez de re-leer el fichero: es como Take Confirmed Bundles consigue que extraer los segmentos de un bundle no re-pague Azure.

Extrae lo que se le pide, siempre. Comprobar que el documento es el que toca es una decisión tuya, y se hace antes con IDP Classify.

No es un capricho: una actividad que decide sola no hacer su trabajo esconde el control de flujo, y además impide enrutar entre varios proyectos — que es justo lo que hace falta cuando la cola trae documentos mezclados.

CampoQué es
valuesLos datos, limpios: { serie: "ABC-123", accesorios: [...] }. Es lo que consume el resto del playbook.
fieldsUn campo por dato, con su caja, su confianza y por qué necesita revisión. Es lo que pinta la estación de validación.
needsReviewSi algún campo quedó por debajo de su umbral.
reviewFieldsCuáles.
documentTypeEl tipo que declara el proyecto.
formatEl perfil al que se enrutó (p. ej. F-GOP-007). Sirve para trazar y mostrar cuál formato se usó.
sourcetext o azure-di.
dpiEl dpi de las cajas.
pageCountPáginas leídas.
valuesLos datos, limpios: { serie: "ABC-123", accesorios: [...] }.
documentIdEl id del documento persistido en el store.
referenceLa clave con la que se guardó (idempotencia).
usageEl consumo del documento: { model, inputTokens, outputTokens, calls }.

Un modelo que se autoevalúa dice «95 %» con la misma seguridad cuando acierta que cuando se lo inventa. Esa confianza no está calibrada.

La de aquí sale de buscar el literal entre las palabras del documento. Si está, hay confianza y hay caja. Si no está, el valor no se puede verificar y el campo va a revisión. Es una comprobación mecánica, no una opinión.