/openai/v1/batches创建 LiteLLM OpenAI-compatible Batch。input_file_id 必须属于当前账户、状态有效且带逐行价格快照。提交时不按结果扣费;任务终态后 Gateway 按 custom_id、真实 usage、请求时人民币快照和 Batch 倍率幂等结算。
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| input_file_id | string | 必填 | 已上传的 JSONL 文件 ID(purpose=batch),必须属于当前账户。 |
| endpoint | string | 必填 | 批量目标端点(整批统一),如 "/v1/chat/completions"、"/v1/embeddings"、"/v1/responses"。 |
| completion_window | string | 必填 | 完成窗口,当前仅支持 "24h"。 |
| metadata | object | 可选 | 自定义元数据,最多 16 对 K/V。 |
import OpenAI from "openai"
const client = new OpenAI({
baseURL: "https://llmapi.memene.cn/openai/v1",
apiKey: "gw_memene_<keyId>_<secret>",
})
const batch = await client.batches.create({
"input_file_id": "file-abc123",
"endpoint": "/v1/chat/completions",
"completion_window": "24h",
"metadata": {
"campaign": "summer-2026"
}
})
console.log(batch.id, batch.status){
"id": "batch_abc123",
"object": "batch",
"endpoint": "/v1/chat/completions",
"status": "validating",
"input_file_id": "file-abc123",
"completion_window": "24h",
"created_at": 1700000000,
"expires_at": 1700086400,
"request_counts": {
"total": 0,
"completed": 0,
"failed": 0
}
}注意:状态机:validating → in_progress → finalizing → completed(或 failed / expired / cancelled)。 计费:任务完成后,网关后台轮询器拉取 output 文件、逐行按各行 model 的 token 用量计费(落 GatewayCallLog,billing_mode=batch),一次性从账户余额扣减;失败的行不计费。开放 batch 的模型可单独配置 batch 折扣倍率(如半价)。