返回顶部
C

Cost Control 3-Tier API Spend Protection三层API成本防护

Prevent runaway API costs with 3-tier protection: caution, emergency, and hard cap. Works for ANY expensive API GPT-4, Claude Opus, Gemini, cloud services.

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.3
安全检测
已通过
350
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

Cost Control 3-Tier API Spend Protection

成本控制三层API支出保护

通过三层保护机制防止API成本失控:警告、紧急和硬上限。适用于任何昂贵的API——GPT-4、Claude Opus、Gemini、云服务。



防止API成本失控。适用于任何昂贵的API(GPT-4、Claude Opus、Gemini、云服务)。

许可证:MIT
[Python:3.8+]()

成本控制系统是一个生产级成本监控框架,具备分层响应、外部看门狗和紧急终止开关。

最初是为了在真实的成本失控事件后防止灾难性的AI API支出而构建的,现已推广到任何按请求/令牌/计算收费的昂贵API。



问题

你正在运行一个系统,该系统向昂贵的服务(OpenAI GPT-4、Anthropic Claude Opus、Google Gemini、云计算等)发出API调用。

一个bug、一个无限循环、一个配置错误 → 几分钟内烧掉数百美元

手动监控行不通。 你需要具备故障安全机制的自动化成本控制。



解决方案

成本控制系统实现了三层保护

第一层:警告模式(警告)

当成本速度超过阈值时(例如,15分钟3美元):
  • - 减慢检查间隔
  • 记录警告
  • 继续运行但受限

第二层:紧急模式(停止)

当成本速度危险时(例如,15分钟5美元):
  • - 停止所有API调用
  • 进入维护模式
  • 保留现有状态
  • 通知操作员

第三层:紧急终止开关(外部看门狗)

独立进程单独监控成本:
  • - 如果第二层未能阻止失控支出
  • 终止整个进程
  • 防止重启,直到手动清除
  • 最后一道防线

快速入门(3步)

1. 安装

bash pip install cost-control-system

或者将cost_control.py复制到你的项目中

2. 集成到你的API客户端

python from cost_control import CostTracker

tracker = CostTracker(
costcaution15min=3.00, # 15分钟3美元时警告
costemergency15min=5.00, # 15分钟5美元时紧急
costdailycap=25.00, # 每日硬上限25美元
)

每次API调用前,检查是否允许

allowed, reason = tracker.iscallallowed() if not allowed: print(fAPI调用被阻止:{reason}) # 处理紧急模式(警报、退出等) return

进行API调用

response = yourexpensiveapi_call()

记录实际成本

inputtokens = response.usage.inputtokens outputtokens = response.usage.outputtokens tracker.recordcall(inputtokens, outputtokens, requestid=req-123)

3. 部署外部看门狗(可选但推荐)

bash

每2分钟运行外部看门狗(通过cron)

/2 * cd /your/project && python3 cost_watchdog.py >> logs/watchdog.log 2>&1

集成时间:15-20分钟。



使用场景

AI API调用(GPT-4、Claude Opus、Gemini)

防止以下情况导致的令牌使用失控:
  • - 生成响应的无限循环
  • 配置错误的上下文窗口(每次调用10万+令牌)
  • 导致过度输出的提示注入

云计算(AWS Lambda、GCP Functions、Azure)

监控以下方面的支出:
  • - 无服务器函数调用
  • 计算小时数(EC2、虚拟机)
  • 数据库查询(昂贵的按查询定价)

第三方API(Stripe、Twilio、SendGrid)

跟踪以下成本:
  • - 短信/邮件发送
  • 支付处理费用
  • 数据丰富API

研究/机器学习训练

控制以下成本:
  • - GPU计算时间
  • 模型训练运行
  • 批量推理作业

任何具有可衡量的按请求或按单位成本的API都能从中受益。



架构

三层响应系统

正常 → 警告(第一层) → 紧急(第二层) → 终止(第三层)
↓ ↓ ↓ ↓
正常 减慢速度 停止调用 终止进程

