Three-layer academic paper analysis: Overview -> Method Detail -> Innovation.
All analysis is performed by the agent itself. The Python package handles PDF parsing and quality assessment only.
PDF -> parse_pdf(quality_check=True) -> Assess quality
-> score >= 70: use extracted text
-> score < 70 + multimodal: Read tool on PDF (VLM)
-> score < 70 + text-only: OCR fallback
-> Layer 1 Overview -> Layer 2 Method Detail -> Layer 3 Innovation -> Markdown Report
pip install pdfplumber pymupdf
python -m paper_deep_read <paper.pdf> -o parsed.json
The script always runs quality assessment (5 checks: garbled text, formula quality, text misalignment, empty sections, missing tables). Output includes quality.score (0-100).
Quality thresholds:
>= 70: Good. Use extracted content.40-69: Degraded. Switch to fallback.< 40: Critical. Must use fallback.score < 70 AND model is multimodal -> Read PDF directly with Read tool (VLM understands formulas/tables natively)
score < 70 AND model is text-only -> render pages + OCR (tencentcloud-ocr or similar)
both fail -> ask user
Do NOT ask user which fallback. Auto-detect model capability and proceed.
Extract in this exact order:
Output format: Structured Markdown with tables for experiments/ablation.
Decision points:
For every mathematical formula:
| Field | Content |
|---|---|
| ------- | --------- |
| Formula text | Exact as it appears |
| Purpose | What it computes |
| Symbol table | Each symbol: name, meaning, type, domain, shape |
| Intuition | Plain-language explanation |
| Connection | How it relates to other formulas |
| Complexity | O(...) if applicable |
Also describe: overall architecture, data flow, training/inference pipeline, hyperparameters.
Formula template:
#### Formula [id]: [brief name]
**Formula:** [exact text]
**Purpose:** ...
**Symbols:**
| Symbol | Meaning | Type | Domain |
|--------|---------|------|--------|
| ... | ... | scalar/vector/matrix/function | R^d, ... |
**Intuition:** ...
**Connection:** links to formula [x]
Ask user about their research direction to tailor suggestions.
deliver_attachments to deliverWhen available, use MCP tools for:
Discover tools via ToolSearch with queries like ["knowledge", "search", "paper"].
| # | Situation | Auto-behavior | Ask user only when |
|---|---|---|---|
| --- | ----------- | --------------- | ------------------- |
| 1 | Language ambiguity | Match paper language | Truly mixed CN/EN |
| 2 | 10+ formulas | Overview first, offer drill-down | After overview |
| 3 | Section boundary unclear | Merge and analyze | — |
| 7 | Research domain unknown | Paper-specific suggestions | Always offer to customize |
| 9 | PDF quality < 70 | Auto-fallback chain | Both fallbacks fail |
Full decision definitions: paper_deep_read/schemas.py + paper_deep_read/prompts.py
共 1 个版本