fixed reasoning

This commit is contained in:
2026-06-10 13:06:44 +03:00
parent 8eb6505724
commit 07e9ef6e04
5 changed files with 105 additions and 36 deletions
+17 -2
View File
@@ -148,6 +148,9 @@ class ChatService:
if event["type"] == "content":
content_parts.append(event["content"])
yield self._sse("token", {"content": event["content"]})
elif event["type"] == "error":
yield self._sse("error", {"message": event.get("content", "LLM error")})
return
elif event["type"] == "tool_calls":
tool_calls = event["tool_calls"]
@@ -193,8 +196,20 @@ class ChatService:
continue
final_content = "".join(content_parts)
if final_content:
self._save_message(session_id, "assistant", final_content)
if not final_content.strip():
yield self._sse(
"error",
{
"message": (
"Модель не вернула текст. Проверь OPENROUTER_MODEL: "
"нужна поддержка tool calling или отключи OPENROUTER_TOOLS_ENABLED=false. "
"Для памяти можно задать MEMORY_EXTRACT_MODEL=deepseek/deepseek-chat."
),
},
)
return
self._save_message(session_id, "assistant", final_content)
memory_meta: dict[str, Any] = {}
if get_settings().memory_auto_extract: