# 4.4 用量统计

## 功能说明

用量统计功能记录和分析 API 请求数据，帮助你：

- 了解 API 使用情况
- 估算费用支出
- 分析使用模式
- 排查问题

v3.13.0 起，用量数据有两个来源：

| 数据来源                   | 覆盖范围                         | 是否需要代理拦截 |
| -------------------------- | -------------------------------- | ---------------- |
| **代理请求日志**           | 通过代理转发的所有请求           | 需要             |
| **CLI 会话日志**（v3.13 新增） | Claude / Codex / Gemini 会话历史 | 不需要           |

- **Codex 会话**：改用 JSONL 会话日志**精确解析**，替代原先的估算，并对模型名称做归一化保证定价查询一致
- **Gemini 会话**：通过 Gemini CLI 会话日志精确同步
- **Claude 会话**：同样支持从会话日志直接导入用量
- 用量面板支持**按应用筛选**（Claude / Codex / Gemini），数据互不干扰

## 前提条件

根据你使用的数据来源，前提条件不同：

**代理请求日志**（覆盖全部应用和所有代理请求）：

1. ✅ 启动代理服务
2. ✅ 开启应用接管
3. ✅ 开启日志记录

**CLI 会话日志**（v3.13 新增，无需代理）：

1. ✅ 在 CC Switch 中启用对应应用（Claude / Codex / Gemini）
2. ✅ 确保对应 CLI 有会话历史文件
3. ✅ CC Switch 会定期扫描会话目录并导入用量

## 打开用量统计

设置 → 用量 Tab

## 统计概览

### 汇总卡片

页面顶部显示关键指标：

| 指标 | 说明 |
|------|------|
| 总请求数 | 统计周期内的请求总数 |
| 真实消耗 Tokens | 输入 + 输出 + 缓存创建 + 缓存读取的缓存归一化总量 |
| 缓存命中率 | 缓存读取 Token 在可缓存输入中的占比 |
| 估算费用 | 基于定价配置计算的费用 |
| 成功率 | 成功请求的百分比 |

v3.15.0 起，用量页顶部改为筛选驱动的 Hero 卡。切换日期范围、应用、供应商或模型筛选时，Hero 中的真实消耗 Tokens、缓存命中率、请求数和费用会同步更新，并与下方日志和统计列表保持一致。

> 注意：由于缓存读取、缓存创建和 OpenAI 类协议的缓存上报方式在 v3.15.0 中做了归一化，历史 token 与费用数字可能与旧版估算不完全一致；新数字以当前归一化规则为准。

### 时间范围

可选择统计的时间范围：

| 选项 | 范围 |
|------|------|
| 今日 | 当天 00:00 至今 |
| 最近 7 天 | 过去 7 天 |
| 最近 30 天 | 过去 30 天 |

![image-20260108011730105](../../assets/image-20260108011730105.png)

## 趋势图表

### 请求趋势

折线图展示请求数量的变化趋势：

- X 轴：时间
- Y 轴：请求数量
- 可按小时/天查看
- 支持缩放和拖拽

### Token 趋势

展示 Token 使用量的变化：

- 输入 Token（蓝色）- 用户发送的 prompt 内容
- 输出 Token（绿色）- AI 生成的回复内容
- 缓存创建 Token（橙色）- 首次创建缓存消耗的 Token
- 缓存命中 Token（紫色）- 复用缓存节省的 Token
- 成本（红色虚线，右侧 Y 轴）- 估算费用

> 💡 **缓存 Token 说明**：Anthropic API 支持 Prompt Caching 功能。缓存创建时收取较高费用（通常为输入价格的 1.25 倍），但后续命中缓存时只收取 0.1 倍的价格，可大幅降低重复请求的成本。

### 时间粒度

- **今日**：按小时显示（24 个数据点）
- **7 天/30 天**：按天显示



![image-20260108011742847](../../assets/image-20260108011742847.png)

## 详细数据

页面下方有三个数据 Tab：

### 请求日志

每条请求的详细记录：

| 字段 | 说明 |
|------|------|
| 时间 | 请求时间 |
| 供应商 | 使用的供应商名称 |
| 模型 | 请求的模型（计费模型） |
| 输入 Token | 输入的 Token 数 |
| 输出 Token | 输出的 Token 数 |
| 缓存读取 | 缓存命中的 Token 数 |
| 缓存创建 | 缓存创建的 Token 数 |
| 总费用 | 估算费用（美元） |
| 耗时信息 | 请求耗时、首 Token 时间、流式/非流式 |
| 状态 | HTTP 状态码 |

#### 耗时信息说明

