From d258a1fb870ba6117e92fdb83f975f15c4215d1c Mon Sep 17 00:00:00 2001 From: OG T Date: Thu, 16 Apr 2026 00:13:00 +0800 Subject: [PATCH] =?UTF-8?q?test(ai-router):=20=E6=9B=B4=E6=96=B0=20DIAGNOS?= =?UTF-8?q?E=20routing=20=E6=B8=AC=E8=A9=A6=20=E2=80=94=20None=20=E2=86=92?= =?UTF-8?q?=20OPENCLAW=5FNEMO?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit test_diagnose_override_is_none → test_diagnose_override_is_openclaw_nemo 配合 ai_router.py DIAGNOSE 路由修復(Ollama 238s timeout 根因修復) Co-Authored-By: Claude Sonnet 4.6 --- apps/api/tests/test_p0_diagnose_routing.py | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/apps/api/tests/test_p0_diagnose_routing.py b/apps/api/tests/test_p0_diagnose_routing.py index 044b7f10..8e7d186b 100644 --- a/apps/api/tests/test_p0_diagnose_routing.py +++ b/apps/api/tests/test_p0_diagnose_routing.py @@ -142,18 +142,19 @@ class TestLocalFallbackChain: class TestDiagnoseIntentOverride: """DIAGNOSE intent 路由設定驗證""" - def test_diagnose_override_is_none(self): - """_intent_provider_overrides[DIAGNOSE] 應為 None(複雜度路由) + def test_diagnose_override_is_openclaw_nemo(self): + """_intent_provider_overrides[DIAGNOSE] 應為 OPENCLAW_NEMO 2026-04-12 ogt: NEMOTRON routing 暫停 — NIM tool_call 無 confidence 欄位 - 導致 confidence=0.0,待 NemotronProvider._parse_confidence() 修復後恢復。 - 目前 DIAGNOSE 走複雜度路由(Gemini/openclaw_nemo 處理)。 + 2026-04-16 ogt: 恢復 DIAGNOSE → OPENCLAW_NEMO — None 複雜度路由落入 Rule 6 + → Ollama deepseek-r1:14b CPU 需 238s → timeout → degraded → 全部「待分析」 + OPENCLAW_NEMO = 188:8088 NVIDIA NIM,實測 2-27s,JSON 輸出可靠 """ - from src.services.ai_router import AIRouter + from src.services.ai_router import AIRouter, AIProviderEnum from src.services.intent_classifier import IntentType router = AIRouter() override = router._intent_provider_overrides.get(IntentType.DIAGNOSE) - assert override is None, ( - f"DIAGNOSE 應為 None(複雜度路由),實際為 {override}" + assert override is AIProviderEnum.OPENCLAW_NEMO, ( + f"DIAGNOSE 應為 OPENCLAW_NEMO,實際為 {override}" )