Max
05/28/2025, 1:56 PMTanVD
05/28/2025, 2:53 PMTanVD
05/28/2025, 2:53 PMVadim Briliantov
05/28/2025, 2:56 PMMax
05/28/2025, 4:38 PMVadim Briliantov
06/02/2025, 10:35 AMlatestTokenUsage
inside the prompt (or metaInfo
from the Message.Response) — that’s what you get from LLMs. Example:
edge(nodeExecuteToolMultiple forwardTo nodeCompressHistory
onCondition { llm.readSession { prompt.latestTokenUsage > MAX_TKNS } })
Also there is now a MessageTokenizer
plugin for estimating more fine-grained token counts (not only for LLM responses and whole prompts before them, but also for each single user message):
install(MessageTokenizer) {
tokenizer = ... // ex: `TiktokenEncoder` or your own Tokenizer impl
enableCaching = false // by default -- `true`
}
and then you can use tokenizer
extension from inside nodes:
node {
llm.readSession {
tokenizer.tokenCountFor(prompt) // for whole prompt
tokenizer.tokenCountFor(prompt.messages[12]) // for single message
}
}
Max
06/02/2025, 10:44 AM