From d914ece3fb0923f9d4741bad8e73241571559dcf Mon Sep 17 00:00:00 2001 From: wangxiaolei Date: Wed, 15 Jul 2026 16:24:11 +0800 Subject: [PATCH] fix: fix conversation title is overwrite empty (#39004) Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> --- api/core/llm_generator/llm_generator.py | 25 ++++++++++--------- .../core/llm_generator/test_llm_generator.py | 2 +- 2 files changed, 14 insertions(+), 13 deletions(-) diff --git a/api/core/llm_generator/llm_generator.py b/api/core/llm_generator/llm_generator.py index 29a93fff815..fe3240a2984 100644 --- a/api/core/llm_generator/llm_generator.py +++ b/api/core/llm_generator/llm_generator.py @@ -164,21 +164,22 @@ class LLMGenerator: prompt_messages=list(prompts), model_parameters={"max_tokens": 500, "temperature": 1}, stream=False ) answer = response.message.get_text_content() - if answer == "": - return "" - try: - result_dict = json.loads(answer) - except json.JSONDecodeError: - result_dict = json_repair.loads(answer) - - if not isinstance(result_dict, dict): + if not answer.strip(): answer = query else: - output = result_dict.get("Your Output") - if isinstance(output, str) and output.strip(): - answer = output.strip() - else: + try: + result_dict = json.loads(answer) + except json.JSONDecodeError: + result_dict = json_repair.loads(answer) + + if not isinstance(result_dict, dict): answer = query + else: + output = result_dict.get("Your Output") + if isinstance(output, str) and output.strip(): + answer = output.strip() + else: + answer = query name = answer.strip() diff --git a/api/tests/unit_tests/core/llm_generator/test_llm_generator.py b/api/tests/unit_tests/core/llm_generator/test_llm_generator.py index 290f58365d6..c37becd5f06 100644 --- a/api/tests/unit_tests/core/llm_generator/test_llm_generator.py +++ b/api/tests/unit_tests/core/llm_generator/test_llm_generator.py @@ -50,7 +50,7 @@ class TestLLMGenerator: mock_model_instance.invoke_llm.return_value = mock_response name = LLMGenerator.generate_conversation_name("tenant_id", "test query") - assert name == "" + assert name == "test query" def test_generate_conversation_name_json_repair(self, mock_model_instance): mock_response = MagicMock()