TokenCounter
Auto-generated API reference for TokenCounter.
Interface: TokenCounter
Defined in: packages/core/src/types/token-counter.ts:33
Universal token counter contract.
Implementations range from zero-dep approximate counters (chars/4) to provider-specific tokenizers (e.g. tiktoken for OpenAI models).
#Example
const result = await counter.count(messages, { model: 'gpt-4o' })
console.log(`Estimated tokens: ${result.total}`)#Properties
#name
readonlyname:string
Defined in: packages/core/src/types/token-counter.ts:35
Human-readable name of the counter (e.g. "approximate", "tiktoken").
#Methods
#count()
count(
messages,options?):number|Promise<number>
Defined in: packages/core/src/types/token-counter.ts:41
Count (or estimate) the number of tokens for a list of messages. May be async to allow lazy-loading of tokenizer WASM modules.
#Parameters
messages
readonly Pick<Message, "role" | "content">[]
options?
#Returns
number | Promise<number>
#countDetailed()?
optionalcountDetailed(messages,options?):TokenCountResult|Promise<TokenCountResult>
Defined in: packages/core/src/types/token-counter.ts:47
Count with per-message breakdown.
Falls back to calling count once when not overridden.
#Parameters
messages
readonly Pick<Message, "role" | "content">[]
options?
#Returns
TokenCountResult | Promise<TokenCountResult>