Add response_template to tokenizer_config.json

#39
by Rocketknight1 HF Staff - opened
Files changed (2) hide show
  1. README.md +4 -4
  2. tokenizer_config.json +46 -0
README.md CHANGED
@@ -166,7 +166,7 @@ outputs = model.generate(**inputs, max_new_tokens=1024)
166
  response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)
167
 
168
  # Parse output
169
- processor.parse_response(response)
170
  ```
171
 
172
  To enable reasoning, set `enable_thinking=True` and the `parse_response` function will take care of parsing the thinking output.
@@ -227,7 +227,7 @@ outputs = model.generate(**inputs, max_new_tokens=512)
227
  response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)
228
 
229
  # Parse output
230
- processor.parse_response(response)
231
  ```
232
 
233
  </details>
@@ -285,7 +285,7 @@ outputs = model.generate(**inputs, max_new_tokens=512)
285
  response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)
286
 
287
  # Parse output
288
- processor.parse_response(response)
289
  ```
290
 
291
  </details>
@@ -344,7 +344,7 @@ outputs = model.generate(**inputs, max_new_tokens=512)
344
  response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)
345
 
346
  # Parse output
347
- processor.parse_response(response)
348
  ```
349
 
350
  </details>
 
166
  response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)
167
 
168
  # Parse output
169
+ processor.parse_response(response, prefix=inputs["input_ids"])
170
  ```
171
 
172
  To enable reasoning, set `enable_thinking=True` and the `parse_response` function will take care of parsing the thinking output.
 
227
  response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)
228
 
229
  # Parse output
230
+ processor.parse_response(response, prefix=inputs["input_ids"])
231
  ```
232
 
233
  </details>
 
285
  response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)
286
 
287
  # Parse output
288
+ processor.parse_response(response, prefix=inputs["input_ids"])
289
  ```
290
 
291
  </details>
 
344
  response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)
345
 
346
  # Parse output
347
+ processor.parse_response(response, prefix=inputs["input_ids"])
348
  ```
349
 
350
  </details>
tokenizer_config.json CHANGED
@@ -63,6 +63,52 @@
63
  },
64
  "x-regex": "(\\<\\|channel\\>thought\\n(?P<thinking>.*?)\\<channel\\|\\>)?(?P<tool_calls>\\<\\|tool_call\\>.*\\<tool_call\\|\\>)?(?P<content>(?:(?!\\<turn\\|\\>)(?!\\<\\|tool_response\\>).)+)?(?:\\<turn\\|\\>|\\<\\|tool_response\\>)?"
65
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
66
  "soc_token": "<|channel>",
67
  "sot_token": "<|turn>",
68
  "stc_token": "<|tool_call>",
 
63
  },
64
  "x-regex": "(\\<\\|channel\\>thought\\n(?P<thinking>.*?)\\<channel\\|\\>)?(?P<tool_calls>\\<\\|tool_call\\>.*\\<tool_call\\|\\>)?(?P<content>(?:(?!\\<turn\\|\\>)(?!\\<\\|tool_response\\>).)+)?(?:\\<turn\\|\\>|\\<\\|tool_response\\>)?"
65
  },
66
+ "response_template": {
67
+ "defaults": {
68
+ "role": "assistant"
69
+ },
70
+ "fields": {
71
+ "content": {
72
+ "close": [
73
+ "<turn|>",
74
+ "<|tool_response>",
75
+ "<eos>"
76
+ ],
77
+ "content": "text"
78
+ },
79
+ "thinking": {
80
+ "close": "<channel|>",
81
+ "content": "text",
82
+ "open": "<|channel>thought\n"
83
+ },
84
+ "tool_calls": {
85
+ "close": "<tool_call|>",
86
+ "content": "json",
87
+ "content_args": {
88
+ "string_delims": [
89
+ [
90
+ "<|\"|>",
91
+ "<|\"|>"
92
+ ]
93
+ ],
94
+ "unquoted_keys": true
95
+ },
96
+ "open_pattern": "<\\|tool_call>call:(?P<name>\\w+)",
97
+ "repeats": true,
98
+ "transform": {
99
+ "function": {
100
+ "arguments": "{content}",
101
+ "name": "{name}"
102
+ },
103
+ "type": "function"
104
+ }
105
+ }
106
+ },
107
+ "start_anchor": [
108
+ "<|turn>model\n",
109
+ "<tool_response|>"
110
+ ]
111
+ },
112
  "soc_token": "<|channel>",
113
  "sot_token": "<|turn>",
114
  "stc_token": "<|tool_call>",