耗时信息列显示多个徽章：

| 徽章 | 说明 | 颜色规则 |
|------|------|----------|
| 总耗时 | 请求总时长（秒） | ≤5s 绿色，≤120s 橙色，>120s 红色 |
| 首 Token | 流式请求首个 Token 时间 | ≤5s 绿色，≤120s 橙色，>120s 红色 |
| 流式/非流式 | 请求类型 | 流式蓝色，非流式紫色 |

#### 查看详情

点击请求行可查看详细信息：

- 完整的请求参数
- 响应内容摘要
- 错误信息（如果失败）

#### 筛选日志

支持按以下条件筛选：

| 筛选项 | 选项 |
|--------|------|
| 应用类型 | 全部 / Claude / Codex / Gemini |
| 状态码 | 全部 / 200 / 400 / 401 / 429 / 500 |
| 供应商 | 文本搜索 |
| 模型 | 文本搜索 |
| 时间范围 | 开始时间 - 结束时间（日期时间选择器） |

操作按钮：
- **搜索**：应用筛选条件
- **重置**：恢复默认（过去 24 小时）
- **刷新**：重新加载数据

![image-20260108011859974](../../assets/image-20260108011859974.png)

### 供应商统计

按供应商分组的统计数据：

| 字段 | 说明 |
|------|------|
| 供应商 | 供应商名称 |
| 请求数 | 该供应商的请求总数 |
| 成功数 | 成功的请求数 |
| 失败数 | 失败的请求数 |
| 成功率 | 成功百分比 |
| 总 Token | Token 使用总量 |
| 估算费用 | 该供应商的费用 |

![image-20260108011907928](../../assets/image-20260108011907928.png)

### 模型统计

按模型分组的统计数据：

| 字段 | 说明 |
|------|------|
| 模型 | 模型名称 |
| 请求数 | 该模型的请求总数 |
| 输入 Token | 输入 Token 总量 |
| 输出 Token | 输出 Token 总量 |
| 平均延迟 | 平均响应时间 |
| 估算费用 | 该模型的费用 |

![image-20260108011915381](../../assets/image-20260108011915381.png)

## 定价配置

### 打开定价配置

设置 → 高级 → 定价配置

### 配置模型价格

为每个模型设置价格（每百万 Token）：

| 字段 | 说明 |
|------|------|
| 模型 ID | 模型标识符（如 claude-3-sonnet） |
| 显示名称 | 自定义显示名称 |
| 输入价格 | 每百万输入 Token 的价格 |
| 输出价格 | 每百万输出 Token 的价格 |
| 缓存读取价格 | 每百万缓存命中 Token 的价格 |
| 缓存创建价格 | 每百万缓存创建 Token 的价格 |

### 模型 ID 匹配规则

在匹配定价前，CC Switch 会先对请求中的模型 ID 做标准化处理：

- 去掉最后一个 `/` 之前的前缀，并转成小写
- 去掉 `:` 之后的后缀，去掉末尾的 `[1m]`
- 将 `@` 替换为 `-`
- 去掉常见包装前缀、版本后缀、日期后缀（`-YYYY-MM-DD`、`-YYYYMMDD`）
- 部分模型族支持短 ID 匹配带版本的定价项

因此，在定价配置中请填写清洗后的模型 ID，而不是请求里的完整原始模型名。

| 原始模型名 | 应填写的模型 ID | 说明 |
|------|------|------|
| `stepfun-ai/step-3.5-flash` | `step-3.5-flash` | 去掉供应商前缀 |
| `moonshotai/kimi-k2-0905:exa` | `kimi-k2-0905` | 去掉前缀和 `:` 后缀 |
| `gpt-5.2-codex@low` | `gpt-5.2-codex-low` | 将 `@` 替换为 `-` |
| `OpenAI/GPT-5.5-2026-05-14` | `gpt-5.5` | 去掉前缀和日期后缀 |
| `anthropic/claude-opus-4.8` | `claude-opus-4-8` | 去掉前缀并匹配点号格式 |
| `global.anthropic.claude-opus-4-8-v1:0` | `claude-opus-4-8` | 去掉包装前缀、版本后缀和 `:` 后缀 |
| `claude-haiku-4-5` | `claude-haiku-4-5-20251001` | 短 ID 匹配带版本定价 |

### 操作

- **添加**：点击「添加」按钮新增模型定价
- **编辑**：点击行末的编辑图标修改
- **删除**：点击行末的删除图标移除

![image-20260108011933565](../../assets/image-20260108011933565.png)

### 预设价格

