Skip to main content

create-annotated-pdf

Generate annotated PDFs from extraction pipeline run data. Overlays color-coded bounding boxes (text, tables, figures, equations) from S02/S05/S06 onto the original PDF. Supports single PDF, run directory, batch from blacklist, and interactive review server.

معلومات المصدر

المستودع
grahama1970/agent-stack-public
آخر نشاط في المصدر
٢٤ سبتمبر ٢٠٢٦ في ١٥:٥١
لغة SKILL.md المكتشفة
الإنجليزية
النجوم
٠
التفرعات
٠

خيارات التثبيت

يُحدَّد Prompt الذي يراجع المصدر أولًا بشكل افتراضي. يمكنك التبديل إلى أمر مباشر أو تنزيل نسخة محلية.

مراجعة ملفات المصدر

اقرأ SKILL.md وأي ملفات مرافقة يعرضها SkillsMP قبل أن تقرر التثبيت.

مستكشف الملفات
5 ملفات

عرض SKILL.md

SKILL.md
تعليمات المصدر · معاينة للقراءة فقط
name
create-annotated-pdf
description
Generate annotated PDFs from extraction pipeline run data. Overlays color-coded bounding boxes (text, tables, figures, equations) from S02/S05/S06 onto the original PDF. Supports single PDF, run directory, batch from blacklist, and interactive review server.
triggers
["annotate pdf","annotated pdf","show me the annotations","show extraction boxes","give me the annotated pdf","review extraction","spot check extraction","overlay bboxes","visualize extraction","create annotated pdf","review pdf annotations","review failed pdfs","batch annotate"]
metadata
{"short-description":"Annotated PDFs from extraction pipeline data"}
provides
["create-annotated-pdf"]
composes
["task-monitor","agentic-evals"]
disciplines
["extraction","content-creation"]
# create-annotated-pdf Generate annotated PDFs showing what the extraction pipeline detected. Color-coded bounding boxes for text blocks, tables, figures, equations overlaid on the original PDF. ## Quick Start ### Single PDF (from run directory) ```bash cd /path/to/extractor uv run python -m extractor.pipeline.tools.render_annotated_pdf from-run \ --pdf /path/to/original.pdf \ --run-dir /path/to/run_directory \ --out /tmp/annotated.pdf \ --export-pages --png-dpi 144 ``` ### Single PDF (by stem — auto-discovers run dir) ```bash cd /path/to/agent-skills/skills/create-annotated-pdf uv run --script annotate_from_stem.py <stem> [--out /tmp/annotated.pdf] [--png] ``` ### Batch (all blacklisted/failed PDFs) ```bash uv run --script annotate_from_stem.py --batch-blacklist [--out-dir /tmp/annotated_failures/] ``` ### Interactive Review Server ```bash # Terminal 1: API server cd /path/to/extractor/prototypes/tabbed/api uv run --script review_server.py # Terminal 2: Frontend cd /path/to/extractor/prototypes/tabbed/html VITE_REVIEW_API=http://127.0.0.1:8003 npm run dev # Open http://localhost:8080/review ``` ## What Gets Annotated | Stage | Element | Color | Source File | |-------|---------|-------|-------------| | S02 | Text blocks | Gray | `02_marker_blocks.json` | | S02 | Section headers | Orange | `02_marker_blocks.json` | | S02 | Equations | Purple | `02_marker_blocks.json` | | S05 | Tables | Blue | `05_tables.json` | | S06 | Figures | Green | `06_figures.json` | ## Outputs - **Annotated PDF**: Original PDF with colored bbox rectangles and type labels - **PNG pages**: Per-page raster images (optional, `--export-pages`) - **Tabbed-compatible JSON**: Normalized (0-1) box coordinates for interactive editing - **Corrections JSONL**: Human review corrections saved per-stem ## Run Directory Discovery The skill searches these locations (NVMe first, then HDD): 1. `$PI_HOME/skills/review-pdf/extracted_runs_staging/` 2. `$ARTIFACT_STORAGE_ROOT/skills/review-pdf/extracted_runs/` Run directories are named `{stem}_{hash10}` and contain stage outputs as subdirectories. ## Integration Points - **`/learn-datalake`**: Blacklist provides failed PDF list for batch annotation - **`/create-classifier`**: Corrections feed back as ground truth training labels - **`/pdf-lab`**: Convergence loop can request annotated PDFs for diagnosis - **`/review-pdf`**: Run directories are the primary data source - **`/memory`**: Corrections can be stored as extraction quality signals ## Dependencies - `pymupdf` (fitz) — PDF rendering and annotation - `fastapi` + `uvicorn` — Review server (optional, for interactive mode) - Tabbed prototype (`prototypes/tabbed/html`) — Interactive UI (optional)
عرض على GitHub