feat: 添加思考模型配置并修复统计状态处理

- 在 README.md 中添加 THINKING_MODELS 和 THINKING_BUDGET_MAP 环境变量文档。
- 修复 stats_service.py 中的 get_api_call_details 函数,以正确处理 status_code 为 None 的情况,确保状态判断的健壮性。
This commit is contained in:
snaily
2025-04-20 01:10:51 +08:00
parent c254077a66
commit eb311de0c2
2 changed files with 5 additions and 1 deletions
+2
View File
@@ -156,6 +156,8 @@ app/
| `TOOLS_CODE_EXECUTION_ENABLED` | 可选,是否启用代码执行工具 | `false` | | `TOOLS_CODE_EXECUTION_ENABLED` | 可选,是否启用代码执行工具 | `false` |
| `SHOW_SEARCH_LINK` | 可选,是否在响应中显示搜索结果链接 | `true` | | `SHOW_SEARCH_LINK` | 可选,是否在响应中显示搜索结果链接 | `true` |
| `SHOW_THINKING_PROCESS` | 可选,是否显示模型思考过程 | `true` | | `SHOW_THINKING_PROCESS` | 可选,是否显示模型思考过程 | `true` |
| `THINKING_MODELS` | 可选,支持思考功能的模型列表 | `[]` |
| `THINKING_BUDGET_MAP` | 可选,思考功能预算映射 (模型名:预算值) | `{}` |
| `BASE_URL` | 可选,Gemini API 基础 URL,默认无需修改 | `https://generativelanguage.googleapis.com/v1beta` | | `BASE_URL` | 可选,Gemini API 基础 URL,默认无需修改 | `https://generativelanguage.googleapis.com/v1beta` |
| `MAX_FAILURES` | 可选,允许单个key失败的次数 | `3` | | `MAX_FAILURES` | 可选,允许单个key失败的次数 | `3` |
| `MAX_RETRIES` | 可选,API 请求失败时的最大重试次数 | `3` | | `MAX_RETRIES` | 可选,API 请求失败时的最大重试次数 | `3` |
+3 -1
View File
@@ -107,7 +107,9 @@ async def get_api_call_details(period: str) -> list[dict]:
# Convert results to list of dicts and map status_code # Convert results to list of dicts and map status_code
details = [] details = []
for row in results: for row in results:
status = 'success' if 200 <= row['status_code'] < 300 else 'failure' status = 'failure' # 默认状态为 failure,如果 status_code 有效且在 200-299 范围内则更新为 success
if row['status_code'] is not None: # 检查 status_code 是否为空
status = 'success' if 200 <= row['status_code'] < 300 else 'failure'
details.append({ details.append({
"timestamp": row['timestamp'].isoformat(), # Use ISO format for JS compatibility "timestamp": row['timestamp'].isoformat(), # Use ISO format for JS compatibility
"key": row['key'], "key": row['key'],