fix(nvidia): timeout 60s→30s,NVIDIA 第一保免費,失敗轉 Gemini
All checks were successful
CD Pipeline / build-and-deploy (push) Successful in 5m46s
E2E Health Check / e2e-health (push) Successful in 16s

- nvidia_provider.py: NVIDIA_TIMEOUT 60→30s
- models.json: timeout_seconds 60→30s
- configmap: NEMOTRON_TIMEOUT_SECONDS 45→30s, fallback 恢復 nvidia 第一
目標: Nemo 有足夠時間回應(free),失敗快速轉 Gemini(備援),整體機制可運作

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
OG T
2026-04-01 16:05:19 +08:00
parent 4c622813af
commit 419dc2f8e0
3 changed files with 9 additions and 8 deletions

View File

@@ -119,11 +119,11 @@
"temperature": 0.0,
"max_tokens": 1024
},
"timeout_seconds": 60,
"timeout_seconds": 30,
"cost": {
"per_1k_tokens": 0,
"currency": "USD",
"notes": "Free tier (2026-03-29)"
"notes": "Free tier (2026-03-29) - timeout 30s失敗後轉 Gemini"
},
"auth": {
"type": "header",

View File

@@ -117,8 +117,9 @@ NVIDIA_API_URL = "https://integrate.api.nvidia.com/v1/chat/completions"
# 預設模型 (2026-03-31 ogt: 恢復為 nemotron-mini-4b-instruct)
NVIDIA_DEFAULT_MODEL = "nvidia/nemotron-mini-4b-instruct"
# 請求超時 (秒) - Nemotron 延遲 11-45s
NVIDIA_TIMEOUT = 60.0
# 請求超時 (秒) - 2026-04-01 ogt: 30s 讓 Nemo 有機會回應,失敗後轉 Gemini
# 原 60s 太長15s 太短 (Nemo 有時需 20-40s)30s 是實用平衡點
NVIDIA_TIMEOUT = 30.0
# 重試次數
MAX_RETRIES = 2

View File

@@ -35,9 +35,9 @@ data:
CORS_ORIGINS: '["https://awoooi.wooo.work","http://localhost:3000","http://localhost:3001"]'
# AI 配置 (JSON array 格式 for pydantic-settings)
# 2026-04-01 ogt: Gemini 優先 (快速,~100ms) → Ollama(本地備援) → NVIDIA(60s timeout降為最後)
# NVIDIA 降序原因: free tier 固定 60s timeout阻塞整條 fallback
AI_FALLBACK_ORDER: '["gemini","ollama","nvidia","claude"]'
# 2026-04-01 ogt: NVIDIA 第一 (免費) → Gemini(備援 ~100ms) → Ollama(本地) → Claude
# NVIDIA timeout 降為 15s快速失敗後轉 Gemini避免免費 tier 阻塞整條
AI_FALLBACK_ORDER: '["nvidia","gemini","ollama","claude"]'
AI_CACHE_TTL: "3600"
# ============================================================================
@@ -45,7 +45,7 @@ data:
# 2026-03-31 ogt: 統帥需求 - @tsenyangbot 對話 + Incident 雙軌
# ============================================================================
ENABLE_NEMOTRON_COLLABORATION: "true"
NEMOTRON_TIMEOUT_SECONDS: "45"
NEMOTRON_TIMEOUT_SECONDS: "30"
NEMOTRON_ASYNC_UPDATE: "true"
# ============================================================================