读懂 AI 大模型 API 计费:Prompt、Completion 与 Cache 价格术语全解析
内容
在对接各类 AI 大模型(如 OpenAI GPT-4、Anthropic Claude 3.5 等)的 API 时,开发者经常会在不同的控制台或第三方代理工具中看到各种各样的计费术语和价格。在 `wiki.lib00.com` 的日常开发实践中,我们经常遇到开发者对 API 账单感到困惑:为什么有的地方显示价格全为 $0,而官方标价却很贵?Input、Prompt、Completion 这些词到底是什么关系?
本文将为您系统科普 AI 相关的价格区别与核心术语。
## 1. 核心概念:什么是 Token?
AI 大模型并不按字数计费,而是按 **Token(令牌)** 计费。Token 是模型处理文本的基本单位。
* **换算比例:** 1,000 个 Tokens 大约等于 750 个英文单词,或者 400-500 个汉字(具体取决于分词器 tokenizer)。
* **计费单位:** 官方 API 通常以 **1M Tokens**(一百万个令牌)作为标准计费单位。
---
## 2. 三大计费维度与术语等价关系
不同的厂商(如 OpenAI, Anthropic, Google)或不同的开发者工具在界面显示时的用词习惯不同,但本质上都围绕三个核心维度展开。以下是这三组术语的**完全等价**关系:
### 维度一:输入端 (Input = Prompt)
* **对应关系:** `Input Price` ≡ `Prompt Price`
* **定义:** 你发送给 AI 的所有文字信息,包括系统提示词(System Prompt)、对话历史、上传的文档以及你当前的问题。
* **成本特点:** 这是 AI “阅读”你的需求所产生的成本。通常比输出价格**便宜很多**(通常是 1:3 到 1:5 的比例),因为模型“阅读前文”比“思考并生成新内容”消耗的算力更低。
* **习惯用法:** OpenAI 早期文档多用 **Prompt**,而 Anthropic (Claude) 和 Google (Gemini) 更多使用 **Input**。
### 维度二:输出端 (Output = Completion)
* **对应关系:** `Output Price` ≡ `Completion Price`
* **定义:** AI 针对你的指令最终生成的回复内容。
* **成本特点:** 这是 AI 账单中**最贵的部分**。模型在生成每一个 Token 时都需要进行复杂的自回归概率计算,对 GPU 资源的占用最高。
* **习惯用法:** “Completion” 是一个技术术语,意为“补全”,因为大语言模型的本质是根据前文“补全”后续的字符。为了通俗易懂,现在越来越多的平台直接称之为 **Output**。
### 维度三:缓存端 (Cached Input = Cache Price)
* **对应关系:** `Cached Input Price` ≡ `Cache Price`
* **定义:** 当你连续提问,且发送的 Prompt 中有大量重复的上下文(比如同一个长文档或长代码库)被系统命中缓存时,这部分 Token 的单价。
* **成本特点:** 享有**大幅度折扣**(通常只有原输入价格的 10% 到 50%)。AI 直接读取缓存状态,无需重新计算 Attention 矩阵。
* **习惯用法:** 这是近期大规模普及的降本技术。Anthropic 称之为 **Context Caching**,OpenAI 称之为 **Prompt Caching**。
---
## 3. 术语总结对比表
以后在任何 API 仪表盘里看到这两套词,直接把它们划等号即可:
| 计费环节 | 术语 A (通用/直观) | 术语 B (技术/传统) | 实际意义 | 成本占比 |
| :--- | :--- | :--- | :--- | :--- |
| **进** | **Input** | **Prompt** | 你发给 AI 的内容 | 较低 |
| **出** | **Output** | **Completion** | AI 回复你的内容 | 最高 |
| **存** | **Cached Input** | **Cache** | 重复对话的“优惠”部分 | 极低 |
---
## 4. 为什么会看到 $0.0000 的价格?
有时候开发者会在某些客户端看到如下价格:
```plaintext
Prompt price: $0.0000/1M
Completion price: $0.0000/1M
Cache price: $0.0000/1M
```
而官方(如 Claude 3.5 Sonnet)的价格可能是:
```plaintext
Input: $2.50 / 1M tokens
Cached input: $0.25 / 1M tokens
Output: $15.00 / 1M tokens
```
这两组数据差异巨大的原因在于:
1. **$0.0000 往往是占位符或免费资源:** 它通常出现在免费试用期、本地部署的开源模型(如使用 Ollama 运行的 Llama 3)、或者某些 API 管理软件尚未配置具体价格表时的默认显示。
2. **$2.50/$15.00 是真实的商业生产环境定价:** 这代表了调用顶尖闭源大模型所需的真实算力成本。
---
## 总结建议
正如 `DP@lib00` 经常强调的,在进行 AI 应用开发时,如果看到全 0 的价格,请务必确认是否正确配置了 API Key 或计费规则。如果使用的是官方付费接口,**控制 Output(输出)的长度是省钱的关键**,因为那是产生账单的大头。同时,充分利用 **Cache(缓存)** 机制,可以极大地降低长文本对话的 Input 成本。
相关推荐
终极解密:为何 PHP json_decode 总是报“控制字符错误”?
00:00 | 106次频繁遇到 PHP `json_decode` 函数抛出的“控制字符错误,可能编码不正确”的异常?这个...
告别内存溢出:PHP PDO 实现 MySQL 数据流式读取终极指南
00:00 | 125次在 PHP 中处理海量数据时,传统的 `fetchAll()` 方法可能会导致灾难性的内存溢出。本文...
VS Code 进阶:如何像 PHPStorm 一样精准追踪 PHP 函数定义?
00:00 | 4次习惯了 PHPStorm 的开发者在使用 VS Code 编写 PHP 时,常遇到无法通过 Ctrl...
Nginx vs. Vite:如何优雅处理SPA中的资源路径前缀问题?
00:00 | 111次在部署使用Vite构建的单页应用(SPA)时,常常会因URL中的语言前缀(如 /zh/)导致静态资源...