mirror of
https://github.com/Dvorinka/Trackeep.git
synced 2026-06-04 04:22:57 +00:00
first test
This commit is contained in:
@@ -0,0 +1,62 @@
|
||||
package models
|
||||
|
||||
import (
|
||||
"time"
|
||||
|
||||
"gorm.io/gorm"
|
||||
)
|
||||
|
||||
// UserAISettings stores user-specific AI provider configurations
|
||||
type UserAISettings struct {
|
||||
ID uint `json:"id" gorm:"primaryKey"`
|
||||
CreatedAt time.Time `json:"created_at"`
|
||||
UpdatedAt time.Time `json:"updated_at"`
|
||||
DeletedAt gorm.DeletedAt `json:"-" gorm:"index"`
|
||||
|
||||
UserID uint `json:"user_id" gorm:"not null;uniqueIndex"`
|
||||
User User `json:"user,omitempty" gorm:"foreignKey:UserID"`
|
||||
|
||||
// Mistral Settings
|
||||
MistralEnabled *bool `json:"mistral_enabled" gorm:"default:false"`
|
||||
MistralAPIKey string `json:"-" gorm:"column:mistral_api_key"` // Encrypted
|
||||
MistralModel string `json:"mistral_model" gorm:"default:mistral-small-latest"`
|
||||
MistralModelThinking string `json:"mistral_model_thinking" gorm:"default:mistral-large-latest"`
|
||||
|
||||
// Grok Settings
|
||||
GrokEnabled *bool `json:"grok_enabled" gorm:"default:false"`
|
||||
GrokAPIKey string `json:"-" gorm:"column:grok_api_key"` // Encrypted
|
||||
GrokBaseURL string `json:"grok_base_url" gorm:"default:https://api.x.ai/v1"`
|
||||
GrokModel string `json:"grok_model" gorm:"default:grok-4-1-fast-non-reasoning-latest"`
|
||||
GrokModelThinking string `json:"grok_model_thinking" gorm:"default:grok-4-1-fast-reasoning-latest"`
|
||||
|
||||
// DeepSeek Settings
|
||||
DeepSeekEnabled *bool `json:"deepseek_enabled" gorm:"default:false"`
|
||||
DeepSeekAPIKey string `json:"-" gorm:"column:deepseek_api_key"` // Encrypted
|
||||
DeepSeekBaseURL string `json:"deepseek_base_url" gorm:"default:https://api.deepseek.com"`
|
||||
DeepSeekModel string `json:"deepseek_model" gorm:"default:deepseek-chat"`
|
||||
DeepSeekModelThinking string `json:"deepseek_model_thinking" gorm:"default:deepseek-reasoner"`
|
||||
|
||||
// Ollama Settings
|
||||
OllamaEnabled *bool `json:"ollama_enabled" gorm:"default:false"`
|
||||
OllamaBaseURL string `json:"ollama_base_url" gorm:"default:http://localhost:11434"`
|
||||
OllamaModel string `json:"ollama_model" gorm:"default:llama3.1"`
|
||||
OllamaModelThinking string `json:"ollama_model_thinking" gorm:"default:llama3.1"`
|
||||
|
||||
// LongCat Settings
|
||||
LongCatEnabled *bool `json:"longcat_enabled" gorm:"default:false"`
|
||||
LongCatAPIKey string `json:"-" gorm:"column:longcat_api_key"` // Encrypted
|
||||
LongCatBaseURL string `json:"longcat_base_url" gorm:"default:https://api.longcat.chat"`
|
||||
LongCatOpenAIEndpoint string `json:"longcat_openai_endpoint" gorm:"default:https://api.longcat.chat/openai"`
|
||||
LongCatAnthropicEndpoint string `json:"longcat_anthropic_endpoint" gorm:"default:https://api.longcat.chat/anthropic"`
|
||||
LongCatModel string `json:"longcat_model" gorm:"default:LongCat-Flash-Chat"`
|
||||
LongCatModelThinking string `json:"longcat_model_thinking" gorm:"default:LongCat-Flash-Thinking"`
|
||||
LongCatModelThinkingUpgraded string `json:"longcat_model_thinking_upgraded" gorm:"default:LongCat-Flash-Thinking-2601"`
|
||||
LongCatFormat string `json:"longcat_format" gorm:"default:openai"`
|
||||
|
||||
// OpenRouter Settings
|
||||
OpenRouterEnabled *bool `json:"openrouter_enabled" gorm:"default:false"`
|
||||
OpenRouterAPIKey string `json:"-" gorm:"column:openrouter_api_key"` // Encrypted
|
||||
OpenRouterBaseURL string `json:"openrouter_base_url" gorm:"default:https://openrouter.ai/api"`
|
||||
OpenRouterModel string `json:"openrouter_model" gorm:"default:openrouter/auto"`
|
||||
OpenRouterModelThinking string `json:"openrouter_model_thinking" gorm:"default:openrouter/auto"`
|
||||
}
|
||||
Reference in New Issue
Block a user