From 2abbd5a7fb0565ca5169b18c150adbd61a774e7b Mon Sep 17 00:00:00 2001 From: Eternity <1533512157@qq.com> Date: Tue, 27 Jan 2026 18:16:53 +0800 Subject: [PATCH] fix(workflow): fix streaming output error when variable is not a string --- api/app/core/workflow/executor.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/api/app/core/workflow/executor.py b/api/app/core/workflow/executor.py index 11bb5bac..17adbdf2 100644 --- a/api/app/core/workflow/executor.py +++ b/api/app/core/workflow/executor.py @@ -163,6 +163,15 @@ class WorkflowExecutor: if self.end_outputs[node].activate and self.activate_end is None: self.activate_end = node + @staticmethod + def _trans_output_string(content): + if isinstance(content, str): + return content + elif isinstance(content, list): + return "\n".join(content) + else: + return str(content) + def build_graph(self, stream=False) -> CompiledStateGraph: """构建 LangGraph @@ -430,6 +439,7 @@ class WorkflowExecutor: variables={}, node_outputs=node_outputs ) + chunk = self._trans_output_string(chunk) message += chunk full_content += chunk except ValueError: @@ -472,6 +482,7 @@ class WorkflowExecutor: variables=variables, node_outputs=node_outputs ) + chunk = self._trans_output_string(chunk) message += chunk full_content += chunk except ValueError: