<!-- title: 让AI睡一晚：官方五折暗门没人领 -->
<!-- domain: cost-hacks -->

如果你正在用实时 API 跑分类、抽取、翻译、评估这类**根本不急着要答案**的任务，你大概率在给厂商白交 50% 的税。海外有个被严重低估的省钱杠杆——Batch API（批处理 API）。OpenAI、Anthropic、Google 三家都白纸黑字写着"异步换五折"，单批上限动辄十万级请求、24 小时内交付。但据我观察，国内技术圈真正把它接进生产线的不到一成。大部分人卡在两个误解：一是以为"实时才是正道"，二是根本没意识到那些半夜跑的离线任务，换条调用路径就能直接砍半。这篇就把这条和 prompt caching、model routing 并列的"第三条官方折扣暗门"彻底拆开，顺带补上提示词压缩、嵌入批处理两个能往上叠的预处理层——拼起来，你的离线账单能从五折再压到两折。

## 一、被忽视的官方五折：三大 Batch API 一览

先看三家到底白送了多少。所谓 Batch API，本质是"我同意等 24 小时，你给我对折"。你把成千上万个请求打包成一个 JSONL 文件上传，系统异步处理，结果再给你一个文件——完全绕开实时的 tokens-per-minute 速率限制。

| 厂商 | API 名称 | 折扣 | 交付窗口 | 单批上限 | 适用模型 |
|------|----------|------|----------|----------|----------|
| OpenAI | Batch API | **50% off** | ≤24 小时 | 5 万请求/文件 | GPT-4o、4o-mini、o 系列、embeddings 等 |
| Anthropic | Message Batches | **50% off** | ≤24 小时 | **10 万请求**/批 | Claude 全系列（Opus/Sonnet/Haiku） |
| Google | Gemini Batch API | **50% off** | ≤24 小时 | 依配额 | Gemini 1.5/2.0 系列 |

三个关键细节国内很少人讲清楚：

**第一，五折是 input 和 output 双砍。** 很多人误以为只省输入。错了。OpenAI Batch 和 Anthropic Message Batches 都是对**完整 token 计费直接打五折**，包括输出。考虑到输出本来就比输入贵 4–5 倍（这正是上一轮讲的"输出税"），五折落在输出上省下的钱非常可观。

**第二，不占速率限制。** 实时 API 你会被 TPM/RPM 卡脖子，高并发要排队、要升级 tier。Batch 完全走另一条管道，10 万条请求一把梭也不报 429。对那种"今晚把十万个用户评论跑情感分类"的离线任务，这是结构性优势，不光省钱还省心。

**第三，Anthropic 的 10 万上限是最大方的。** OpenAI 一个文件 5 万请求（可多文件），Anthropic 单批直接给到 10 万。如果你的离线任务量级大，Claude 这条管道吞吐更高。

## 二、该不该走异步：一张决策图

不是所有任务都该走 Batch。判断标准只有一个：**用户在等这 0.3 秒吗？** 如果答案是"不"，那它就该进 batch 队列。

```mermaid
flowchart TD
    A[一个 AI 调用请求] --> B{用户在实时等结果吗?}
    B -- 是 --> C{前缀高度重复?}
    C -- 是 --> D[走 Prompt Caching<br/>省约 90%]
    C -- 否 --> E{任务简单到爆?}
    E -- 是 --> F[路由到小模型<br/>省约 25 倍]
    E -- 否 --> G[实时大模型]
    B -- 否 --> H{可以等 24 小时吗?}
    H -- 是 --> I[✅ 走 Batch API<br/>直接五折]
    I --> J{前缀还重复?}
    J -- 是 --> K[Batch + Caching 叠加<br/>折上折]
    H -- 否 --> L[降到准实时队列]
    style I fill:#d4edda,stroke:#28a745,stroke-width:3px
    style K fill:#d4edda,stroke:#28a745,stroke-width:3px
```

