pub struct HuggingFaceTokenizer { /* private fields */ }Expand description
HuggingFace tokenizer wrapper
Implementations§
Source§impl HuggingFaceTokenizer
impl HuggingFaceTokenizer
Sourcepub fn from_file(file_path: &str) -> Result<Self>
pub fn from_file(file_path: &str) -> Result<Self>
Create a tokenizer from a HuggingFace tokenizer JSON file
Sourcepub fn from_file_with_chat_template(
file_path: &str,
chat_template_path: Option<&str>,
) -> Result<Self>
pub fn from_file_with_chat_template( file_path: &str, chat_template_path: Option<&str>, ) -> Result<Self>
Create a tokenizer from a HuggingFace tokenizer JSON file with an optional chat template
Sourcepub fn from_tokenizer(tokenizer: HfTokenizer) -> Self
pub fn from_tokenizer(tokenizer: HfTokenizer) -> Self
Create from an existing HuggingFace tokenizer
Trait Implementations§
Source§impl Decoder for HuggingFaceTokenizer
impl Decoder for HuggingFaceTokenizer
Source§fn decode_step(
&self,
token_id: TokenIdType,
ids: &mut Vec<TokenIdType>,
prefix: &mut String,
prefix_index: &mut usize,
skip_special_tokens: bool,
) -> Result<Option<String>>
fn decode_step( &self, token_id: TokenIdType, ids: &mut Vec<TokenIdType>, prefix: &mut String, prefix_index: &mut usize, skip_special_tokens: bool, ) -> Result<Option<String>>
Native incremental decode using the HF step_decode_stream.
This delegates to the same algorithm the default trait method uses, but
the two internal decode() calls go directly through the concrete
TokenizerImpl rather than through dyn Decoder vtable dispatch.
fn decode( &self, token_ids: &[TokenIdType], skip_special_tokens: bool, ) -> Result<String>
Source§impl Encoder for HuggingFaceTokenizer
impl Encoder for HuggingFaceTokenizer
Source§impl Tokenizer for HuggingFaceTokenizer
impl Tokenizer for HuggingFaceTokenizer
fn vocab_size(&self) -> usize
fn get_special_tokens(&self) -> &SpecialTokens
fn token_to_id(&self, token: &str) -> Option<TokenIdType>
fn id_to_token(&self, id: TokenIdType) -> Option<String>
Source§fn apply_chat_template(
&self,
messages: &[Value],
params: ChatTemplateParams<'_>,
) -> Result<String>
fn apply_chat_template( &self, messages: &[Value], params: ChatTemplateParams<'_>, ) -> Result<String>
Apply chat template to messages. Default returns an error for tokenizers without template support.
Source§fn chat_template_content_format(&self) -> ChatTemplateContentFormat
fn chat_template_content_format(&self) -> ChatTemplateContentFormat
Get the content format expected by the chat template.
Source§fn thinking_toggle(&self) -> ThinkingToggle
fn thinking_toggle(&self) -> ThinkingToggle
Get the thinking toggle support for this template.
Source§fn thinking_key_name(&self) -> Option<ThinkingKeyName>
fn thinking_key_name(&self) -> Option<ThinkingKeyName>
The variable name the template uses for the thinking toggle.
Source§fn think_in_prefill(&self) -> bool
fn think_in_prefill(&self) -> bool
Whether the template injects
<think> in the generation prompt.Auto Trait Implementations§
impl !Freeze for HuggingFaceTokenizer
impl !RefUnwindSafe for HuggingFaceTokenizer
impl Send for HuggingFaceTokenizer
impl Sync for HuggingFaceTokenizer
impl Unpin for HuggingFaceTokenizer
impl UnsafeUnpin for HuggingFaceTokenizer
impl !UnwindSafe for HuggingFaceTokenizer
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more