将 PDF、图片、Office 文档解析为带版面感知的 Markdown/HTML,含表格和坐标。
文档 参数 : 文件 : {HTML/Markdown}} 、{}}}( 框内坐标 )}}}/ Agent : 7 4 / SKILL. md {AI 代理(
功能概述
文档 参数 : 文件 : {HTML/Markdown}} 、{}}}( 框内坐标 )}}}/ Agent : 7 4 / SKILL. md {AI 代理( 是一项面向实际任务的技能。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
核心要点
- 使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。
- 该技能适合需要稳定复用相关能力的场景,可作为自动化工作流的一部分,也便于后续检查、调整和扩展。
- 从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。
使用与执行
实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;
结果检查与注意事项
涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。
Document Parse
document-parse 将文档转换为结构化的 HTML/Markdown。识别表格、图片、公式、图表等版面元素, 并返回边界框坐标(bounding box coordinates)。
依赖说明
运行环境
- Agent平台: 支持SKILL.md的任意AI Agent(Claude Code / Cursor / Codex / Gemini CLI等)
- 操作系统: Windows / macOS / Linux
依赖项
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|---|---|---|---|
| LLM API | API | 必需 | 由Agent内置LLM提供 |
API Key 配置
需要配置对应API Key,详见上文环境配置章节
可用性分类
- 分类: MD+EXEC()
API Key配置方式:
export API_KEY="your_api_key_here"
配置后需重启会话或开启新终端生效。API Key应妥善保管,避免泄露到版本控制系统。
核心能力
1. 多格式文档解析
支持 JPEG、PNG、BMP、PDF(异步最多 1000 页)、TIFF、HEIC、DOCX、PPTX、XLSX、HWP、HWPX
等格式。通过 model: "document-parse" 调用解析模型,将文档内容转换为结构化的
content.html、content.markdown 和 content.text 三种格式输出。
标准文档处理时间约 3 秒。
2. 同步模式解析(Sync)
通过 POST /v1/document-digitization 端点进行同步解析。限制:最多 100 页、50 MB 文件大小、
5 分钟服务器超时。适合 100 页以内且预期在 5 分钟内完成的文档。响应直接返回在 HTTP response 中,
无需轮询。参数包括 model(必填,值为 document-parse)、output_formats(默认 ['html'],
可选 ['markdown'] 或 ['html', 'markdown'])、mode(默认 standard,可选 enhanced/auto)、
ocr(默认 auto,可选 force)、coordinates(默认 true,设为 false 省略边界框)。
3. 异步模式解析(Async)
通过 POST /v1/document-digitization/async 端点进行异步解析。限制:最多 1000 页、50 MB 文件大小。
返回 request_id,按 10 页批次处理。适用于超过 100 页、扫描/复杂内容或批量任务的文档。
异步模式需要提交后轮询状态,支持 Python 轮询模式。决策规则:100 页以内且 5 分钟内完成 → 同步;
超过 100 页、扫描/复杂内容或批量任务 → 异步。
4. 版面元素识别与坐标输出
解析结果包含 elements 数组,每个元素包含 id、category、content(html/markdown/text)、
page 页码和 coordinates 边界框坐标(如 [{"x": 0.06, "y": 0.05}, ...])。
支持 14 种元素类别:paragraph、heading1、heading2、heading3、list、table、
figure、chart、equation、caption、header、footer、index、footnote。
坐标为归一化值(0-1 范围),表示元素在页面中的相对位置。
输入: 用户提供版面元素识别与坐标输出所需的指令和必要参数。
5. 增强模式与 OCR 控制
mode=enhanced 用于复杂表格、图表和图片的精确解析,支持 merge_multipage_tables=true
合并跨页表格(enhanced 模式下最多 20 页)。mode=auto 让 API 逐页自动决定最佳模式。
ocr=force 强制对扫描 PDF 或图片执行 OCR,适用于非原生数字文档。
coordinates=false 可省略边界框以减小响应体积。
输入: 用户提供增强模式与 OCR 控制所需的指令和必要参数。 输出: 返回增强模式与 OCR 控制的执行结果,包含操作状态和输出数据。
- 执行
增强模式与 OCR 控制操作,处理输入数据并返回结果 - 验证执行结果,确认输出符合预期格式
- 参考
增强模式与 OCR 控制相关配置参数进行设置
6. 输出文件管理
默认输出到 ,其中 匹配 output_formats
(md 或 html)。例如 /tmp/report.parsed.md。使用 tempfile.gettempdir() 实现跨平台路径。
如果用户指定输出路径,则使用用户路径。始终在响应中打印解析后的绝对路径,方便用户定位文件。
能力覆盖范围
本skill还覆盖以下能力场景: Office、文档解析为带版面、感知的、含表格和坐标、upstage、是一个文档解析技、识别表格、图表等版面元素并、返回边界框坐标、支持同步和异步两、种模式、同步最多、处理复杂表格、处理扫描件、适用于文档数字化、内容提取和自动化、工作流场景。这些能力在上述核心功能中均有对应处理逻辑。
使用流程
- 确认文档格式在支持列表中(JPEG/PNG/BMP/PDF/TIFF/HEIC/DOCX/PPTX/XLSX/HWP/HWPX)
- 评估文档页数和大小:100 页以内且 50MB 以内 → 同步模式;否则 → 异步模式
- 设置 API Key 到环境变量,通过
os.environ["DOCUMENT_PARSE_API_KEY"]读取 - 选择参数:
model=document-parse、output_formats、mode(standard/enhanced/auto)、ocr - 发送请求到同步端点
/v1/document-digitization或异步端点/v1/document-digitization/async - 同步模式直接解析响应 JSON;异步模式轮询
request_id直到完成 - 将结果写入输出文件(默认
)/ .parsed. - 打印输出文件的绝对路径
命令参数说明
-over-year: 命令参数,用于指定操作选项
示例
示例1:同步模式解析 PDF
import os
import requests
with open("report.pdf", "rb") as f:
response = requests.post(
"https://api.example.com/v1/document-digitization",
headers={"Authorization": f"Bearer {os.environ['DOCUMENT_PARSE_API_KEY']}"},
files={"document": f},
data={
"model": "document-parse",
"output_formats": "['markdown']",
"mode": "standard",
"ocr": "auto",
"coordinates": "true"
}
)
result = response.json()
print(result["content"]["markdown"])
# 输出:
# # Quarterly Report Q2 2026
#
# ## Revenue Summary
# Total revenue reached $48.2M, representing a 23% year-over-year growth.
#
# | Quarter | Revenue | Growth |
# |---------|---------|--------|
# | Q1 2026 | $39.2M | +18% |
# | Q2 2026 | $48.2M | +23% |
print(f"Pages processed: {result['usage']['pages']}")
# 输出:Pages processed: 12
print(f"Elements found: {len(result['elements'])}")
# 输出:Elements found: 47
示例2:增强模式解析复杂表格
import os
import requests
with open("financial_statements.pdf", "rb") as f:
response = requests.post(
"https://api.example.com/v1/document-digitization",
headers={"Authorization": f"Bearer {os.environ['DOCUMENT_PARSE_API_KEY']}"},
files={"document": f},
data={
"model": "document-parse",
"output_formats": "['html', 'markdown']",
"mode": "enhanced",
"ocr": "force",
"merge_multipage_tables": "true",
"coordinates": "true"
}
)
result = response.json()
# 查看表格元素
tables = [e for e in result["elements"] if e["category"] == "table"]
print(f"Tables found: {len(tables)}")
# 输出:Tables found: 8
# 查看第一个表格的坐标
if tables:
first_table = tables[0]
print(f"Table on page {first_table['page']}")
print(f"Coordinates: {first_table['coordinates']}")
# 输出:
# Table on page 3
# Coordinates: [{"x": 0.06, "y": 0.15}, {"x": 0.94, "y": 0.15}, ...]
# 写入输出文件
import tempfile
output_path = os.path.join(tempfile.gettempdir(), "financial_statements.parsed.md")
with open(output_path, "w", encoding="utf-8") as f:
f.write(result["content"]["markdown"])
print(f"Output saved to: {output_path}")
# 输出:Output saved to: /tmp/financial_statements.parsed.md
错误处理
| 错误场景 | 原因 | 处理方式 |
|---|---|---|
| API Key 缺失或无效 | 环境变量 DOCUMENT_PARSE_API_KEY 未设置或过期 |
在控制台重新获取 API Key,设置到环境变量中 |
| 文件超过 50 MB 限制 | 文档体积超出同步和异步模式的统一上限 | 拆分文档后分批处理,或压缩 PDF 后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令 |
| 同步模式页数超过 100 页 | 文档页数超出同步模式限制 | 切换到异步模式 /v1/document-digitization/async,支持最多 1000 页 |
| 同步模式 5 分钟超时 | 文档复杂度高或扫描内容导致处理时间过长 | 切换到异步模式,异步模式按 10 页批次处理,无 5 分钟限制 |
| OCR 失败 | 扫描件质量差、分辨率过低或手写内容 | 提升扫描分辨率至 300 DPI 以上,确保文字清晰可读 |
| 复杂表格解析不完整 | 跨页表格或多层嵌套表格 | 使用 mode=enhanced 和 merge_multipage_tables=true(enhanced 模式最多 20 页) |
| 不支持的文件格式 | 使用了不在支持列表中的格式 | 转换为支持的格式:JPEG/PNG/BMP/PDF/TIFF/HEIC/DOCX/PPTX/XLSX/HWP/HWPX |
常见问题
Q1: 同步模式和异步模式如何选择?
A: 决策规则:100 页以内且预期 5 分钟内完成 → 同步模式(/v1/document-digitization);
超过 100 页、扫描/复杂内容或批量任务 → 异步模式(/v1/document-digitization/async)。
同步模式直接返回结果,异步模式返回 request_id 需要轮询。两种模式文件大小上限均为 50 MB。
Q2: mode 参数的 standard、enhanced、auto 有什么区别?
A: standard(默认)适用于普通文档,处理速度最快(约 3 秒)。enhanced 适用于复杂表格、
图表和图片,提供更精确的解析但处理时间更长。auto 让 API 逐页自动决定使用 standard 还是
enhanced,适合混合内容文档。enhanced 模式下 merge_multipage_tables=true 可合并跨页表格,
但限制为最多 20 页。
Q3: ocr 参数何时使用 force?
A: ocr=force 用于扫描 PDF 或图片(非原生数字文档)。当文档是通过扫描纸质文件生成的 PDF
时,文字实际上是图片而非文本层,必须使用 OCR 提取。ocr=auto(默认)让 API 自动检测是否
需要 OCR。对于原生数字 PDF(如 Word 导出的 PDF),使用 auto 即可,无需强制 OCR。
Q4: 元素坐标 coordinates 的格式和用途是什么?
A: 坐标为归一化值(0-1 范围),表示元素在页面中的相对位置。格式为
[{"x": 0.06, "y": 0.05}, {"x": 0.94, "y": 0.05}, ...],定义元素的边界框。
用途包括:定位表格在页面中的位置、提取特定区域的元素、可视化标注文档版面。
设置 coordinates=false 可省略坐标以减小响应体积。
Q5: 输出文件默认保存在哪里?
A: 默认保存到 ,其中 通过
tempfile.gettempdir() 获取(跨平台), 是输入文件名(不含扩展名),
匹配 output_formats(md 或 html)。例如输入 report.pdf 输出
/tmp/report.parsed.md。如果用户指定输出路径,则使用用户路径。始终打印绝对路径。
Q6: 响应 JSON 的 elements 数组包含哪些信息?
A: 每个 element 包含:id(元素编号)、category(14 种类别之一:paragraph/heading1/
heading2/heading3/list/table/figure/chart/equation/caption/header/footer/index/footnote)、
content(含 html/markdown/text 三种格式)、page(页码)、coordinates(边界框坐标)。
usage.pages 表示处理的页数。
已知限制
- 文件大小上限统一为 50 MB,无法通过参数调整
- 同步模式最多 100 页且 5 分钟超时,超限必须使用异步模式
- 异步模式最多 1000 页,按 10 页批次处理
merge_multipage_tables=true在 enhanced 模式下最多支持 20 页- OCR 质量取决于扫描件清晰度,手写内容识别率较低
- 标准文档处理约 3 秒,复杂文档(enhanced + force OCR)可能显著更长
热门AI工具
相关专题
在JavaScript中,document对象是一个非常重要的全局对象,它代表整个HTML文档。想了解更多Document的相关内容,可以阅读本专题下面的文章。
6047
2024.03.14
document.cookie获取不到的解决办法:1、浏览器的隐私设置;2、Same-origin policy;3、HTTPOnly Cookie;4、JavaScript代码错误;5、Cookie不存在或过期等等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。
766
2023.11.23
本专题聚焦Go-Zero的API开发,拆解.api描述文件的语法结构、路由与分组定义、参数绑定与校验规则,说明统一响应体、JWT鉴权、跨域与接口文档生成的落地方式,并给出网关聚合与接口测试的实践建议。
0
2026.11.12
本专题围绕Go-Zero的安装与工具链配置展开,讲清Go版本要求、goctl安装方式、代理镜像、protoc依赖与环境变量设置,说明多版本共存、升级回退与CI流水线安装的做法,并整理安装阶段的常见报错与验证步骤。
0
2026.11.12
本专题整理Go-Zero的入门知识,从框架定位、环境准备到跑通第一个API服务,讲清目录分层、配置加载、日志与中间件的基本用法,并对比Gin、Kratos的差异,帮助Go开发者建立整体认知,判断它是否适合当前项目。
0
2026.11.12
本专题从实际API接口调试场景出发,讲解Postman身份认证的完整配置流程,包括常见认证协议介绍、授权参数设置、访问令牌填写、OAuth 2.0授权及认证失败排查,帮助用户正确完成接口授权与访问验证。
0
2026.11.06
围绕Postman HTTP请求头配置展开,讲解Headers选项的具体使用方式,包括Key和Value参数填写、请求头信息添加、常见Header字段设置及请求头修改方法,帮助用户解决接口调试过程中遇到的请求头配置问题。
0
2026.11.06
详细介绍Postman接口请求的创建与发送方法,涵盖GET和POST请求、URL配置、请求参数、Headers请求头、Body请求体设置以及响应结果查看,帮助用户掌握Postman接口请求的完整操作流程。
0
2026.11.06
DBeaver数据导入专题,整理Excel、CSV、SQL、TXT等常见文件的数据导入方法,涵盖目标数据库选择、数据表创建、字段映射、数据类型设置及导入参数配置等操作,帮助用户将本地文件中的数据写入数据库,并了解批量导入、重复数据处理和导入失败等常见问题的解决方法。
0
2026.11.05
热门下载
相关下载
精品课程
共0课时 | 182人学习