Struct TokTrie
pub struct TokTrie { /* private fields */ }
Implementations§
§impl TokTrie
impl TokTrie
pub const SPECIAL_TOKEN_MARKER: u8 = 255u8
pub const MAX_DBG_TOKENS: usize = 200usize
pub fn from(info: &TokRxInfo, words: &[Vec<u8>]) -> TokTrie
pub fn with_eos_token(&self, eos_token: u32) -> TokTrie
pub fn with_info(&self, info: TokRxInfo) -> TokTrie
pub fn build_chat_mode_trie(&self) -> TokTrie
pub fn info(&self) -> &TokRxInfo
pub fn eos_token(&self) -> u32
pub fn vocab_size(&self) -> usize
pub fn alloc_token_set(&self) -> SimpleVob
pub fn singleton_token_set(&self, tok: u32) -> SimpleVob
pub fn token_set_dbg(&self, ts: &SimpleVob) -> String
pub fn alloc_logits(&self) -> Vec<f32>
pub fn test_trace_tokens(&self, toks: &[u32]) -> String
pub fn tokens_dbg(&self, toks: &[u32]) -> String
pub fn token_dbg(&self, idx: u32) -> String
pub fn token_str(&self, idx: u32) -> String
pub fn token_len(&self, idx: u32) -> usize
pub fn token(&self, idx: u32) -> &[u8] ⓘ
pub fn decode(&self, tokens: &[u32]) -> Vec<u8> ⓘ
pub fn decode_as_special(&self, tok: u32) -> Vec<u8> ⓘ
pub fn decode_raw(&self, tokens: &[u32]) -> Vec<u8> ⓘ
pub fn decode_str(&self, tokens: &[u32]) -> String
pub fn decode_raw_to_decode(&self, bytes: &[u8]) -> Vec<u8> ⓘ
pub fn is_special_token(&self, tok: u32) -> bool
pub fn get_special_token(&self, name: &str) -> Option<u32>
pub fn get_special_tokens(&self) -> Vec<u32>
pub fn greedy_tokenize(&self, bytes: &[u8]) -> Vec<u32>
pub fn tokenize_with_greedy_fallback( &self, bytes: &[u8], str_tokenize: impl Fn(&str) -> Vec<u32>, ) -> Vec<u32>
pub fn has_extensions(&self, bytes: &[u8]) -> bool
pub fn token_id(&self, bytes: &[u8]) -> Option<u32>
pub fn prefix_token_id(&self, bytes: &[u8]) -> (u32, usize)
pub fn max_token_len(&self) -> usize
pub fn root(&self) -> &TrieNode
pub fn check_against(&self, tokens: &[Vec<u8>])
pub fn child_at_byte<'a>( &'a self, n: &'a TrieNode, byte: u8, ) -> Option<&'a TrieNode>
pub fn all_subtokens(&self, bytes: &[u8]) -> Vec<u32>
pub fn node_children(&self, n: &TrieNode) -> NodeChildren<'_>
pub fn child_at_bytes<'a>( &'a self, n: &'a TrieNode, bytes: &[u8], ) -> Option<&'a TrieNode>
pub fn token_id_at_bytes(&self, bytes: &[u8]) -> Option<u32>
pub fn chop_tokens(
&self,
r: &mut impl Recognizer,
tokens: &[u32],
) -> (usize, usize)
pub fn chop_tokens( &self, r: &mut impl Recognizer, tokens: &[u32], ) -> (usize, usize)
Return how many tokens and bytes need to chopped off tokens, so that we do not limit all possible future tokenizations matching the recognizer.
pub fn has_valid_extensions(
&self,
r: &mut impl Recognizer,
start: &[u8],
) -> bool
pub fn has_valid_extensions( &self, r: &mut impl Recognizer, start: &[u8], ) -> bool
Check if add_bias() would have returned any tokens.
pub fn all_prefixes(&self, bytes: &[u8]) -> Vec<u32>
pub fn add_bias( &self, r: &mut impl Recognizer, toks: &mut SimpleVob, start: &[u8], )
pub fn all_tokens(&self) -> Vec<Vec<u8>>
pub fn sorted_tokens(&self) -> Vec<(u32, Vec<u8>)>
pub fn trie_stats(&self) -> String
Trait Implementations§
Auto Trait Implementations§
impl Freeze for TokTrie
impl RefUnwindSafe for TokTrie
impl Send for TokTrie
impl Sync for TokTrie
impl Unpin for TokTrie
impl UnwindSafe for TokTrie
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Downcast for Twhere
T: AsAny + ?Sized,
impl<T> Downcast for Twhere
T: AsAny + ?Sized,
§fn downcast_ref<T>(&self) -> Option<&T>where
T: AsAny,
fn downcast_ref<T>(&self) -> Option<&T>where
T: AsAny,
Forward to the method defined on the type
Any
.§fn downcast_mut<T>(&mut self) -> Option<&mut T>where
T: AsAny,
fn downcast_mut<T>(&mut self) -> Option<&mut T>where
T: AsAny,
Forward to the method defined on the type
Any
.§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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