Skip to main content

CharApproxTokenizer

Struct CharApproxTokenizer 

Source
pub struct CharApproxTokenizer;
Expand description

Trivial tokenizer using the well-known “≈ 4 chars per token” rule of thumb. Default for the builder so the crate has no runtime model assets.

Counts bytes (not unicode scalar values) divided by 4, rounded up, with an extra +1 floor so any non-empty input reports at least 1 token. This matches what most sources will report in estimated_tokens, so the builder won’t surprise sources during pruning at default settings.

Not accurate for billing or budgeting against a real LLM provider — enable the tiktoken feature and use TiktokenCl100k when accuracy matters.

Implementations§

Source§

impl CharApproxTokenizer

Source

pub fn new() -> Self

Construct a new CharApproxTokenizer.

Trait Implementations§

Source§

impl Clone for CharApproxTokenizer

Source§

fn clone(&self) -> CharApproxTokenizer

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Copy for CharApproxTokenizer

Source§

impl Debug for CharApproxTokenizer

Source§

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

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

impl Default for CharApproxTokenizer

Source§

fn default() -> CharApproxTokenizer

Returns the “default value” for a type. Read more
Source§

impl Tokenizer for CharApproxTokenizer

Source§

fn count(&self, text: &str) -> usize

Number of tokens the model would see for text.
Source§

fn encode(&self, _text: &str) -> Option<Vec<u32>>

Token IDs for providers that need them. Default returns None; only tokenizers that have a real BPE backing (e.g. tiktoken) override.

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, 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.