pub struct TemplateCaps {
pub supports_tools: Option<bool>,
pub supports_tool_calls: Option<bool>,
pub supports_system_role: Option<bool>,
pub supports_parallel_tool_calls: Option<bool>,
pub supports_preserve_reasoning: Option<bool>,
pub supports_reasoning_effort: Option<bool>,
pub supports_string_content: Option<bool>,
pub supports_typed_content: Option<bool>,
pub supports_object_arguments: Option<bool>,
}Expand description
The nine bools of chat_template_caps, as GET /props reports them.
Field names are byte-for-byte the wire keys measured on the pinned build
(b1-10bf611) — template_caps_tests pins the full list against a
fixture transcribed from that measurement, so an upstream rename or
addition fails loudly rather than silently reading as absent.
Every field is Option<bool>: None means the server did not report the
key, which — five defaults being true upstream — licenses no conclusion
in either direction. Unknown fields in the body are ignored (no
deny_unknown_fields): a future build adding a tenth cap must not make
the nine known ones unreadable.
Fields§
§supports_tools: Option<bool>Whether the template reads tools. Upstream default: true.
supports_tool_calls: Option<bool>Whether the template renders assistant tool_calls. Upstream
default: true.
supports_system_role: Option<bool>Whether the template accepts a system role. Upstream default:
true.
supports_parallel_tool_calls: Option<bool>Whether multiple tool calls may appear in one assistant turn.
Upstream default: true.
supports_preserve_reasoning: Option<bool>Whether reasoning traces survive in the full history rather than only
the last assistant message. Upstream default: false.
supports_reasoning_effort: Option<bool>Whether the template reads the reasoning_effort variable (or its
reasoning_strength alias — the probe binds both, caps.cpp:29-32).
Upstream default: false.
Read, not honoured: stats.used says the variable was accessed during
an instrumented render, not that any particular level changes the
output (ADR 0007 findings 2 and 3).
supports_string_content: Option<bool>Whether message content may be a plain string. Upstream default:
true.
supports_typed_content: Option<bool>Whether message content may be the typed parts array. Upstream
default: false.
supports_object_arguments: Option<bool>Whether tool-call arguments may be a JSON object rather than a
string. Upstream default: false.
Trait Implementations§
Source§impl Clone for TemplateCaps
impl Clone for TemplateCaps
Source§fn clone(&self) -> TemplateCaps
fn clone(&self) -> TemplateCaps
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for TemplateCaps
impl Debug for TemplateCaps
Source§impl Default for TemplateCaps
impl Default for TemplateCaps
Source§fn default() -> TemplateCaps
fn default() -> TemplateCaps
Source§impl<'de> Deserialize<'de> for TemplateCaps
impl<'de> Deserialize<'de> for TemplateCaps
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for TemplateCaps
impl PartialEq for TemplateCaps
Source§fn eq(&self, other: &TemplateCaps) -> bool
fn eq(&self, other: &TemplateCaps) -> bool
self and other values to be equal, and is used by ==.