pub struct TokenCounter { /* private fields */ }Expand description
Token counter for estimating token usage
Implementations§
Source§impl TokenCounter
impl TokenCounter
Sourcepub fn count_tokens_openai(&self, content: &str, model: &str) -> usize
pub fn count_tokens_openai(&self, content: &str, model: &str) -> usize
Count tokens for OpenAI models using estimation
This uses a heuristic-based approach:
- Average English word is ~4.7 characters
- Average token is ~4 characters
- Special tokens and formatting add overhead
Sourcepub fn count(&self, content: &str, model: &str) -> Result<usize, ProviderError>
pub fn count(&self, content: &str, model: &str) -> Result<usize, ProviderError>
Count tokens for content (unified interface)
This method provides a unified interface for token counting across providers. It returns a Result type for better error handling.
Sourcepub fn clear_cache(&self)
pub fn clear_cache(&self)
Clear the token count cache
Sourcepub fn cache_size(&self) -> usize
pub fn cache_size(&self) -> usize
Get cache size
Trait Implementations§
Source§impl Default for TokenCounter
impl Default for TokenCounter
Source§impl TokenCounterTrait for TokenCounter
impl TokenCounterTrait for TokenCounter
Source§fn count_tokens(
&self,
content: &str,
model: &str,
) -> Result<usize, ProviderError>
fn count_tokens( &self, content: &str, model: &str, ) -> Result<usize, ProviderError>
Count tokens for content in a specific model
Source§fn clear_cache(&self)
fn clear_cache(&self)
Clear the token count cache
Source§fn cache_size(&self) -> usize
fn cache_size(&self) -> usize
Get cache size
Auto Trait Implementations§
impl !Freeze for TokenCounter
impl RefUnwindSafe for TokenCounter
impl Send for TokenCounter
impl Sync for TokenCounter
impl Unpin for TokenCounter
impl UnwindSafe for TokenCounter
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