30 lines
1.3 KiB
Plaintext
30 lines
1.3 KiB
Plaintext
---
|
||
description: 卡若AI API 接口排队与故障切换稳定性规则
|
||
alwaysApply: true
|
||
---
|
||
|
||
# 卡若AI API 稳定性规则
|
||
|
||
## 目标
|
||
- 所有 AI 请求优先走可用接口,单接口超时/报错时自动切换下一接口。
|
||
- 全部接口都失败时,必须触发邮件告警并返回可读降级回复。
|
||
|
||
## 接口排队规则(按顺序)
|
||
- 使用 `OPENAI_API_BASES` 配置接口队列(逗号分隔)。
|
||
- 对应密钥用 `OPENAI_API_KEYS`(可选);若缺省则回退 `OPENAI_API_KEY`。
|
||
- 对应模型用 `OPENAI_MODELS`(可选);若缺省则回退 `OPENAI_MODEL`。
|
||
|
||
## 故障切换规则
|
||
- 单接口失败条件:超时、网络错误、HTTP 非 200、响应体不可解析。
|
||
- 每次请求必须按队列顺序逐个尝试,直到成功或队列耗尽。
|
||
- 队列耗尽后:发送告警邮件到 `ALERT_EMAIL_TO`(默认 `zhiqun@qq.com`),并返回降级回复,不得直接空响应。
|
||
|
||
## 告警规则
|
||
- SMTP 默认:`SMTP_HOST=smtp.qq.com`、`SMTP_PORT=465`。
|
||
- 必填:`SMTP_USER`、`SMTP_PASS`、`ALERT_EMAIL_TO`(可不填则默认收件箱)。
|
||
- 为防刷屏,告警需带冷却时间(默认 300 秒)。
|
||
|
||
## 安全规则
|
||
- 不在代码与规则里写死明文密钥。
|
||
- 仅记录必要错误摘要,不在日志输出完整 token。
|