每天多花40分钟对账?我用一个脚本把AI用量统计做成了自动化
痛点:手动统计用量到底浪费多少时间
先算一笔账。假设你的小团队接入了三四个AI模型接口,分别用于客服回复、文案生成和图片描述。每到月底,你想回答这几个问题:
- 这个月AI一共花了多少钱?
- 哪个项目、哪个功能花得最多?
- 有没有某个调用异常,token消耗突然翻倍?
常见做法是从各处导出日志,打开Excel手动汇总。独立开发者大概要花30分钟到1小时,小团队有人专门对账的话,一个月累计下来轻松超过两小时。更糟的是,手动统计天然滞后——等你在月底发现某个功能调用量异常时,浪费已经发生了整整一个月。
我的做法是:把所有AI调用统一收敛到一个网关,再用一个脚本定时拉取用量数据。接入过程不到20分钟,之后每天的用量统计、成本分摊完全自动化。本文带你完整走一遍。
方案思路:统一网关 + 定时脚本
整体架构非常简单:
你的应用 → ThisToken.AI 统一网关 → 各家模型
↓
用量统计脚本(定时拉取)ThisToken.AI 是一个AI接口聚合平台,你的应用只需要对接它的统一接口,就能访问多种模型,同时所有调用的token用量、成本数据都在一个后台集中记录。相比每个模型单独申请key、单独看账单,维护成本直接降为一份。
第一步:打开 https://api.thistoken.ai/register 注册账号。流程很短,邮箱验证即可。
第二步:进入控制台,在「API Keys」页面创建一个密钥。不要把密钥写进代码(关于多环境密钥管理,可以参考之前那篇硬编码泄露的文章),我们用环境变量存储:
export THISTOKEN_API_KEY="sk-xxxxxxxx"第一段代码:拉取你的用量数据
下面这段Python脚本,是整个统计系统的起点——先跑通「取到数据」这一步:
import os
import requests
from openai import OpenAI
# 所有模型调用统一走 ThisToken.AI 网关
client = OpenAI(
api_key=os.environ["THISTOKEN_API_KEY"],
base_url="https://api.thistoken.ai/v1",
)
# 1. 先做一次真实调用,确保链路通
resp = client.chat.completions.create(
model="gpt-4o-mini",
messages=[{"role": "user", "content": "ping"}],
)
usage = resp.usage
print(f"本次调用: 输入{usage.prompt_tokens} tokens, "
f"输出{usage.completion_tokens} tokens")
# 2. 拉取账户级用量汇总(字段以控制台文档为准)
headers = {"Authorization": f"Bearer {os.environ['THISTOKEN_API_KEY']}"}
r = requests.get(
"https://api.thistoken.ai/v1/usage/summary",
headers=headers,
timeout=10,
)
if r.ok:
print(r.json())
else:
print(f"用量接口状态码: {r.status_code},请以控制台文档为准")保存为 check_usage.py,运行 python check_usage.py。如果看到token计数输出,说明调用链路已经通了。
几点说明:
- 每次调用的usage直接来自响应体,不需要你自己在业务代码里插桩计数,这是网关方案最大的省时点——以前我要在每个调用点手动累加token,改一处漏一处,现在零侵入。
- 用量汇总接口的具体字段和路径,以平台控制台的API文档为准,本文不预设字段结构。
- 模型价格不要写死在脚本里。各家价格会调整,具体数字以官网价格页为准;如果平台返回的成本字段已经按最新价格计算,直接用返回值最稳妥。
从「能跑」到「每天自动对账」
跑通第一段代码后,花十分钟做两件事,统计工作就彻底自动化了:
给每个调用打标签。 在请求里加上元数据(如项目名、功能名),统计时就能按维度拆分。哪怕只是简单地传不同的key给不同项目,也能实现基础分账。
加一个定时任务。 Linux/Mac上用crontab,每天早上8点跑一次统计脚本,把结果写入表格或推送到群机器人:
0 8 * * * /usr/bin/python3 /path/to/check_usage.py >> /path/to/usage.log前后对比:到底省了多少
接入前的状态(以我自己的小项目为例):
- 月底手动汇总三个来源的账单:约40分钟
- 发现异常调用的平均延迟:最长一个月
- 想按功能拆分成本:基本做不到,只能估
接入后:
- 对账时间:0分钟(脚本每天自动生成)
- 异常发现延迟:一天以内
- 按项目、按功能拆分成本:天然支持
也就是说,一次性投入约20分钟接入 + 10分钟配置定时任务,换回每月至少40分钟的重复劳动,更重要的是把「成本失控发现周期」从一个月压缩到一天。对于用量大的团队,后者省下的钱往往远超时间本身的价值。
写在最后
AI用量统计这件事,拖得越晚,欠的账越多。与其月底看着账单猜,不如现在花20分钟把数据管道搭起来。
如果你还没注册,可以从这里开始:https://api.thistoken.ai/register —— 注册、拿key、跑通上面那段代码,今天就有一份属于你自己的用量日报。
---
想直接跑通示例?访问 https://api.thistoken.ai/register 注册 ThisToken.AI,获取 API Key 后即可开始。