第一层:警告模式

触发条件: 15分钟成本 > 3美元(可配置) 响应:
  • - 减慢检查间隔(降低API调用频率)
  • 记录警告
  • 继续运行

退出条件: 15分钟成本 < 2美元持续5分钟



第二层:紧急模式


触发条件: 15分钟成本 > 5美元 或 每日成本 > 25美元(可配置)
响应:
  • - 阻止所有API调用(iscallallowed()返回False)
  • 写入紧急标志文件
  • 发送警报(Discord、Slack、电子邮件等)
  • 系统保持存活但暂停

退出条件: 需要手动干预(rm state/cost_emergency.flag)



第三层:紧急终止开关(外部看门狗)


触发条件: 每小时成本 > 12美元 或 每日成本 > 30美元(可配置,高于第二层)
响应:
  • - 终止整个进程(SIGTERM → SIGKILL)
  • 写入紧急标志(防止重启)
  • 独立于主进程(无法绕过)

目的: 捕获第二层失败的情况(例如,成本跟踪器本身的bug)



配置

基本配置(最小设置)

python from cost_control import CostTracker

tracker = CostTracker(
# 第一层(警告)
costcaution15min=3.00,

# 第二层(紧急)
costemergency15min=5.00,
costdailycap=25.00,

# 状态持久化
state_dir=./state,
)

高级配置(所有选项)

python tracker = CostTracker( # 阈值 costcaution15min=3.00, costemergency15min=5.00, costdailycap=25.00, maxcostper_call=0.50, # 单次调用合理性检查

# 恢复
cautionrecoverythreshold=2.00, # 低于2美元/15分钟时退出警告
cautionrecoveryduration=300, # 必须保持低于阈值5分钟

# 状态
state_dir=./state,
costlogfile=cost_log.jsonl,

# 警报
alertcallback=myalert_function,
)

定价配置(你的API)

python

定义你的API定价

tracker.set_pricing( inputpriceper_unit=15.00, # 例如,每百万输入令牌15美元 outputpriceper_unit=75.00, # 例如,每百万输出令牌75美元 unitsize=1000_000, # 例如,每百万令牌 )

对于非令牌API(例如,按请求定价):

tracker.set_pricing( fixedcostper_call=0.01, # 每次API调用0.01美元 )

参见config_example.py获取完整示例。



API参考

核心方法

recordcall(inputunits, outputunits, requestid=None)

记录带有实际使用量的API调用。

参数:

  • - inputunits(int):消耗的输入单位(例如,令牌、请求)
  • outputunits(int):消耗的输出单位
  • request_id(str,可选):用于日志记录的标识符

返回: 如果在限制内返回True,如果触发紧急则返回False



iscallallowed()


检查当前是否允许API调用。

返回: (allowed: bool, reason: str)

  • - allowed=True, reason=ok → 可以安全调用API
  • allowed=False, reason=costemergencymode → 被阻止

用法:
python
allowed, reason = tracker.iscallallowed()
if not allowed:
handle_emergency(reason)
return



get_stats()


获取当前成本统计信息。

返回: 包含以下键的字典:
python
{
cost_5min: 0.45,
cost_15min: 1.23,
cost_1hour: 3.45,
cost_daily: 12.34,
calls_1hour: 23,
calls_session: 156,
caution_mode: False,
emergency_mode: False,
}



clear_emergency

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 cost-control-1776183737 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 cost-control-1776183737 技能

通过命令行安装

skillhub install cost-control-1776183737

下载

⬇ 下载 Cost Control 3-Tier API Spend Protection v1.0.3(免费)

文件大小: 29.92 KB | 发布时间: 2026-4-15 11:24

v1.0.3 最新 2026-4-15 11:24
## Changelog for version 1.0.3

- No file changes detected; functionality, documentation, and configuration remain unchanged from v1.0.2.
- Version number updated, but the SKILL.md documentation and codebase stay the same as the previous release.

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部