The genai_estimate_tokens function estimates the number of tokens in a text string. This estimation helps you predict API costs, validate input sizes, and monitor token usage before making actual API calls to LLM services.
You can use this function to validate prompt sizes, estimate costs before API calls, monitor content length, or analyze token efficiency across different prompts.
For users of other query languages
If you come from other query languages, this section explains how to adjust your existing queries to achieve the same results in APL.
In Splunk SPL, there’s no direct equivalent for token estimation. You would typically use character or word count as a rough approximation.
['ai-logs']
| extend estimated_tokens = genai_estimate_tokens(text)In ANSI SQL, you would need to use character-based estimations, which are less accurate than proper token counting.
['ai-logs']
| extend estimated_tokens = genai_estimate_tokens(text)Usage
Syntax
genai_estimate_tokens(text)Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| text | string | Yes | The text string for which you want to estimate the token count. |
Returns
Returns a long integer representing the estimated number of tokens in the input text.
Example
Estimate the number of tokens in a GenAI conversation prompt.
Query
['otel-demo-genai']
| extend user_prompt = genai_extract_user_prompt(['attributes.gen_ai.input.messages'])
| extend estimated_tokens = genai_estimate_tokens(user_prompt)
| summarize avg_tokens = avg(estimated_tokens), max_tokens = max(estimated_tokens)Output
| avg_tokens | max_tokens |
|---|---|
| 245 | 1024 |
This query analyzes prompt token usage patterns, helping you predict costs and validate input sizes.
List of related functions
- genai_cost: Calculates the actual cost based on token usage. Use this in combination with token estimates to predict costs.
- strlen: Returns string length in characters. Use this for a simpler character count without token estimation.
- string_size: Returns string length in characters. Use this when you need character count instead of token count.
- genai_input_cost: Calculates input token cost. Combine with token estimation to predict prompt costs.