diff --git a/app/api/search.py b/app/api/search.py index 8b10663..e1badb3 100644 --- a/app/api/search.py +++ b/app/api/search.py @@ -514,8 +514,12 @@ async def ask( ev_ms = (time.perf_counter() - t_ev) * 1000 # classifier await (timeout 보호 — classifier_service 내부에도 있지만 여기서 이중 보호) + # 2026-05-17: 6s outer wrapper 가 classifier_service.LLM_TIMEOUT_MS (30s) 를 override → 동시 부하 시 + # 거의 모든 classifier 호출 timeout → conservative_refuse(no_classifier) 경로. 15s 로 상향 — classifier + # 가 실제 작동하도록 (단, ask 전체 응답 시간 상한 영향: ev_ms + max(classifier_wait, evidence_extract) + + # synth_ms + verifier 누적). try: - classifier_result = await asyncio.wait_for(classifier_task, timeout=6.0) + classifier_result = await asyncio.wait_for(classifier_task, timeout=15.0) except (asyncio.TimeoutError, Exception): classifier_result = ClassifierResult("timeout", None, [], [], 0.0)