Skip to main content
本教程面向需要使用 API 的场景,展示如何使用 xParse 的 API 接口进行文档处理。

概述

xParse 除了提供 Pipeline API 外,还提供了其他 API 接口,适用于不同的使用场景:
  • Parse 同步 API:同步执行文档解析,立即返回结果
  • Parse 异步 API:异步执行文档解析,通过 job_id 查询状态
  • Extract 同步 API:同步执行文档抽取,立即返回结果

Parse 同步 API

适用场景

  • 只需要文档解析功能
  • 需要同步获取结果
  • 处理单个文档或小文件(<10MB)

使用示例

返回结果

返回结果与 Pipeline Parse 节点完全一致,包含 elements 数组。 API文档Parse同步API

Parse 异步 API

适用场景

  • 处理大文件(>10MB)或批量文件
  • 需要异步处理,避免长时间等待
  • 需要 webhook 回调通知

使用示例

1. 创建异步任务

2. 查询任务状态

3. 查询任务结果

当任务状态为 completed 时,可以通过结果查询API获取详细的解析结果:

4. Webhook 回调

如果设置了 webhook,当任务完成或失败时,系统会调用该 URL:

Extract 同步 API

适用场景

  • 只需要抽取功能
  • 不需要保留解析结果
  • 处理单个文档

使用示例

API文档Extract同步API

Parse 同步 vs 异步 API 详细对比

选择建议

  • 小文件(<10MB):使用同步API,简单直接
  • 大文件(>10MB)或批量处理:使用异步API,避免超时
  • 需要实时响应:使用同步API
  • 需要后台处理:使用异步API + Webhook
  • 需要组合处理:使用Pipeline API

Pipeline API vs 其他API

Pipeline API

优点
  • 支持组合多个处理阶段
  • 统一的接口和配置
  • 支持批量处理
  • 返回统一的统计信息
缺点
  • 需要配置多个stage
  • 不能单独使用某个功能
适用场景
  • 需要组合多个处理阶段
  • 需要批量处理文档
  • 需要将结果存储到向量数据库

其他API

优点
  • 使用简单,只需配置单个功能
  • 适合单一功能场景
  • 异步API支持大文件处理
缺点
  • 不能组合多个处理阶段
  • 需要自行实现批量处理
适用场景
  • 只需要单个功能
  • 处理单个文档
  • 需要异步处理大文件

最佳实践

  1. API选择
    • 根据文件大小选择同步或异步API
    • 根据需求选择Pipeline或其他API
    • 考虑错误处理和重试机制
  2. 性能优化
    • 小文件使用同步API
    • 大文件使用异步API
    • 批量处理使用Pipeline API
  3. 错误处理
    • 检查返回的code和status
    • 处理网络错误和超时
    • 实现重试机制
  4. Webhook使用
    • 设置可靠的webhook URL
    • 处理webhook回调
    • 实现幂等性处理

常见问题

Q: 什么时候使用同步API,什么时候使用异步API?

A:
  • 文件小于10MB:使用同步API
  • 文件大于10MB或批量处理:使用异步API
  • 需要实时响应:使用同步API
  • 需要后台处理:使用异步API

Q: Pipeline API和其他API有什么区别?

A:
  • Pipeline API支持组合多个处理阶段,其他API只支持单个功能
  • Pipeline API适合批量处理,其他API适合单个文档
  • Pipeline API返回统一的统计信息,其他API返回特定功能的结果

Q: 异步API的webhook是必须的吗?

A: 不是必须的。如果不设置webhook,可以通过轮询查询任务状态。

相关文档