OpenAPI 参考
Modelink API · 聊天与批量推理
Modelink 聊天对话与异步批量推理 API,涵盖 OpenAI 兼容 Chat Completions、Anthropic Messages、Vertex/Gemini 原厂协议及批量任务生命周期管理。所有请求均需使用 API Key 进行身份认证;Anthropic Messages 和 Vertex/Gemini 接口优先使用对应原厂请求头,同时兼容 Bearer Token。
版本 1.0.0
创建批量推理任务
根据公开可访问的 JSONL 输入文件创建异步批量推理任务。接口在任务进入后台处理后立即返回任务 ID;后续可通过详情接口轮询任务状态。
国内模型的每行请求使用 body 包裹 OpenAI 风格消息结构,海外 Claude、Gemini 等模型使用 request 包裹对应厂商的原生请求结构。完整格式与限制请参阅批量任务推理指南。
认证方式
在 Authorization 请求头中传入 API Key 或访问令牌,格式:Bearer {token}。
请求体
请求体属性
- namestring, 必填
任务名称。
- modelstring, 必填
控制台中支持 Batch 的模型 ID。国内与海外接入点支持的模型范围可能不同。
- descriptionstring
任务描述。
default:
- input_files_urlstring<uri>, 必填
服务端可公开访问的 JSONL 输入文件 URL,不能依赖 Cookie、登录态或内网访问。
请求
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"
}'响应
任务创建成功并进入后台处理。
响应体属性
- idstring, 必填
批量推理任务 ID,后续生命周期操作均需使用此 ID。
pattern: ^bat-.+$
响应
{
"id": "bat-1753660800000000000-12345"
}查询批量推理任务列表
分页查询当前 API Key 所属用户创建且尚未删除的批量推理任务。
认证方式
在 Authorization 请求头中传入 API Key 或访问令牌,格式:Bearer {token}。
查询参数
- Name
- page
- Type
- integer
- Description
页码,从 1 开始。
- Name
- page_size
- Type
- integer
- Description
每页任务数。
请求体
暂无请求体
请求
curl 'https://api.qnaigc.com/v1/batchjob/inferences?page={page}&page_size={page_size}' \
--header 'Authorization: Bearer YOUR_BEARER_AUTH' \
--header 'Accept: application/json'响应
成功返回任务列表。没有任务时返回空数组。
响应体属性
- idstring, 必填
批量推理任务 ID。
- namestring, 必填
任务名称。
- modelstring, 必填
任务使用的模型 ID。
- descriptionstring, 必填
任务描述。
- input_files_urlstring<uri>, 必填
创建任务时提交的 JSONL 输入文件 URL。
- output_files_urlstring, 必填
结果 JSONL 文件的临时下载地址。任务尚未完成时通常为空字符串。
InitializingSyncingInputFileUploadingQueuedRunningSyncingOutputFileCompletedTerminatingTerminatedFailedUnknown
- 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>, 必填
任务最后更新时间。
响应
[
{
"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"
}
]查询批量推理任务
根据任务 ID 查询任务状态、处理进度和结果文件地址。任务完成后,output_files_url 会提供结果 JSONL 文件的临时下载地址。
认证方式
在 Authorization 请求头中传入 API Key 或访问令牌,格式:Bearer {token}。
路径参数
- Name
- id
- Type
- string, 必填
- Description
创建任务时返回的批量推理任务 ID。
请求体
暂无请求体
请求
curl https://api.qnaigc.com/v1/batchjob/inference/{id} \
--header 'Authorization: Bearer YOUR_BEARER_AUTH' \
--header 'Accept: application/json'响应
成功返回任务详情。
响应体属性
- idstring, 必填
批量推理任务 ID。
- namestring, 必填
任务名称。
- modelstring, 必填
任务使用的模型 ID。
- descriptionstring, 必填
任务描述。
- input_files_urlstring<uri>, 必填
创建任务时提交的 JSONL 输入文件 URL。
- output_files_urlstring, 必填
结果 JSONL 文件的临时下载地址。任务尚未完成时通常为空字符串。
InitializingSyncingInputFileUploadingQueuedRunningSyncingOutputFileCompletedTerminatingTerminatedFailedUnknown
- 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>, 必填
任务最后更新时间。
响应
{
"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"
}删除批量推理任务
删除指定任务及其任务记录。删除成功后,该任务不会再出现在列表和详情接口中。
认证方式
在 Authorization 请求头中传入 API Key 或访问令牌,格式:Bearer {token}。
路径参数
- Name
- id
- Type
- string, 必填
- Description
创建任务时返回的批量推理任务 ID。
请求体
暂无请求体
请求
curl https://api.qnaigc.com/v1/batchjob/inference/{id} \
--request DELETE \
--header 'Authorization: Bearer YOUR_BEARER_AUTH' \
--header 'Accept: application/json'响应
任务删除成功。
响应体属性
- messagestring, 必填
操作结果消息。
响应
{
"message": "delete_batch_inference_job_success"
}停止批量推理任务
停止尚未完成的批量推理任务。任务已停止、正在停止或已经失败时,接口返回状态冲突错误。
认证方式
在 Authorization 请求头中传入 API Key 或访问令牌,格式:Bearer {token}。
路径参数
- Name
- id
- Type
- string, 必填
- Description
创建任务时返回的批量推理任务 ID。
请求体
暂无请求体
请求
curl https://api.qnaigc.com/v1/batchjob/inference/stop/{id} \
--request POST \
--header 'Authorization: Bearer YOUR_BEARER_AUTH' \
--header 'Accept: application/json'响应
认证失败,API Key 无效或缺失。
响应体属性
- messagestring, 必填
人类可读的错误描述。
- typestring, 必填
机器可读的错误类型。
响应
{
"error": {
"message": "access denied for invalid api key",
"type": "authentication_error"
}
}恢复批量推理任务
恢复已停止或失败且允许恢复的批量推理任务。正在运行或已经完成的任务不能恢复。
认证方式
在 Authorization 请求头中传入 API Key 或访问令牌,格式:Bearer {token}。
路径参数
- Name
- id
- Type
- string, 必填
- Description
创建任务时返回的批量推理任务 ID。
请求体
暂无请求体
请求
curl https://api.qnaigc.com/v1/batchjob/inference/resume/{id} \
--request POST \
--header 'Authorization: Bearer YOUR_BEARER_AUTH' \
--header 'Accept: application/json'响应
任务所用模型已下线。
响应体属性
- messagestring, 必填
人类可读的错误描述。
- typestring, 必填
机器可读的错误类型。
响应
{
"error": {
"message": "string",
"type": "string"
}
}