From d8b027fda6ffc06b08991629183f52651e3b2343 Mon Sep 17 00:00:00 2001 From: Jintao Huang Date: Mon, 25 Aug 2025 15:17:54 +0800 Subject: [PATCH 1/2] fix rstrip --- swift/llm/template/base.py | 1 + swift/llm/template/template/utils.py | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/swift/llm/template/base.py b/swift/llm/template/base.py index 205254bf64..ee2b5d140f 100644 --- a/swift/llm/template/base.py +++ b/swift/llm/template/base.py @@ -1041,6 +1041,7 @@ def _swift_prepare_inputs(self, inputs: StdTemplateInputs): i += 1 pre_message['content'], tool_content = self.agent_template._format_tool_responses( pre_content, messages[i_start:i + 1]) + # where tool_content is a List. messages[i_start:i + 1] = [{'role': 'tool', 'content': tool_content}] i = i_start + 1 elif pre_role == 'assistant' and role == 'assistant' or pre_role == 'user' and role == 'user': diff --git a/swift/llm/template/template/utils.py b/swift/llm/template/template/utils.py index aa2eb2f8ed..1c6298d042 100644 --- a/swift/llm/template/template/utils.py +++ b/swift/llm/template/template/utils.py @@ -57,8 +57,9 @@ def _swift_prepare_inputs(self, inputs): # Delete the content before '' in all assistant turns except the last round. if message['role'] == 'assistant' and isinstance(message['content'], str) and i != len(messages) - 1: if self.with_answer: - message['content'] = message['content'].split('')[-1].rstrip().rstrip( - '').strip() + message['content'] = message['content'].split('')[-1].rstrip() + if message['content'].endswith(''): + message['content'] = message['content'][:-len('')].strip() else: message['content'] = self.history_think_prefix + message['content'].split( '')[-1].strip() From 55e4242aa53b6fc435eb65424f84236eae179804 Mon Sep 17 00:00:00 2001 From: Jintao Huang Date: Mon, 25 Aug 2025 15:23:54 +0800 Subject: [PATCH 2/2] fix --- swift/llm/template/template/utils.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/swift/llm/template/template/utils.py b/swift/llm/template/template/utils.py index 1c6298d042..fab39510ff 100644 --- a/swift/llm/template/template/utils.py +++ b/swift/llm/template/template/utils.py @@ -59,7 +59,8 @@ def _swift_prepare_inputs(self, inputs): if self.with_answer: message['content'] = message['content'].split('')[-1].rstrip() if message['content'].endswith(''): - message['content'] = message['content'][:-len('')].strip() + message['content'] = message['content'][:-len('')] + message['content'] = message['content'].strip() else: message['content'] = self.history_think_prefix + message['content'].split( '')[-1].strip()