encoding/tests/test_output_1.txt
| 1 | <|begin▁of▁sentence|>You are a helpful assistant. |
| 2 | |
| 3 | ## Tools |
| 4 | |
| 5 | You have access to a set of tools to help answer the user's question. You can invoke tools by writing a "<|DSML|tool_calls>" block like the following: |
| 6 | |
| 7 | <|DSML|tool_calls> |
| 8 | <|DSML|invoke name="$TOOL_NAME"> |
| 9 | <|DSML|parameter name="$PARAMETER_NAME" string="true|false">$PARAMETER_VALUE</|DSML|parameter> |
| 10 | ... |
| 11 | </|DSML|invoke> |
| 12 | <|DSML|invoke name="$TOOL_NAME2"> |
| 13 | ... |
| 14 | </|DSML|invoke> |
| 15 | </|DSML|tool_calls> |
| 16 | |
| 17 | String parameters should be specified as is and set `string="true"`. For all other types (numbers, booleans, arrays, objects), pass the value in JSON format and set `string="false"`. |
| 18 | |
| 19 | If thinking_mode is enabled (triggered by <think>), you MUST output your complete reasoning inside <think>...</think> BEFORE any tool calls or final response. |
| 20 | |
| 21 | Otherwise, output directly after </think> with tool calls or final response. |
| 22 | |
| 23 | ### Available Tool Schemas |
| 24 | |
| 25 | {"name": "get_weather", "description": "Get the weather for a specific location", "parameters": {"type": "object", "properties": {"location": {"type": "string", "description": "The city name"}, "unit": {"type": "string", "enum": ["celsius", "fahrenheit"], "description": "Temperature unit"}}, "required": ["location"]}} |
| 26 | {"name": "search", "description": "Search the web for information", "parameters": {"type": "object", "properties": {"query": {"type": "string", "description": "Search query"}, "num_results": {"type": "integer", "description": "Number of results to return"}}, "required": ["query"]}} |
| 27 | |
| 28 | You MUST strictly follow the above defined tool name and parameter schemas to invoke tool calls. |
| 29 | <|User|>What's the weather in Beijing?<|Assistant|><think>The user wants to know the weather in Beijing. I should use the get_weather tool.</think> |
| 30 | |
| 31 | <|DSML|tool_calls> |
| 32 | <|DSML|invoke name="get_weather"> |
| 33 | <|DSML|parameter name="location" string="true">Beijing</|DSML|parameter> |
| 34 | <|DSML|parameter name="unit" string="true">celsius</|DSML|parameter> |
| 35 | </|DSML|invoke> |
| 36 | </|DSML|tool_calls><|end▁of▁sentence|><|User|><tool_result>{"temperature": 22, "condition": "sunny", "humidity": 45}</tool_result><|Assistant|><think>Got the weather data. Let me format a nice response.</think>The weather in Beijing is currently sunny with a temperature of 22°C and 45% humidity.<|end▁of▁sentence|> |