这张图的关键在右下角：**Batch 和 Prompt Caching 不是二选一，是可以叠加的**。这意味着两条暗门能复合——一条五折，一条九折缓存，叠完不是五五二十五，而是按各自规则依次打折，对重复前缀的大批量离线任务，最终成本能压到原价的 5% 左右。

## 三、四类"该进 batch"的任务，你公司至少占三个

很多人不知道哪些任务该异步。给个清单，对号入座：

1. **批量内容分类/打标签**：十万个商品评论走情感分类、客服工单打优先级标签。用户不在线等，24 小时出结果完全够。
2. **结构化信息抽取**：从合同、发票、简历里抽字段。跑一晚上是常态，实时是浪费。
3. **评估与基准测试**：你训了个新模型，要在 eval 集上跑几千条对比。这是最典型的"不该花实时钱"的场景。
4. **批量嵌入生成**：给向量数据库灌数据、给检索增强系统建索引。embedding 本来就便宜，五折后几乎免费。

特别是第 3 条——很多团队在 eval 时习惯性用实时 endpoint，结果每次模型迭代都烧一笔实时费。把 eval 切到 batch，是性价比最高的一次改动，几乎零工程成本。

## 四、叠加层一：用提示词压缩再砍一刀

进了 batch 还能再省。如果你的 prompt 很长（比如带大段 few-shot 示例、长文档），可以先用**提示词压缩**把输入 token 缩小，再打包进 batch。

微软的 **LLMLingua** 是这条线最稳的工具。它的逻辑是用一个小模型评估每个 token 的重要性，把低信息量的 token 删掉，号称最高可压 20 倍。三个变体各有侧重：

- **LLMLingua**：通用压缩，2–10 倍。
- **LLMLingua-2**：换 BERT 分类器做数据压缩，更快更可控。
- **LongLLMLingua**：专攻长上下文场景，长 prompt 省钱效果最猛。

实操要点：压缩是**预处理**，可以在本地小模型上跑，成本几乎为零；压缩后的 prompt 再进 batch，等于"压缩省一笔 + 五折省一笔"。但要注意——压缩会带来轻微性能损失，对分类、抽取这类容错高的任务是净赚，对需要逐字精确的任务（代码、数学）要谨慎调压缩率。

## 五、叠加层二：嵌入也别走实时

embedding 看似便宜，但量一上来也很烧。给百万级文档建向量索引时，走 **OpenAI Batch 的 embeddings 端点**同样五折。而且 embedding 是最不怕延迟的——你不会让用户等"实时算完这个句子的向量"，它就是该离线灌库。

组合拳很清晰：**LLMLingua 压缩文本 → Batch embeddings 五折 → 写入向量库**。一条离线 ETL 管道，三个省钱杠杆全开。

## 六、实战省钱计算：一个真实账本

以"给 10 万条客服工单跑情感分类"为例，用 GPT-4o，每条平均 300 input token + 50 output token。按官方公示价参考（input $2.50/M、output $10.00/M，以官网实时为准）：

| 方案 | 输入成本 | 输出成本 | 合计 | 相对实时 |
|------|----------|----------|------|----------|
| 实时 GPT-4o | $75 | $50 | **$125** | 100% |
| Batch GPT-4o（五折） | $37.5 | $25 | **$62.5** | **50%** |
| Batch + 路由到 4o-mini | $1.13 | $1.5 | **$2.6** | **2.1%** |
| Batch + mini + LLMLingua 压缩 3 倍 | $0.38 | $1.5 | **$1.9** | **1.5%** |

注意这张表的后两行——这才是真正被低估的信息差：**绝大多数分类任务根本用不着 GPT-4o**。把它路由到 GPT-4o-mini（本身便宜近 17 倍），再叠 batch 五折，再叠提示词压缩，10 万条工单从 125 美元压到不到 2 美元。这不是"优化"，这是从"按实时旗舰算账"切换到"按任务真实需求算账"的视角差。

模型选型的小提醒：很多团队闭眼用旗舰模型，是因为没意识到"分类任务上 mini 和 4o 的准确率差距可能只有 1–2 个百分点，但价格差十几倍"。先在小样本上测准确率，能接受就降级，降级后再进 batch——这是降本的正确顺序。