CC Switch 预设了常用模型的官方价格（每百万 Token）。v3.13.0 修正了部分模型的 **CNY → USD 定价**并补齐了此前缺失的模型定义，同时修复了 **MiniMax 套餐配额数学**与 **0% → 100% 用量进度**，使费用估算和套餐进度展示更准确。

**Claude 系列（美元）**：

| 模型 | 输入 | 输出 | 缓存读取 | 缓存创建 |
|------|------|------|----------|----------|
| **Claude 4.8 系列** | | | | |
| claude-opus-4-8 | $5 | $25 | $0.50 | $6.25 |
| **Claude 4.5 系列** | | | | |
| claude-opus-4-5 | $5 | $25 | $0.50 | $6.25 |
| claude-sonnet-4-5 | $3 | $15 | $0.30 | $3.75 |
| claude-haiku-4-5 | $1 | $5 | $0.10 | $1.25 |
| **Claude 4 系列** | | | | |
| claude-opus-4 | $15 | $75 | $1.50 | $18.75 |
| claude-opus-4-1 | $15 | $75 | $1.50 | $18.75 |
| claude-sonnet-4 | $3 | $15 | $0.30 | $3.75 |
| **Claude 3.5 系列** | | | | |
| claude-3-5-sonnet | $3 | $15 | $0.30 | $3.75 |
| claude-3-5-haiku | $0.80 | $4 | $0.08 | $1.00 |

**OpenAI 系列 / Codex（美元）**：

| 模型 | 输入 | 输出 | 缓存读取 |
|------|------|------|----------|
| **GPT-5.2 系列** | | | |
| gpt-5.2 | $1.75 | $14 | $0.175 |
| **GPT-5.1 系列** | | | |
| gpt-5.1 | $1.25 | $10 | $0.125 |
| **GPT-5 系列** | | | |
| gpt-5 | $1.25 | $10 | $0.125 |

> 注：Codex 预设包含了 low/medium/high 等变体，价格与基础模型一致。

**Gemini 系列（美元）**：

| 模型 | 输入 | 输出 | 缓存读取 |
|------|------|------|----------|
| **Gemini 3 系列** | | | |
| gemini-3-pro-preview | $2 | $12 | $0.20 |
| gemini-3-flash-preview | $0.50 | $3 | $0.05 |
| **Gemini 2.5 系列** | | | |
| gemini-2.5-pro | $1.25 | $10 | $0.125 |
| gemini-2.5-flash | $0.30 | $2.50 | $0.03 |

**中国厂商模型**：

> 注：币种遵循各供应商官方定价页面。StepFun 当前按美元列出。
>
> **DeepSeek 兼容**：旧模型名 `deepseek-chat` / `deepseek-reasoner` 现等价于 `deepseek-v4-flash`（非思考/思考模式），按 v4-flash 价格计费。

| 模型 | 输入 | 输出 | 缓存读取 |
|------|------|------|----------|
| **StepFun** | | | |
| step-3.5-flash | $0.10 | $0.30 | $0.02 |
| **DeepSeek** | | | |
| deepseek-v4-flash | ¥1.00 | ¥2.00 | ¥0.20 |
| deepseek-v4-pro | ¥12.00 | ¥24.00 | ¥1.00 |
| **Kimi (月之暗面)** | | | |
| kimi-k2-thinking | ¥4.00 | ¥16.00 | ¥1.00 |
| kimi-k2 | ¥4.00 | ¥16.00 | ¥1.00 |
| kimi-k2-turbo | ¥8.00 | ¥58.00 | ¥1.00 |
| **MiniMax** | | | |
| minimax-m2.1 | ¥2.10 | ¥8.40 | ¥0.21 |
| minimax-m2.1-lightning | ¥2.10 | ¥16.80 | ¥0.21 |
| **其他** | | | |
| glm-4.7 | ¥2.00 | ¥8.00 | ¥0.40 |
| doubao-seed-code | ¥1.20 | ¥8.00 | ¥0.24 |
| mimo-v2-flash | 免费 | 免费 | - |

### 自定义价格

如果使用中转服务，价格可能不同：

1. 点击「编辑」按钮
2. 修改价格
3. 保存

## 常见问题

### 统计数据为空

检查：
- 代理服务是否运行
- 应用接管是否开启
- 日志记录是否开启
- 是否有请求通过代理

### 费用估算不准确

可能原因：
- 定价配置与实际不符
- 使用了中转服务的特殊定价

解决方法：
- 更新定价配置
- 参考供应商的实际账单

### Token 数量与供应商不一致

CC Switch 使用自己的方式估算 Token 数，可能与供应商的计算方式略有差异。以供应商账单为准。
