mirror of
https://github.com/fawney19/Aether.git
synced 2026-10-10 03:09:50 +08:00
refactor: 自适应 RPM 从边界记忆改为多次观察确认 + 置信度衰减
将自适应 RPM 限制算法从"单次 429 即设限"重构为基于置信度的学习机制: - 收到 429 时仅记录观察(本地 RPM + 上游 header 限制值),不立即设限 - 有 header 的观察需 2 次一致确认,无 header 需 3 次一致确认 - confidence 随时间自然衰减,确保限制永远不会固化 - confidence 低于阈值时停止本地 RPM 限制,429 直接透传客户端 - 统一 get_effective_limit 入口,消除多处重复的限制获取逻辑 - Admin API 增加置信度、观察数量等诊断字段
This commit is contained in:
@@ -137,6 +137,22 @@ class RPMDefaults:
|
||||
# 探测性扩容最小请求数 - 在探测间隔内至少需要这么多请求
|
||||
PROBE_INCREASE_MIN_REQUESTS = 10
|
||||
|
||||
# === 置信度学习参数 ===
|
||||
# 无 header 时,需要多少次一致的 429 观察才确认限制
|
||||
MIN_CONSISTENT_OBSERVATIONS = 3
|
||||
# 有 header 时,需要多少次一致的 header 观察才确认限制
|
||||
MIN_HEADER_CONFIRMATIONS = 2
|
||||
# 观察值之间的最大允许偏差比例(30% 以内视为一致)
|
||||
OBSERVATION_CONSISTENCY_THRESHOLD = 0.3
|
||||
# header 声明限制的安全边际(使用 95%)
|
||||
HEADER_LIMIT_SAFETY_MARGIN = 0.95
|
||||
# 纯观察限制的安全边际(使用 90%)
|
||||
OBSERVATION_LIMIT_SAFETY_MARGIN = 0.90
|
||||
# confidence 低于此阈值时不执行本地 RPM 限制(透传上游 429)
|
||||
ENFORCEMENT_CONFIDENCE_THRESHOLD = 0.6
|
||||
# confidence 自然衰减速率:每分钟衰减的比例
|
||||
CONFIDENCE_DECAY_PER_MINUTE = 0.005 # 每分钟 -0.5%,约 200 分钟(~3.3h)从 1.0 衰减到 0
|
||||
|
||||
|
||||
# 向后兼容别名
|
||||
ConcurrencyDefaults = RPMDefaults
|
||||
|
||||
Reference in New Issue
Block a user