cost

package
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 3, 2026 License: MIT Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func HasPricing

func HasPricing(model string) bool

HasPricing 检查是否有该模型的价格数据

Types

type ModelPricing

type ModelPricing struct {
	InputPerMillion      float64 // 输入 token 单价($/M tokens)
	OutputPerMillion     float64 // 输出 token 单价($/M tokens)
	CacheWritePerMillion float64 // Cache 写入单价($/M tokens)
	CacheReadPerMillion  float64 // Cache 读取单价($/M tokens)
}

ModelPricing 单个模型的价格信息

func GetPricing

func GetPricing(model string) ModelPricing

GetPricing 获取模型价格,先精确匹配,再尝试子串匹配,未知模型返回零值

type Tracker

type Tracker struct {
	// contains filtered or unexported fields
}

Tracker 实时费用追踪器

func NewTracker

func NewTracker(model, currency string) *Tracker

NewTracker 创建费用追踪器

func (*Tracker) AddUsage

func (t *Tracker) AddUsage(inputTokens, outputTokens, cacheCreation, cacheRead int)

AddUsage 记录一次 API 调用的 token 使用量

func (*Tracker) CacheCreationTokens

func (t *Tracker) CacheCreationTokens() int

CacheCreationTokens 返回缓存写入 token 数

func (*Tracker) CacheReadTokens

func (t *Tracker) CacheReadTokens() int

CacheReadTokens 返回缓存读取 token 数

func (*Tracker) CostString

func (t *Tracker) CostString() string

CostString 返回格式化的费用字符串

func (*Tracker) Currency

func (t *Tracker) Currency() string

Currency 返回当前货币

func (*Tracker) InputTokens

func (t *Tracker) InputTokens() int

InputTokens 返回总输入 token 数

func (*Tracker) Model

func (t *Tracker) Model() string

Model 返回模型名称

func (*Tracker) OutputTokens

func (t *Tracker) OutputTokens() int

OutputTokens 返回总输出 token 数

func (*Tracker) Reset

func (t *Tracker) Reset()

Reset 重置所有累计数据(用于恢复会话时重建状态)

func (*Tracker) SetCurrency

func (t *Tracker) SetCurrency(currency string)

SetCurrency 切换货币

func (*Tracker) SetModel

func (t *Tracker) SetModel(model string)

SetModel 切换模型

func (*Tracker) TotalCost

func (t *Tracker) TotalCost() float64

TotalCost 返回总费用(按当前货币)

func (*Tracker) TotalCostUSD

func (t *Tracker) TotalCostUSD() float64

TotalCostUSD 返回 USD 总费用

func (*Tracker) TotalTokens

func (t *Tracker) TotalTokens() int

TotalTokens 返回总 token 数(输入+输出)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL