Skip to content

Graphorin API reference v0.1.0


Graphorin API reference / @graphorin/core / / TokenCounter

Interface: TokenCounter

Defined in: packages/core/src/contracts/token-counter.ts:14

Pluggable token counter. Implementations live in @graphorin/provider (default JsTiktokenCounter for OpenAI/compatible, plus per-vendor native counters) and are interchangeable behind this interface.

Counters carry a version field so that consumers (e.g. the session_messages.tokenizer_version cache column) can invalidate stale cached counts when the underlying tokenizer is upgraded.

Stable

Properties

PropertyModifierTypeDescriptionDefined in
idreadonlystringHuman-readable identifier ('js-tiktoken@cl100k_base', …).packages/core/src/contracts/token-counter.ts:16
versionreadonlystringTokenizer version string used for cache invalidation.packages/core/src/contracts/token-counter.ts:18

Methods

count()

ts
count(messages): Promise<number>;

Defined in: packages/core/src/contracts/token-counter.ts:20

Count tokens in a list of Messages (system/user/assistant/tool).

Parameters

ParameterType
messagesreadonly Message[]

Returns

Promise&lt;number&gt;


countText()

ts
countText(text): Promise<number>;

Defined in: packages/core/src/contracts/token-counter.ts:22

Count tokens in a raw text string.

Parameters

ParameterType
textstring

Returns

Promise&lt;number&gt;