Add persistent local agent tools
This commit is contained in:
@@ -195,6 +195,7 @@ impl Tokenizer {
|
||||
system_prompt,
|
||||
&[ChatTurn {
|
||||
user: true,
|
||||
tool: false,
|
||||
skip_previous_eos: false,
|
||||
reasoning: None,
|
||||
reasoning_complete: true,
|
||||
@@ -235,6 +236,32 @@ impl Tokenizer {
|
||||
output.extend(self.tokenize_rendered(system_prompt));
|
||||
}
|
||||
for message in messages {
|
||||
if message.tool {
|
||||
if self.family == ModelFamily::Glm {
|
||||
output.push(self.observation);
|
||||
output.extend(self.tokenize_rendered("<tool_response>"));
|
||||
output.extend(
|
||||
self.tokenize_rendered(
|
||||
&message
|
||||
.content
|
||||
.replace("</tool_response>", "</tool_response>"),
|
||||
),
|
||||
);
|
||||
output.extend(self.tokenize_rendered("</tool_response>"));
|
||||
} else {
|
||||
output.push(self.user);
|
||||
output.extend(self.tokenize("<tool_result>"));
|
||||
output.extend(
|
||||
self.tokenize(
|
||||
&message
|
||||
.content
|
||||
.replace("</tool_result>", "</tool_result>"),
|
||||
),
|
||||
);
|
||||
output.extend(self.tokenize("</tool_result>"));
|
||||
}
|
||||
continue;
|
||||
}
|
||||
output.push(if message.user {
|
||||
self.user
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user