监控、预算和优化各供应商的AI API支出。追踪每次调用,执行预算,检测浪费,并提供优化建议。
Token Tamer — AI API成本控制是一项面向实际任务的技能,主要用于使用这一技能来跟踪AI API成本,执行支出预算,并获得优化建议;与 OpenAI、Anthropic、双子座、Olla 等任何提供者合作。
从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;
若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
使用此技能追踪 AI API 调用成本、强制执行支出预算,并获取优化建议。支持所有主流提供商:OpenAI、Anthropic、Gemini、Ollama 或自定义后端。
当用户提出以下问题时,可调用该技能:
config_example.py 复制为 token_config.py# token_config.py
USAGE_FILE = "./token_usage.json"
BUDGETS = {
'daily': 10.00,
'weekly': 50.00,
'monthly': 150.00,
}
ALERT_THRESHOLDS = {
'warning': 80, # 预算使用率达 80% 时触发告警
'critical': 95, # 预算使用率达 95% 时触发告警
}
每次 API 请求后调用该方法,以追踪本次调用成本:
import token_config as config
from token_tamer import TokenTamer
tamer = TokenTamer(config)
# 记录一次调用 — 返回 (cost, status)
cost, status = tamer.log_usage(
provider='anthropic',
model='claude-sonnet-4-5',
input_tokens=1500,
output_tokens=800,
task='summarize', # 可选
session='sess_001' # 可选
)
if status == 'KILL':
raise Exception("熔断开关已激活 — 日预算已超限")
status = tamer.get_status()
# 返回结果示例:
# {
# 'daily': { 'cost': 2.40, 'budget': 10.00, 'status': 'OK', 'message': None },
# 'weekly': { 'cost': 8.10, 'budget': 50.00, 'status': 'OK', 'message': None },
# 'monthly': { 'cost': 8.10, 'budget': 150.00, 'status': 'OK', 'message': None },
# 'kill_switch': False
# }
if status['daily']['status'] == 'CRITICAL':
print("日预算即将耗尽 — 建议切换至更低成本模型")
# 在发起高成本调用前进行检查(返回 True 表示允许,False 表示阻断)
if not tamer.check_before_call(estimated_cost=0.10):
raise Exception("熔断开关已激活 — API 调用已被阻止")
import token_config as config from token_reports import ReportGenerator reporter = ReportGenerator(config) # 生成日报 report = reporter.generate_daily_report() reporter.print_report(report) # 生成周报 report = reporter.generate_weekly_report() reporter.print_report(report) # 按提供商维度拆分报告 report = reporter.generate_by_provider_report() reporter.print_report(report) # 按模型维度拆分报告 report = reporter.generate_by_model_report() reporter.print_report(report) # 按任务类型维度拆分报告 report = reporter.generate_by_task_report() reporter.print_report(report)
import token_config as config from token_optimizer import WasteDetector, Optimizer # 检测过去 7 天内的浪费行为 detector = WasteDetector(config) waste = detector.detect_all(days=7) # 获取优化建议 optimizer = Optimizer(config) recommendations = optimizer.generate_recommendations(days=7)
# 查看当前支出状态
python token_tamer.py --status
# 通过 CLI 记录一次调用
python token_tamer.py --log --provider openai --model gpt-4o
--input-tokens 1500 --output-tokens 300 --task "code_generation"
# 检查是否允许继续发起 API 调用(退出码 0 = 允许,1 = 阻断)
python token_tamer.py --check
# 生成日报
python token_reports.py --daily
# 检测浪费行为(过去 7 天)
python token_optimizer.py --detect-waste --days 7
# 获取优化建议
python token_optimizer.py --recommendations --days 7
完整 API 参考、模型定价配置说明及高级用法,请参阅 README.md。