pub struct FastTokenizer { /* private fields */ }Expand description
Hybrid tokenizer: fast BPE encoding via fastokens, decoding via HuggingFace.
Both backends are loaded from the same tokenizer.json file.
Implementations§
Trait Implementations§
Source§impl Decoder for FastTokenizer
impl Decoder for FastTokenizer
fn decode( &self, token_ids: &[TokenIdType], skip_special_tokens: bool, ) -> Result<DecodeResult>
Source§impl Encoder for FastTokenizer
impl Encoder for FastTokenizer
fn encode(&self, input: &str) -> Result<Encoding>
fn encode_batch(&self, inputs: &[&str]) -> Result<Vec<Encoding>>
Source§fn encode_segments(&self, segments: &[EncodeSegment<'_>]) -> Result<Encoding>
fn encode_segments(&self, segments: &[EncodeSegment<'_>]) -> Result<Encoding>
Encode Kimi K3-style renderer segments while preserving trusted
control-token and untrusted content boundaries. Read more
Source§impl Tokenizer for FastTokenizer
impl Tokenizer for FastTokenizer
Source§fn validate_prefix_cache(&self) -> Result<()>
fn validate_prefix_cache(&self) -> Result<()>
Validate that this tokenizer can be safely wrapped in the prefix cache. Read more
Source§fn vocab_size(&self) -> Option<usize>
fn vocab_size(&self) -> Option<usize>
Vocabulary cardinality including added tokens, when the backend
can expose one.
None for backends without a bounded id space or
vocabulary introspection.Source§fn token_to_id(&self, token: &str) -> Result<Option<TokenIdType>>
fn token_to_id(&self, token: &str) -> Result<Option<TokenIdType>>
Resolve a token string to its vocabulary id, when the backend
supports lookup.
Ok(None) when the token is not in the
vocabulary. Err when this backend cannot do id lookup at all —
kept distinct from a genuine vocabulary miss so callers can tell
“unsupported” from “looked up, not found”. Read moreSource§fn special_token_ids(&self) -> Result<Vec<TokenIdType>>
fn special_token_ids(&self) -> Result<Vec<TokenIdType>>
Ids of added tokens marked special (e.g. BOS/EOS/PAD/control
tokens), as distinct from ordinary vocabulary tokens.
Ok(vec![])
for backends that genuinely have none, or that do not distinguish
special from ordinary vocabulary ids. Err when the backend
cannot enumerate added tokens at all — an empty Vec alone
cannot carry that distinction. Read moreSource§fn num_special_tokens_added(&self) -> Result<usize>
fn num_special_tokens_added(&self) -> Result<usize>
Count of special tokens
encode’s add_special_tokens: true
path would add to a bare encoding (e.g. BOS/EOS), available
without performing an encode. Ok(0) for backends that
genuinely add none. Err when the backend cannot determine this
at all — a plain 0 alone cannot carry that distinction, and
this value feeds token-budget accounting where a silent 0
would under-count rather than fail loudly. Read moreSource§fn with_options(self, options: TokenizerOptions) -> Selfwhere
Self: Sized,
fn with_options(self, options: TokenizerOptions) -> Selfwhere
Self: Sized,
Apply construction-time
TokenizerOptions. Read moreAuto Trait Implementations§
impl !Freeze for FastTokenizer
impl RefUnwindSafe for FastTokenizer
impl Send for FastTokenizer
impl Sync for FastTokenizer
impl Unpin for FastTokenizer
impl UnsafeUnpin for FastTokenizer
impl UnwindSafe for FastTokenizer
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