Token Usage
Widget displaying token count, usage statistics, and optional cost estimation. Shows input/output token breakdown with optional cache statistics.
Preview
Preview
↑ 1,245
↓ 832
$0.003
Token Usage
2,077 / 4,096
Input: 1,245
Output: 832
Cost: $0.003
Installation
$
flai add token_usage
Import
import 'package:my_app/flai/components/token_usage/token_usage.dart';
Usage
// Basic usage with message's usage info
FlaiTokenUsage(
usage: message.usage!,
)
// With cost estimation
FlaiTokenUsage(
usage: UsageInfo(
inputTokens: 1250,
outputTokens: 432,
cacheReadTokens: 800,
),
costPerInputToken: 0.000003, // $3/M tokens
costPerOutputToken: 0.000015, // $15/M tokens
)
// Compact inline display
FlaiTokenUsage(
usage: usage,
compact: true,
)
Properties
| Property | Type | Default | Description |
|---|---|---|---|
| usage | UsageInfo | required | Token usage data to display. |
| costPerInputToken | double? | null | Cost per input token for cost estimation. |
| costPerOutputToken | double? | null | Cost per output token for cost estimation. |
| compact | bool | false | Compact display with just total tokens. |
UsageInfo Model
class UsageInfo {
final int inputTokens;
final int outputTokens;
final int? cacheReadTokens;
final int? cacheCreationTokens;
int get totalTokens => inputTokens + outputTokens;
}