agentskit.js

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

readonly name: 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?

TokenCounterOptions

#Returns

number | Promise<number>


#countDetailed()?

optional countDetailed(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?

TokenCounterOptions

#Returns

TokenCountResult | Promise<TokenCountResult>

Explore nearby

✎ Edit this page on GitHub·Found a problem? Open an issue →·How to contribute →

On this page