Cost Tracker 是一个 LLM API 成本监控技能,用于跨多个提供商实时追踪和监控 API 成本,并提供预算告警。
用途
该技能面向需要调用多个大模型 API 的开发者或团队,帮助掌握 token 用量与花费,避免超支。它可追踪 Anthropic、OpenAI、Google 以及自定义提供商的成本,并支持按任务、项目或用户进行成本归因。
主要能力
- 多提供商追踪:支持 Anthropic、OpenAI、Google 和自定义提供商。
- 实时监控:在调用发生时追踪成本。
- 预算告警:接近支出限额时发出通知。
- 成本归因:按 job、task 或 project 追踪成本。
- 历史报告:生成支出报告和趋势。
- 提供商对比:比较不同提供商的成本。
- 成本预估:在发起高成本调用前估算费用。
- 数据导出:导出支出数据用于分析。
使用方式
定价配置
在 config/pricing.json 中配置各提供商的模型单价与预算、告警阈值。示例结构包含 providers(anthropic、openai、google 各模型 input/output 单价与货币)、budgets(daily、weekly、monthly)以及 alerts(thresholds 与 channels)。
API 调用
- 追踪 token 用量:调用 trackUsage,传入 provider、model、input_tokens、output_tokens、job_id,返回 cost 与 currency。
- 获取当前支出:调用 getSpending('daily'),返回 amount、budget、remaining。
- 按 job 获取成本:调用 getJobCost('job-12345'),返回 total 与 breakdown。
- 生成报告:调用 generateReport({ period: 'weekly', group_by: 'provider' })。
- 设置告警:调用 setAlert,传入 type、threshold、channels、message。
- 实时仪表盘:调用 getDashboard(),返回 today、this_week、this_month 的 spent/budget/remaining,以及 top_models、top_jobs。
- 成本归因:trackUsage 可额外传入 user_id、project;通过 getCostByProject('research-agent') 获取项目成本。
- 成本预估:调用 estimateCost,传入 provider、model、estimated_input、estimated_output,返回预估 cost。
- 导出数据:调用 exportData,传入 format、period、columns,可生成 CSV。
CLI 用法
- cost-tracker status:显示当前支出。
- cost-tracker dashboard:显示详细仪表盘。
- cost-tracker job --id job-12345:显示指定 job 的成本。
- cost-tracker report --period monthly:生成月度报告。
- cost-tracker reset --period daily:重置计数器。
与 Agent 集成
在 agent 代码中可引入 trackUsage 与 shouldThrottle。调用 LLM 前先检查 shouldThrottle(),若达到成本限制则抛出错误进行节流;调用后使用 trackUsage 记录 provider、model、input_tokens、output_tokens、job_id。
适用场景
- 多模型 API 调用的成本监控与预算控制。
- 按项目、任务或用户分摊 LLM 成本。
- 需要历史支出报告与提供商成本对比的团队。
- 在 agent 中实现成本节流与预估。
限制
资料未提供安装方式、依赖要求、支持的运行环境、数据存储方式、告警渠道的具体配置细节以及许可证等信息,暂未提供。