OpenAPI 参考

Modelink API · 聊天与批量推理

Modelink 聊天对话与异步批量推理 API,涵盖 OpenAI 兼容 Chat Completions、Anthropic Messages、Vertex/Gemini 原厂协议及批量任务生命周期管理。所有请求均需使用 API Key 进行身份认证;Anthropic Messages 和 Vertex/Gemini 接口优先使用对应原厂请求头,同时兼容 Bearer Token。

版本 1.0.0

创建批量推理任务

POST
/v1/batchjob/inference

根据公开可访问的 JSONL 输入文件创建异步批量推理任务。接口在任务进入后台处理后立即返回任务 ID;后续可通过详情接口轮询任务状态。

国内模型的每行请求使用 body 包裹 OpenAI 风格消息结构,海外 Claude、Gemini 等模型使用 request 包裹对应厂商的原生请求结构。完整格式与限制请参阅批量任务推理指南

认证方式

BearerAuthBEARER

Authorization 请求头中传入 API Key 或访问令牌,格式:Bearer {token}

Bearer 格式:JWT

请求体

请求体属性

  • namestring, 必填

    任务名称。

  • modelstring, 必填

    控制台中支持 Batch 的模型 ID。国内与海外接入点支持的模型范围可能不同。

  • descriptionstring

    任务描述。

    default:

  • input_files_urlstring<uri>, 必填

    服务端可公开访问的 JSONL 输入文件 URL,不能依赖 Cookie、登录态或内网访问。

请求

POST/v1/batchjob/inference
curl https://api.qnaigc.com/v1/batchjob/inference \
  --request POST \
  --header 'Authorization: Bearer YOUR_BEARER_AUTH' \
  --header 'Accept: application/json' \
  --header 'Content-Type: application/json' \
  --data '{
  "name": "离线摘要任务",
  "model": "gemini-2.5-pro",
  "description": "2026-07 文档摘要",
  "input_files_url": "https://example.com/batch/input.jsonl"
}'

响应

object

任务创建成功并进入后台处理。

响应体属性

  • idstring, 必填

    批量推理任务 ID,后续生命周期操作均需使用此 ID。

    pattern: ^bat-.+$

响应

application/json
{
  "id": "bat-1753660800000000000-12345"
}

查询批量推理任务列表

GET
/v1/batchjob/inferences

分页查询当前 API Key 所属用户创建且尚未删除的批量推理任务。

认证方式

BearerAuthBEARER

Authorization 请求头中传入 API Key 或访问令牌,格式:Bearer {token}

Bearer 格式:JWT

查询参数

  • Name
    page
    Type
    integer
    Description

    页码,从 1 开始。

  • Name
    page_size
    Type
    integer
    Description

    每页任务数。

请求体

暂无请求体

请求

GET/v1/batchjob/inferences
curl 'https://api.qnaigc.com/v1/batchjob/inferences?page={page}&page_size={page_size}' \
  --header 'Authorization: Bearer YOUR_BEARER_AUTH' \
  --header 'Accept: application/json'

响应

object[]

成功返回任务列表。没有任务时返回空数组。

响应体属性

  • idstring, 必填

    批量推理任务 ID。

  • namestring, 必填

    任务名称。

  • modelstring, 必填

    任务使用的模型 ID。

  • descriptionstring, 必填

    任务描述。

  • input_files_urlstring<uri>, 必填

    创建任务时提交的 JSONL 输入文件 URL。

  • output_files_urlstring, 必填

    结果 JSONL 文件的临时下载地址。任务尚未完成时通常为空字符串。

  • status_messagestring, 必填

    任务状态的补充说明。

  • created_atstring<date-time>, 必填

    任务创建时间。

  • updated_atstring<date-time>, 必填

    任务最后更新时间。

响应

application/json
[
  {
    "id": "bat-1753660800000000000-12345",
    "name": "离线摘要任务",
    "model": "gemini-2.5-pro",
    "description": "2026-07 文档摘要",
    "input_files_url": "https://example.com/batch/input.jsonl",
    "output_files_url": "",
    "status": "Running",
    "status_message": "任务运行中",
    "request_progress": {
      "total_request_counts": 1000,
      "completed_request_counts": 320,
      "failed_request_counts": 2
    },
    "created_at": "2026-07-28T09:00:00+08:00",
    "updated_at": "2026-07-28T09:05:00+08:00"
  }
]

查询批量推理任务

GET
/v1/batchjob/inference/{id}

根据任务 ID 查询任务状态、处理进度和结果文件地址。任务完成后,output_files_url 会提供结果 JSONL 文件的临时下载地址。

认证方式

BearerAuthBEARER

Authorization 请求头中传入 API Key 或访问令牌,格式:Bearer {token}

Bearer 格式:JWT

路径参数

  • Name
    id
    Type
    string, 必填
    Description

    创建任务时返回的批量推理任务 ID。

请求体

