Documentation
¶
Index ¶
Constants ¶
const ( TableNameOpenaiClients = "openai_clients" TableNameOpenaiModels = "openai_models" TableNameOpenaiRequests = "openai_requests" TableNameOpenaiClientBalance = "openai_client_balance" TableNameWhisperUsers = "whisper_users" TableNameWhisperUserPermissions = "whisper_user_permissions" TableNameWhisperUserBalance = "whisper_user_balance" )
Variables ¶
var OpenaiClientBalanceCols = &openaiclientbalanceCols{
ID: "id",
ClientID: "client_id",
BalanceChangeAmount: "balance_change_amount",
BalanceRemaining: "balance_remaining",
Action: "action",
Reason: "reason",
CreatedAt: "created_at",
}
var OpenaiClientCols = &openaiclientCols{
ID: "id",
Description: "description",
ApiKey: "api_key",
Endpoint: "endpoint",
Weight: "weight",
CreatedAt: "created_at",
UpdatedAt: "updated_at",
}
var OpenaiModelCols = &openaimodelCols{
ID: "id",
ClientID: "client_id",
Model: "model",
Type: "type",
MaxTokens: "max_tokens",
PromptPrice: "prompt_price",
CompletionPrice: "completion_price",
RpmLimit: "rpm_limit",
TpmLimit: "tpm_limit",
CreatedAt: "created_at",
UpdatedAt: "updated_at",
}
var OpenaiRequestCols = &openairequestCols{
ID: "id",
ClientID: "client_id",
RequestID: "request_id",
TraceID: "trace_id",
ModelID: "model_id",
UserID: "user_id",
RequestIP: "request_ip",
PromptTokenUsage: "prompt_token_usage",
CompletionTokenUsage: "completion_token_usage",
BalanceCost: "balance_cost",
CreatedAt: "created_at",
}
var WhisperUserBalanceCols = &whisperuserbalanceCols{
ID: "id",
UserID: "user_id",
BalanceChangeAmount: "balance_change_amount",
BalanceRemaining: "balance_remaining",
Action: "action",
Reason: "reason",
CreatedAt: "created_at",
}
var WhisperUserCols = &whisperuserCols{
ID: "id",
Email: "email",
ApiKey: "api_key",
Role: "role",
Language: "language",
AllowIps: "allow_ips",
CreatedAt: "created_at",
UpdatedAt: "updated_at",
}
var WhisperUserPermissionCols = &whisperuserpermissionCols{
ID: "id",
UserID: "user_id",
ModelID: "model_id",
CreatedAt: "created_at",
}
Functions ¶
This section is empty.
Types ¶
type EnumOpenaiClientBalanceAction ¶
type EnumOpenaiClientBalanceAction = string
const ( OpenaiClientBalanceActionConsumption EnumOpenaiClientBalanceAction = "consumption" // 1. 消费:Consumption - Natural consumption in the system OpenaiClientBalanceActionRecharge EnumOpenaiClientBalanceAction = "recharge" // 2. 充值:Recharge - Actively recharging in the system OpenaiClientBalanceActionGift EnumOpenaiClientBalanceAction = "gift" // 3. 赠送:Gift - Given according to rules OpenaiClientBalanceActionSpecial EnumOpenaiClientBalanceAction = "special" // 4. 特殊:Special - Manually changed by an administrator OpenaiClientBalanceActionInitial EnumOpenaiClientBalanceAction = "initial" // 5. 初始:Initial - Initial balance when the account is created )
type EnumWhisperUserBalanceAction ¶
type EnumWhisperUserBalanceAction = string
const ( WhisperUserBalanceActionConsumption EnumWhisperUserBalanceAction = "consumption" // 1. 消费:Consumption - Natural consumption in the system WhisperUserBalanceActionRecharge EnumWhisperUserBalanceAction = "recharge" // 2. 充值:Recharge - Actively recharging in the system WhisperUserBalanceActionGift EnumWhisperUserBalanceAction = "gift" // 3. 赠送:Gift - Given according to rules WhisperUserBalanceActionSpecial EnumWhisperUserBalanceAction = "special" // 4. 特殊:Special - Manually changed by an administrator WhisperUserBalanceActionInitial EnumWhisperUserBalanceAction = "initial" // 5. 初始:Initial - Initial balance when the user is created )
type OpenaiClient ¶
type OpenaiClient struct { ID int64 `gorm:"column:id;type:integer;autoIncrement:true;primaryKey;index:idx_ids"` Description string `gorm:"column:description;type:varchar(64);not null;comment:openai_service_description;uniqueIndex:idx_desc"` ApiKey string `gorm:"column:api_key;type:varchar(256);not null;comment:openai_service_api_key;index:idx_api_key"` Endpoint string `gorm:"column:endpoint;type:varchar(64);not null;comment:openai_service_endpoint;index:idx_endpoint"` Weight int `gorm:"column:weight;type:integer;not null;comment:openai_service_weight;index:idx_weight"` CreatedAt time.Time `gorm:"column:created_at;type:timestamp;not null;default:CURRENT_TIMESTAMP"` UpdatedAt time.Time `gorm:"column:updated_at;type:timestamp;not null;default:CURRENT_TIMESTAMP"` }
OpenaiClient openai service secret
Reference: https://docs.alioth.center/akasha-whisper-database.html#openai-clients
func (OpenaiClient) TableName ¶
func (c OpenaiClient) TableName() string
type OpenaiClientBalance ¶
type OpenaiClientBalance struct { ID int64 `gorm:"column:id;type:integer;autoIncrement:true;primaryKey:true"` ClientID int64 `gorm:"column:client_id;type:integer;not null;index:idx_client_id;index:idx_scan"` BalanceChangeAmount decimal.Decimal `gorm:"column:balance_change_amount;type:decimal(16,8);not null;default:0"` BalanceRemaining decimal.Decimal `gorm:"column:balance_remaining;type:decimal(16,8);not null;default:0;index:idx_balance_remaining"` Action string `gorm:"column:action;type:varchar(32);not null;index:idx_action"` Reason string `gorm:"column:reason;type:varchar(255);not null;default:''"` CreatedAt time.Time `gorm:"column:created_at;type:timestamp;not null;default:CURRENT_TIMESTAMP;index:idx_created_at;index:idx_scan"` }
OpenaiClientBalance openai client balance record
Reference: https://docs.alioth.center/akasha-whisper-database.html#openai-client-balance
func (OpenaiClientBalance) TableName ¶
func (m OpenaiClientBalance) TableName() string
type OpenaiModel ¶
type OpenaiModel struct { ID int64 `gorm:"column:id;type:integer;autoIncrement:true;primaryKey;uniqueIndex:idx_ids"` ClientID int64 `` /* 133-byte string literal not displayed */ Model string `gorm:"column:model;type:varchar(32);not null;comment:openai_model_name;index:idx_name;uniqueIndex:idx_names"` Type string `gorm:"column:type;type:varchar(64);not null;comment:openai_model_type;default:chat;index:idx_type"` MaxTokens int `gorm:"column:max_tokens;type:integer;not null;comment:openai_max_tokens"` PromptPrice decimal.Decimal `gorm:"column:prompt_price;type:decimal(16,8);not null;comment:openai_prompt_price"` CompletionPrice decimal.Decimal `gorm:"column:completion_price;type:decimal(16,8);not null;comment:openai_completion_price"` RpmLimit int `gorm:"column:rpm_limit;type:integer;not null;default:-1;comment:openai_rpm_limit"` TpmLimit int `gorm:"column:tpm_limit;type:integer;not null;default:-1;comment:openai_tpm_limit"` CreatedAt time.Time `gorm:"column:created_at;type:timestamp;not null;default:CURRENT_TIMESTAMP"` UpdatedAt time.Time `gorm:"column:updated_at;type:timestamp;not null;default:CURRENT_TIMESTAMP"` }
OpenaiModel openai model
Reference: https://docs.alioth.center/akasha-whisper-database.html#openai-models
func (OpenaiModel) TableName ¶
func (m OpenaiModel) TableName() string
type OpenaiRequest ¶
type OpenaiRequest struct { ID int64 `gorm:"column:id;type:integer;autoIncrement:true;primaryKey;index:idx_ids"` ClientID int64 `gorm:"column:client_id;type:integer;not null;comment:openai_client_id;index:idx_client_ids"` RequestID string `gorm:"column:request_id;type:varchar(64);not null;comment:openai_request_id;index:idx_request_ids"` TraceID string `gorm:"column:trace_id;type:varchar(64);not null;comment:openai_trace_id;index:idx_trace_ids"` ModelID int64 `gorm:"column:model_id;type:integer;not null;comment:openai_model_id;index:idx_model_ids"` UserID int64 `gorm:"column:user_id;type:integer;not null;comment:openai_user_id;index:idx_user_ids"` RequestIP string `gorm:"column:request_ip;type:varchar(40);not null;comment:openai_request_ip;index:idx_request_ips"` PromptTokenUsage int `gorm:"column:prompt_token_usage;type:integer;not null;comment:openai_prompt_token_usage"` CompletionTokenUsage int `gorm:"column:completion_token_usage;type:integer;not null;comment:openai_completion_token_usage"` BalanceCost decimal.Decimal `gorm:"column:balance_cost;type:decimal(16,8);not null;comment:openai_balance_cost;index:idx_balance_costs"` CreatedAt time.Time `gorm:"column:created_at;type:timestamp;not null;default:CURRENT_TIMESTAMP"` }
OpenaiRequest openai request
Reference: https://docs.alioth.center/akasha-whisper-database.html#openai-requests
func (OpenaiRequest) TableName ¶
func (r OpenaiRequest) TableName() string
type WhisperUser ¶
type WhisperUser struct { ID int64 `gorm:"column:id;type:integer;autoIncrement:true;primaryKey;index:idx_ids"` Email string `gorm:"column:email;type:varchar(64);not null;comment:whisper_user_email;uniqueIndex:idx_emails"` ApiKey string `gorm:"column:api_key;type:varchar(64);not null;comment:whisper_user_api_key;uniqueIndex:idx_api_keys"` Role string `gorm:"column:role;type:varchar(10);not null;comment:whisper_user_role;index:idx_roles"` Language string `gorm:"column:language;type:varchar(2);not null;default:en;comment:whisper_user_language"` AllowIps string `gorm:"column:allow_ips;type:varchar(128);not null;comment:whisper_user_allow_ips;index:idx_allow_ips"` CreatedAt time.Time `gorm:"column:created_at;type:timestamp;not null;default:CURRENT_TIMESTAMP"` UpdatedAt time.Time `gorm:"column:updated_at;type:timestamp;not null;default:CURRENT_TIMESTAMP"` }
WhisperUser whisper user
Reference: https://docs.alioth.center/akasha-whisper-database.html#whisper-users
func (WhisperUser) TableName ¶
func (u WhisperUser) TableName() string
type WhisperUserBalance ¶
type WhisperUserBalance struct { ID int64 `gorm:"column:id;type:integer;autoIncrement:true;primaryKey:true"` UserID int64 `gorm:"column:user_id;type:integer;not null;index:idx_client_id;index:idx_scan"` BalanceChangeAmount decimal.Decimal `gorm:"column:balance_change_amount;type:decimal(16,8);not null;default:0"` BalanceRemaining decimal.Decimal `gorm:"column:balance_remaining;type:decimal(16,8);not null;default:0;index:idx_balance_remaining"` Action string `gorm:"column:action;type:varchar(32);not null;index:idx_action"` Reason string `gorm:"column:reason;type:varchar(255);not null;default:''"` CreatedAt time.Time `gorm:"column:created_at;type:timestamp;not null;default:CURRENT_TIMESTAMP;index:idx_created_at;index:idx_scan"` }
WhisperUserBalance whisper user balance record
Reference: https://docs.alioth.center/akasha-whisper-database.html#whisper-user-balance
func (WhisperUserBalance) TableName ¶
func (m WhisperUserBalance) TableName() string
type WhisperUserPermission ¶
type WhisperUserPermission struct { ID int64 `gorm:"column:id;type:integer;autoIncrement:true;primaryKey;index:idx_ids"` UserID int64 `gorm:"column:user_id;type:integer;not null;comment:whisper_user_id;index:idx_user_ids;uniqueIndex:idx_perm"` ModelID int64 `gorm:"column:model_id;type:integer;not null;comment:whisper_model_id;index:idx_model_ids;uniqueIndex:idx_perm"` CreatedAt time.Time `gorm:"column:created_at;type:timestamp;not null;default:CURRENT_TIMESTAMP"` }
WhisperUserPermission whisper user permission
Reference: https://docs.alioth.center/akasha-whisper-database.html#whisper-user-permissions
func (WhisperUserPermission) TableName ¶
func (p WhisperUserPermission) TableName() string
type WhisperUserRoleEnum ¶
type WhisperUserRoleEnum = string
const ( WhisperUserRoleUser WhisperUserRoleEnum = "user" WhisperUserRoleClient WhisperUserRoleEnum = "client" )
Source Files
¶
- openai_client.go
- openai_client_balance.go
- openai_client_balance_cols.gen.go
- openai_client_cols.gen.go
- openai_model.go
- openai_model_cols.gen.go
- openai_request.go
- openai_request_cols.gen.go
- tables.go
- whisper_user.go
- whisper_user_balance.go
- whisper_user_balance_cols.gen.go
- whisper_user_cols.gen.go
- whisper_user_permission.go
- whisper_user_permission_cols.gen.go