Files
karuo-ai/.cursor/rules/api-failover-stability.mdc

30 lines
1.3 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
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。