Emit __start signal at call_model entry for instant UI feedback
call_model now emits writer({"__start": True}) before LLM inference.
stream_response() converts it to {"__status": label} — distinct from
__meta so the UI shows it immediately without accumulating in the log.
Removes the 10-second silent wait before the first progress message.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -115,6 +115,9 @@ class AgentService:
|
||||
writer = get_stream_writer()
|
||||
except Exception:
|
||||
writer = None
|
||||
# LLM 추론 시작 직전에 즉시 신호 emit — UI에 "분석 중" 표시
|
||||
if writer:
|
||||
writer({"__start": True})
|
||||
# 체크박스 값을 모델의 enable_thinking으로 전달 (런타임 오버라이드)
|
||||
show_thinking = config.get("configurable", {}).get("show_thinking", False)
|
||||
_llm = llm_with_tools.bind(enable_thinking=show_thinking) if show_thinking != chat_model.enable_thinking else llm_with_tools
|
||||
@@ -249,6 +252,11 @@ class AgentService:
|
||||
|
||||
# ── custom 이벤트 ────────────────────────────────────────────
|
||||
if mode == "custom":
|
||||
if isinstance(data, dict) and "__start" in data:
|
||||
# call_model 시작 즉시 emit — LLM 추론 전에 상태 표시
|
||||
label = "검색 결과를 분석하고 있습니다..." if prev_node == "tools" else "질문을 분석하고 있습니다..."
|
||||
yield {"__status": label}
|
||||
continue
|
||||
if isinstance(data, dict) and "__query_rewrite" in data:
|
||||
info = data["__query_rewrite"]
|
||||
if lg or self._rag_verbose:
|
||||
|
||||
Reference in New Issue
Block a user