## 七、三个落地陷阱，别踩

**陷阱一：把用户在线等的东西塞进 batch。** Batch 是 24 小时窗口，不是"快一点"。一旦有用户实时交互的请求被误放进来，体验直接崩。用上面那张决策图的"用户在等吗"这个闸把关。

**陷阱二：忽视失效窗口。** 24 小时意味着如果你的数据有时效性（比如今天的热点分析），结果出来可能已经过气。评估、分类、建索引这些长期资产类任务才适合。

**陷阱三：以为 batch 要改架构。** 不用。OpenAI 和 Anthropic 的 batch 都是"上传 JSONL → 拿到一个 batch id → 轮询或等通知 → 下载结果"，几十行代码。最大的成本其实是**团队认知**——决策者得先承认"我们的离线任务在白交实时税"。

## 八、信息差总结

| 你以为的 | 实际的 |
|----------|--------|
| 实时 API 是唯一调用方式 | 三家都有官方 Batch，直接五折 |
| 五折只省输入 | input/output **全部**打五折 |
| batch 占速率限制 | 完全独立管道，不占 TPM/RPM |
| 省钱只有缓存和路由两条路 | Batch + Caching + 路由可**复合叠加** |
| 评估必须用实时旗舰 | eval 是最该进 batch 的场景 |
| embedding 量小不用管 | 建索引走 batch embeddings 同样五折 |

## 九、行动指南（今晚就能做）

1. **审计账单**：去 dashboard 拉过去 30 天的调用日志，筛出"延迟 >10 秒、非用户实时"的请求——这就是你的 batch 候选池，通常占总量 30%–60%。
2. **挑一个 eval 任务试水**：选一个基准测试任务，从实时切到 OpenAI 或 Anthropic 的 batch，跑一遍对账。这是风险最低、收益最直观的第一次迁移。
3. **给分类任务做模型降级测试**：在 200 条样本上对比旗舰 vs mini 的准确率，差距能接受就永久降级。
4. **接入 LLMLingua 压缩长 prompt**：GitHub 上 `microsoft/LLMLingua` 开箱即用，先在 few-shot 示例上试 3 倍压缩。
5. **把离线 ETL 全部切 batch**：建索引、打标签、抽取这类管道，统一走 batch + 压缩，形成可复制的省钱范式。

一句话收尾：**AI 降本最大的信息差，不在找便宜模型，而在"该异步的任务别用实时算"。** 缓存是省重复、路由是省难度、batch 是省时间——三把刀你有了几把？

---
> 本文由「51学通信」技术团队出品。51学通信由通信行业18年老兵**爱卫生**（微信ID: gprshome201101）维护。
> 聚焦5G/6G核心网、3GPP标准、AI工具实战。知识星球「51学通信」提供深度技术答疑和行业洞察。

### 参考来源
- OpenAI Batch API 官方指南：https://platform.openai.com/docs/guides/batch
- Anthropic Message Batches 文档：https://docs.anthropic.com/en/docs/build-with-claude/batch-processing
- Google Gemini Batch API：https://ai.google.dev/gemini-api/docs/batch-mode
- 微软 LLMLingua（提示词压缩）：https://github.com/microsoft/llmlingua
- OpenAI 官方定价页：https://openai.com/api/pricing/

> [!tip] 51学通信知识星球
> **星主：爱卫生**（微信：gprshome201101）——公众号「51学通信」创办者，19 年通信行业运维与讲师经验，著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书（各大电商平台有售）。
> **星球定位**：深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域，主打运维岗位与信令分析。
> **当前规模**：5200 篇主题 / 990 个回答，198 元/年。
> **加入福利**：加入星球后请加爱卫生微信，拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题，另有群内分享。
> **AI 加持**：51学通信知识星球已作为 skill 接入 WorkBuddy，使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例，做总结、找文档和 PPT 等场景全覆盖。

![51学通信知识星球海报-扫码加入](https://wiki.500nian.com/images/zhixingqiu_qrcode.png)
