读懂 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 MVC 项目架构终极指南
00:00 | 125次在构建 PHP MVC 项目时,如何正确处理用户上传的公开文件(如图片、视频)是一个关键的安全和架构...
PHP重构实战:从Guzzle到原生cURL,打造可扩展、可配置的专业翻译组件
00:00 | 115次学习如何用PHP原生cURL替代Guzzle进行API通信。本指南将通过一个实际的翻译组件案例,带你...
为什么我的设备有三个IPv6地址?一篇看懂链路本地、公网和临时地址
00:00 | 198次刚启用IPv6,发现你的NAS或电脑获得了多个IPv6地址而感到困惑?本文将为你详细解析这三个地址—...
Vue i18n 踩坑指南:如何解决因邮箱地址 `@` 符号引发的 "Invalid Linked Format" 编译错误?
00:00 | 148次在 Vue.js 项目中使用 vue-i18n 处理包含 `@` 符号的文本(如邮箱地址)时,可能会...