Skip to main content
The parsers module provides utilities for parsing tool calls from model outputs and formatting chat templates.

ToolParser

Abstract base class for tool call parsers.

Methods

parse

Extract tool calls from model response.
model_response
str
Raw model output containing tool calls.
tool_calls
list[ToolCall]
List of parsed tool calls.

get_tool_prompt

Get the tool prompt for the model.
tools_schema
str
JSON schema for available tools.
prompt
str
Formatted tool prompt to include in system message.

get_parser

Factory method to get appropriate parser for a tokenizer.
tokenizer
PreTrainedTokenizer
Tokenizer to detect parser type from.
parser
ToolParser
Appropriate parser instance (R1ToolParser or QwenToolParser).

R1ToolParser

Parser for DeepSeek R1-style tool call format.

Format

R1 format uses special tokens:

Methods


QwenToolParser

Parser for Qwen-style tool call format.

Format

Qwen format uses XML-like tags:

Methods


ChatTemplateParser

Parser for converting between chat format and tokens.

Methods

apply_chat_template

Convert messages to tokens.

decode

Convert tokens back to text.

Example: Parsing Tool Calls (R1)


Example: Parsing Tool Calls (Qwen)


Example: Multiple Tool Calls


Example: Getting Tool Prompt


Example: Auto-detecting Parser


Example: Parsing Tool Calls


Example: ChatTemplateParser