暂无请求体

请求

GET/v1/batchjob/inference/{id}
curl https://api.qnaigc.com/v1/batchjob/inference/{id} \
  --header 'Authorization: Bearer YOUR_BEARER_AUTH' \
  --header 'Accept: application/json'

响应

object

成功返回任务详情。

响应体属性

  • idstring, 必填

    批量推理任务 ID。

  • namestring, 必填

    任务名称。

  • modelstring, 必填

    任务使用的模型 ID。

  • descriptionstring, 必填

    任务描述。

  • input_files_urlstring<uri>, 必填

    创建任务时提交的 JSONL 输入文件 URL。

  • output_files_urlstring, 必填

    结果 JSONL 文件的临时下载地址。任务尚未完成时通常为空字符串。

  • status_messagestring, 必填

    任务状态的补充说明。

    • total_request_countsinteger<int64>

      输入文件中的请求总数。

      minimum: 0

    • completed_request_countsinteger<int64>

      已处理完成的请求数。

      minimum: 0

    • failed_request_countsinteger<int64>

      处理失败的请求数。部分供应商可能不提供该值。

      minimum: 0

  • created_atstring<date-time>, 必填

    任务创建时间。

  • updated_atstring<date-time>, 必填

    任务最后更新时间。

响应

application/json
{
  "id": "bat-1753660800000000000-12345",
  "name": "离线摘要任务",
  "model": "gemini-2.5-pro",
  "description": "2026-07 文档摘要",
  "input_files_url": "https://example.com/batch/input.jsonl",
  "output_files_url": "",
  "status": "Running",
  "status_message": "任务运行中",
  "request_progress": {
    "total_request_counts": 1000,
    "completed_request_counts": 320,
    "failed_request_counts": 2
  },
  "created_at": "2026-07-28T09:00:00+08:00",
  "updated_at": "2026-07-28T09:05:00+08:00"
}

删除批量推理任务

DELETE
/v1/batchjob/inference/{id}

删除指定任务及其任务记录。删除成功后,该任务不会再出现在列表和详情接口中。

认证方式

BearerAuthBEARER

Authorization 请求头中传入 API Key 或访问令牌,格式:Bearer {token}

Bearer 格式:JWT

路径参数

  • Name
    id
    Type
    string, 必填
    Description

    创建任务时返回的批量推理任务 ID。

请求体

暂无请求体

请求

DELETE/v1/batchjob/inference/{id}
curl https://api.qnaigc.com/v1/batchjob/inference/{id} \
  --request DELETE \
  --header 'Authorization: Bearer YOUR_BEARER_AUTH' \
  --header 'Accept: application/json'

响应

object

任务删除成功。

响应体属性

  • messagestring, 必填

    操作结果消息。

响应

application/json
{
  "message": "delete_batch_inference_job_success"
}

停止批量推理任务

POST
/v1/batchjob/inference/stop/{id}

停止尚未完成的批量推理任务。任务已停止、正在停止或已经失败时,接口返回状态冲突错误。

认证方式

BearerAuthBEARER

Authorization 请求头中传入 API Key 或访问令牌,格式:Bearer {token}

Bearer 格式:JWT

路径参数

  • Name
    id
    Type
    string, 必填
    Description

    创建任务时返回的批量推理任务 ID。

请求体

暂无请求体

请求

POST/v1/batchjob/inference/stop/{id}
curl https://api.qnaigc.com/v1/batchjob/inference/stop/{id} \
  --request POST \
  --header 'Authorization: Bearer YOUR_BEARER_AUTH' \
  --header 'Accept: application/json'

响应

object

认证失败,API Key 无效或缺失。

响应体属性

    • messagestring, 必填

      人类可读的错误描述。

    • typestring, 必填

      机器可读的错误类型。

响应

application/json
{
  "error": {
    "message": "access denied for invalid api key",
    "type": "authentication_error"
  }
}

恢复批量推理任务

POST
/v1/batchjob/inference/resume/{id}

恢复已停止或失败且允许恢复的批量推理任务。正在运行或已经完成的任务不能恢复。

认证方式

BearerAuthBEARER

Authorization 请求头中传入 API Key 或访问令牌,格式:Bearer {token}

Bearer 格式:JWT

路径参数

  • Name
    id
    Type
    string, 必填
    Description

    创建任务时返回的批量推理任务 ID。

请求体

暂无请求体

请求

POST/v1/batchjob/inference/resume/{id}
curl https://api.qnaigc.com/v1/batchjob/inference/resume/{id} \
  --request POST \
  --header 'Authorization: Bearer YOUR_BEARER_AUTH' \
  --header 'Accept: application/json'

响应

object

任务所用模型已下线。

响应体属性

    • messagestring, 必填

      人类可读的错误描述。

    • typestring, 必填

      机器可读的错误类型。

响应

application/json
{
  "error": {
    "message": "string",
    "type": "string"
  }
}