Module: Legion::LLM::Inference::NativeToolLoop
- Included in:
- Executor
- Defined in:
- lib/legion/llm/inference/native_tool_loop.rb
Constant Summary collapse
- QWEN_TOOL_USE_RE =
Tag-based markup some Qwen variants emit when a tool is selected via the chat template instead of being returned through the tool_calls field. Captures one block per tool call:
<tool_use_name>NAME</tool_use_name> (<tool_use_parameter>KEY</tool_use_parameter> <tool_use_value>VALUE</tool_use_value>)+ %r{ <tool_use_name>(?<name>[^<]+)</tool_use_name> (?<body>(?:\s*<tool_use_parameter>[^<]+</tool_use_parameter> \s*<tool_use_value>[^<]*</tool_use_value>)*) }mx- QWEN_PARAM_RE =
%r{ <tool_use_parameter>(?<param>[^<]+)</tool_use_parameter> \s*<tool_use_value>(?<value>[^<]*)</tool_use_value> }mx