diff --git a/backend/app/agent/agent_service.py b/backend/app/agent/agent_service.py index 6c1d2ca..2180909 100644 --- a/backend/app/agent/agent_service.py +++ b/backend/app/agent/agent_service.py @@ -189,12 +189,26 @@ class AIAgentService: } # 处理普通 token elif token_content: - yield { - "type": "llm_token", - "node": node_name, - "token": token_content, - "reasoning_token": reasoning_token - } + # 如果内容较长,拆成单个字符模拟流式效果 + if len(token_content) > 1: + import asyncio + for char in token_content: + yield { + "type": "llm_token", + "node": node_name, + "token": char, + "reasoning_token": reasoning_token + } + # 短暂暂停,模拟打字效果 + await asyncio.sleep(0.01) + else: + # 内容较短,直接发送 + yield { + "type": "llm_token", + "node": node_name, + "token": token_content, + "reasoning_token": reasoning_token + } # 返回更新后的 current_node yield {"type": "_update_state", "current_node": new_current_node}