diff --git a/backend/open_webui/utils/middleware.py b/backend/open_webui/utils/middleware.py index c90c52340b..5fb296fa58 100644 --- a/backend/open_webui/utils/middleware.py +++ b/backend/open_webui/utils/middleware.py @@ -375,9 +375,14 @@ def serialize_output(output: list) -> str: result_item = tool_outputs.get(call_id) if result_item: result_text = "" - for out in result_item.get("output", []): - if "text" in out: - result_text += out.get("text", "") + for output in result_item.get("output", []): + if "text" in output: + output_text = output.get("text", "") + result_text += ( + str(output_text) + if not isinstance(output_text, str) + else output_text + ) files = result_item.get("files") embeds = result_item.get("embeds", "")