File tree Expand file tree Collapse file tree 2 files changed +10
-3
lines changed Expand file tree Collapse file tree 2 files changed +10
-3
lines changed Original file line number Diff line number Diff line change @@ -50,9 +50,13 @@ class ThinkingTemplate(Template):
5050
5151 def _swift_prepare_messages (self , messages ):
5252 super ()._swift_prepare_messages (messages )
53- for i , message in enumerate (messages ):
54- if message ['role' ] == 'assistant' and isinstance (message ['content' ], str ) and i != len (messages ) - 1 :
55- message ['content' ] = message ['content' ].split ('</think>' )[- 1 ].strip ()
53+ # Only during inference or training, and only if the loss_scale is set to 'last_round',
54+ # will the previous 'think' entries be deleted.
55+ if not self .is_training or self .loss_scale .name == 'last_round' :
56+ for i , message in enumerate (messages ):
57+ # Delete the content before '</think>' in all assistant turns except the last round.
58+ if message ['role' ] == 'assistant' and isinstance (message ['content' ], str ) and i != len (messages ) - 1 :
59+ message ['content' ] = message ['content' ].split ('</think>' )[- 1 ].strip ()
5660
5761
5862register_template (
Original file line number Diff line number Diff line change @@ -164,3 +164,6 @@ def get_loss_scale(self,
164164 'agentflan' : AgentFlanLossScale ,
165165 'alpha_umi' : AlphaUmiLossScale ,
166166}
167+
168+ for k , v in loss_scale_map .items ():
169+ v .name = k
You can’t perform that action at this time.
0 commit comments