diff --git a/services/ai_orchestrator.py b/services/ai_orchestrator.py index c5e180b..9814615 100644 --- a/services/ai_orchestrator.py +++ b/services/ai_orchestrator.py @@ -1,5 +1,6 @@ # services/ai_orchestrator.py import asyncio +import json import logging from typing import Any, Dict, Optional @@ -73,14 +74,13 @@ class AIOrchestrator: "sid": session_id, "ag": agent, "ck": "latest", - "cv": payload, + "cv": json.dumps(payload, ensure_ascii=False), }, ) session.commit() except Exception as e: session.rollback() - logger.error(f"[AIOrchestrator] save_context failed: {e}") - raise + logger.warning(f"[AIOrchestrator] save_context failed (non-fatal): {e}") finally: session.close() @@ -98,13 +98,12 @@ class AIOrchestrator: "sid": plan.get("session_id"), "pt": plan.get("plan_type"), "sku": plan.get("sku"), - "pl": plan, + "pl": json.dumps(plan, ensure_ascii=False), }, ) session.commit() except Exception as e: session.rollback() - logger.error(f"[AIOrchestrator] save_action_plan failed: {e}") - raise + logger.warning(f"[AIOrchestrator] save_action_plan failed (non-fatal): {e}") finally: session.close() diff --git a/services/hermes_analyst_service.py b/services/hermes_analyst_service.py index d4f4f22..6b89064 100644 --- a/services/hermes_analyst_service.py +++ b/services/hermes_analyst_service.py @@ -154,7 +154,7 @@ class HermesAnalystService: resp = requests.post( f"{HERMES_URL}/api/generate", json=payload, - timeout=15, # 意圖分類不必等 120s + timeout=30, # 意圖分類,qwen2.5 首次推理可能需 ~20s ) resp.raise_for_status() raw = (resp.json().get("response", "") or "").strip()