You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

24 lines
1.1 KiB

package model
import "time"
// AIUsageRecord AI使用记录
type AIUsageRecord struct {
Id int64 `gorm:"column:id;primaryKey;autoIncrement" json:"id"`
UserId int64 `gorm:"column:user_id;index;not null" json:"userId"`
ProviderId int64 `gorm:"column:provider_id;index" json:"providerId"`
ModelId string `gorm:"column:model_id;type:varchar(100)" json:"modelId"`
InputTokens int `gorm:"column:input_tokens;default:0" json:"inputTokens"`
OutputTokens int `gorm:"column:output_tokens;default:0" json:"outputTokens"`
Cost float64 `gorm:"column:cost;type:decimal(10,6);default:0" json:"cost"`
ApiKeyId int64 `gorm:"column:api_key_id;default:0" json:"apiKeyId"`
Status string `gorm:"column:status;type:varchar(20);default:'ok'" json:"status"`
LatencyMs int `gorm:"column:latency_ms;default:0" json:"latencyMs"`
ErrorMessage string `gorm:"column:error_message;type:text" json:"errorMessage"`
CreatedAt time.Time `gorm:"column:created_at;autoCreateTime" json:"createdAt"`
}
// TableName 指定表名
func (AIUsageRecord) TableName() string {
return "ai_usage_record"
}