Skip to main content

ChatTemplateResult

Struct ChatTemplateResult 

Source
pub struct ChatTemplateResult {
    pub prompt: String,
    pub grammar: Option<String>,
    pub grammar_lazy: bool,
    pub grammar_triggers: Vec<GrammarTrigger>,
    pub preserved_tokens: Vec<String>,
    pub additional_stops: Vec<String>,
    pub chat_format: i32,
    pub parser: Option<String>,
    pub thinking_forced_open: bool,
    pub parse_tool_calls: bool,
}
Expand description

Result of applying a chat template with tool grammar support.

Fields§

§prompt: String

Rendered chat prompt.

§grammar: Option<String>

Optional grammar generated from tool definitions.

§grammar_lazy: bool

Whether to use lazy grammar sampling.

§grammar_triggers: Vec<GrammarTrigger>

Lazy grammar triggers derived from the template.

§preserved_tokens: Vec<String>

Tokens that should be preserved for sampling.

§additional_stops: Vec<String>

Additional stop sequences added by the template.

§chat_format: i32

Chat format used for parsing responses.

§parser: Option<String>

Optional serialized PEG parser for tool-call parsing.

§thinking_forced_open: bool

Whether the parser expects a forced-open thinking block.

§parse_tool_calls: bool

Whether tool calls should be parsed from the response.

Implementations§

Source§

impl ChatTemplateResult

Source

pub fn parse_response_oaicompat( &self, text: &str, is_partial: bool, ) -> Result<String, ChatParseError>

Parse a generated response into an OpenAI-compatible message JSON string.

Source

pub fn streaming_state_oaicompat( &self, ) -> Result<ChatParseStateOaicompat, ChatParseError>

Initialize a streaming parser for OpenAI-compatible chat deltas.

Trait Implementations§

Source§

impl Clone for ChatTemplateResult

Source§

fn clone(&self) -> ChatTemplateResult

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ChatTemplateResult

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for ChatTemplateResult

Source§

fn eq(&self, other: &ChatTemplateResult) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for ChatTemplateResult

Source§

impl StructuralPartialEq for ChatTemplateResult

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more