API 概览

PaperBanana HTTP API:将生成、续跑、评测能力统一封装为异步任务接口。 通用流程: 1. 提交任务(POST) 2. 轮询状态(GET /api/v1/tasks/{task_id}) 3. 下载结果(GET /api/v1/tasks/{task_id}/artifact)

服务地址
https://api.paperbanana.me
端点数量
7
生成时间
2026-02-26 13:32:41

调用流程:提交任务 -> 轮询状态 -> 下载结果。任务均为异步执行。

鉴权

除心跳检测与文档接口外,业务接口都需要 Bearer Token。

Authorization: Bearer <PAPERBANANA_API_TOKEN>
GET 心跳检测

/health

用于检测服务是否存活。

心跳检测
响应
状态码说明
200请求成功
请求命令(cURL)
curl -X GET "https://api.paperbanana.me/health"
POST 提交生成任务 需鉴权

/api/v1/tasks/generate

提交方法图生成任务,返回 task_id 后异步执行。

任务接口
请求类型(Content-Type)

application/json

请求示例
{
  "source_context": "我们的方法分为检索、规划、迭代精化三个阶段。",
  "communicative_intent": "方法整体流程图",
  "refinement_iterations": 3,
  "optimize_inputs": true
}
参数说明
参数位置类型必填说明
source_context body string 源文本上下文
communicative_intent body string 图表标题 / 要传达内容
refinement_iterations body integer 精化迭代次数
optimize_inputs body boolean 是否启用输入优化
auto_refine body boolean 是否自动迭代到满意
max_iterations body integer 最大迭代次数
output_format body enum(png, jpeg, webp) 输出图片格式(png/jpeg/webp)
providers body object 按任务覆盖供应商与模型配置
providers.vlm_provider body string 覆盖 VLM 供应商
providers.vlm_model body string 覆盖 VLM 模型
providers.image_provider body string 覆盖图像供应商
providers.image_model body string 覆盖图像模型
响应
状态码说明
202请求成功
422参数校验错误
请求命令(cURL)
curl -X POST "https://api.paperbanana.me/api/v1/tasks/generate" -H "Authorization: Bearer " \
  -H "Content-Type: application/json" \
  -d '{
  "source_context": "我们的方法分为检索、规划、迭代精化三个阶段。",
  "communicative_intent": "方法整体流程图",
  "refinement_iterations": 3,
  "optimize_inputs": true
}'
POST 提交统计图任务 需鉴权

/api/v1/tasks/plot

提交统计图生成任务,支持自定义 JSON 数据。

任务接口
请求类型(Content-Type)

application/json

请求示例
{
  "intent": "比较不同模型在三个基准上的准确率",
  "raw_data": {
    "models": [
      "A",
      "B",
      "C"
    ],
    "mmlu": [
      85.2,
      88.1,
      90.3
    ],
    "arc": [
      78.0,
      80.5,
      82.9
    ]
  },
  "refinement_iterations": 2
}
参数说明
参数位置类型必填说明
intent body string 图表意图
raw_data body any 统计图原始数据(JSON)
source_context body string 源文本上下文
refinement_iterations body integer 精化迭代次数
output_format body enum(png, jpeg, webp) 输出图片格式(png/jpeg/webp)
providers body object 按任务覆盖供应商与模型配置
providers.vlm_provider body string 覆盖 VLM 供应商
providers.vlm_model body string 覆盖 VLM 模型
providers.image_provider body string 覆盖图像供应商
providers.image_model body string 覆盖图像模型
响应
状态码说明
202请求成功
422参数校验错误
请求命令(cURL)
curl -X POST "https://api.paperbanana.me/api/v1/tasks/plot" -H "Authorization: Bearer " \
  -H "Content-Type: application/json" \
  -d '{
  "intent": "比较不同模型在三个基准上的准确率",
  "raw_data": {
    "models": [
      "A",
      "B",
      "C"
    ],
    "mmlu": [
      85.2,
      88.1,
      90.3
    ],
    "arc": [
      78.0,
      80.5,
      82.9
    ]
  },
  "refinement_iterations": 2
}'
POST 提交续跑任务 需鉴权

/api/v1/tasks/continue

继续已有 run 的迭代优化,支持用户反馈。

任务接口
请求类型(Content-Type)

application/json

请求示例
{
  "run_id": "run_20260226_120000_ab12cd",
  "additional_iterations": 2,
  "user_feedback": "把箭头更粗一些,阶段颜色区分更明显。"
}
参数说明
参数位置类型必填说明
run_id body string 已有运行 ID
continue_latest body boolean 是否续跑最新 run
additional_iterations body integer 追加迭代次数
user_feedback body string 用户反馈
auto_refine body boolean 是否自动迭代到满意
max_iterations body integer 最大迭代次数
output_format body enum(png, jpeg, webp) 输出图片格式(png/jpeg/webp)
providers body object 按任务覆盖供应商与模型配置
providers.vlm_provider body string 覆盖 VLM 供应商
providers.vlm_model body string 覆盖 VLM 模型
providers.image_provider body string 覆盖图像供应商
providers.image_model body string 覆盖图像模型
响应
状态码说明
202请求成功
422参数校验错误
请求命令(cURL)
curl -X POST "https://api.paperbanana.me/api/v1/tasks/continue" -H "Authorization: Bearer " \
  -H "Content-Type: application/json" \
  -d '{
  "run_id": "run_20260226_120000_ab12cd",
  "additional_iterations": 2,
  "user_feedback": "把箭头更粗一些,阶段颜色区分更明显。"
}'
POST 提交评测任务 需鉴权

/api/v1/tasks/evaluate

上传生成图与参考图,异步返回结构化评测结果。

任务接口
请求类型(Content-Type)

multipart/form-data

参数说明
参数位置类型必填说明
generated_image body file 待评测生成图文件
reference_image body file 参考图文件
source_context body string 源文本上下文
caption body string 图表标题
vlm_provider body string 评测时覆盖 VLM 供应商
vlm_model body string 评测时覆盖 VLM 模型
响应
状态码说明
202请求成功
422参数校验错误
请求命令(cURL)
curl -X POST "https://api.paperbanana.me/api/v1/tasks/evaluate" -H "Authorization: Bearer " \
  -F "generated_image=@generated.png" \
  -F "reference_image=@reference.png" \
  -F "source_context=..." \
  -F "caption=..."
GET 查询任务状态 需鉴权

/api/v1/tasks/{task_id}

轮询任务状态,直到状态变为完成或失败。

任务接口
参数说明
参数位置类型必填说明
task_id path string 任务 ID
响应
状态码说明
200请求成功
422参数校验错误
请求命令(cURL)
curl -X GET "https://api.paperbanana.me/api/v1/tasks/{task_id}" -H "Authorization: Bearer "
GET 下载任务结果 需鉴权

/api/v1/tasks/{task_id}/artifact

下载任务最终产物(图片或 JSON)。

任务接口
参数说明
参数位置类型必填说明
task_id path string 任务 ID
响应
状态码说明
200请求成功
422参数校验错误
请求命令(cURL)
curl -X GET "https://api.paperbanana.me/api/v1/tasks/{task_id}/artifact" -H "Authorization: Bearer "