v0.5.4
[0.5.4]
Added
-
MLflow Experiment Tracking Integration — Optional integration with Amazon SageMaker MLflow for automated test run logging. When enabled (
EnableMLflow=true), every Test Studio run automatically logs metrics (accuracy, cost, field-level scores), configuration parameters (model IDs, temperatures, inference settings), and artifacts (full config snapshots, class definitions, cost breakdowns) to an MLflow tracking server. Fire-and-forget async invocation — never blocks or delays test results. Zero resources created when disabled. Seedocs/mlflow-integration.md. -
BDA Blueprint Optimization — Automatically improves BDA extraction accuracy using the
InvokeBlueprintOptimizationAsyncAPI. When discovery includes a ground truth file andenable_blueprint_optimization: trueis set, the system optimizes the BDA blueprint by comparing extraction results against ground truth, evaluates before/after metrics, and updates the blueprint schema if improved. Disabled by default. Seedocs/discovery.md— Blueprint Optimization section. -
idp_common API Reference & Documentation — Added
docs/idpcommon-api-reference.mdcovering all 22 modules, created 6 missing module READMEs (discovery, schema, image, s3, utils, metrics), updated core data model docs to match current code, fixedIDPConfiglazy-loading bug in__init__.py, and integrated into docs-site sidebar. -
Consolidated publish and headless deploy into
idp-cli— All build/publish/deploy functionality now available through the CLI, deprecating standalone scripts:publish.pyandpublish.share deprecated — useidp-cli publishinstead.publish.pyremains as a thin backward-compatibility wrapper.publish.shhas been removed.scripts/generate_govcloud_template.pyis deprecated — useidp-cli publish --headlessoridp-cli deploy --headlessinstead. The script remains as a thin wrapper.- New
--template-fileoption onidp-cli deployfor deploying from a local CloudFormation template file produced by a previousidp-cli publish. idp-cli deploy --headless(without--from-code) now downloads the published template, transforms to headless with GovCloud config defaults, uploads to S3, and deploys — all in one command.
Fixed
-
HITL review start overwrites document sections — Fixed the Start Review action to update only the Review Status and Review Owner fields, preserving all existing document sections and other fields.
-
Evaluation schema error for free-form objects — Stickler mapper now detects and skips unevaluable object schemas (e.g., objects with
additionalPropertiesbut no definedproperties, and arrays of such objects) instead of raising validation errors. -
Full document reprocess not re-running OCR — Fixed bug where clicking "Reprocess" in the UI reused stale OCR results from the previous run instead of re-executing OCR with the current configuration. The reprocess resolver now deletes previous output data from S3 before queuing, preventing the OCR function's retry-safe recovery from reinstalling old results.
-
Agentic extraction timeout on long documents — Fixed repeated Lambda timeouts when agentic extraction exceeds the 15-minute limit on large documents (e.g., 25-page brokerage statements with 600+ holdings). Added incremental S3 checkpointing that saves extraction state after each tool call — covers both the extraction tools path (
extraction_tool,apply_json_patches,make_buffer_data_final_extraction) and the buffer tools path (patch_buffer_data) that the agent uses for very large batched extractions. The checkpoint format tracks which state was saved (current_extractionvsintermediate_extractionbuffer) so the correct resume path is used. On Step Function retry, the Lambda loads the checkpoint and the agent resumes from where it left off rather than restarting from scratch. No CloudFormation or Step Function changes required — the existingSandbox.Timedoutretry mechanism now makes incremental progress. Only active when agentic extraction is enabled; standard extraction is unaffected. -
Agentic extraction fails on Bedrock InternalServerException without retrying — Fixed
InternalServerExceptionerrors (transient Bedrock server-side errors) causing immediate Lambda failure after only botocore's fast 7 retries, bypassing the application-level retry decorator (50 retries with 5s→1800s exponential backoff). Root cause:InternalServerExceptionandInternalServerErrorwere missing from all three retry layers — theasync_exponential_backoff_retrydecorator'sDEFAULT_RETRYABLE_ERRORSset (bedrock_utils.py), theBedrockClient._invoke_with_retry()retryable errors list (bedrock/client.py), and the Step Functions ExtractionStep RetryErrorEqualslist (workflow.asl.json). All three layers now include these transient errors, providing proper exponential backoff retry at the application level and Lambda-level retry via Step Functions as a safety net.
Templates
- us-west-2:
https://s3.us-west-2.amazonaws.com/aws-ml-blog-us-west-2/artifacts/genai-idp/idp-main_0.5.4.yaml - us-east-1:
https://s3.us-east-1.amazonaws.com/aws-ml-blog-us-east-1/artifacts/genai-idp/idp-main_0.5.4.yaml - eu-central-1:
https://s3.eu-central-1.amazonaws.com/aws-ml-blog-eu-central-1/artifacts/genai-idp/idp-main_0.5.4.yaml