55 lines
1.2 KiB
Go
55 lines
1.2 KiB
Go
package config
|
|
|
|
import (
|
|
"os"
|
|
"time"
|
|
)
|
|
|
|
type Config struct {
|
|
// 服务配置
|
|
Port string
|
|
UploadDir string
|
|
OutputDir string
|
|
|
|
// 大模型配置
|
|
APIKey string
|
|
BaseURL string
|
|
Model string
|
|
MaxFixAttempts int
|
|
Timeout time.Duration
|
|
|
|
// 限流配置
|
|
MaxFileSize int64
|
|
MaxTasks int
|
|
|
|
//gitea配置
|
|
GiteaUrl string
|
|
GiteaToken string
|
|
OrgName string
|
|
}
|
|
|
|
func Load() *Config {
|
|
return &Config{
|
|
Port: getEnv("PORT", "5002"),
|
|
UploadDir: getEnv("UPLOAD_DIR", "./uploads"),
|
|
OutputDir: getEnv("OUTPUT_DIR", "./outputs"),
|
|
APIKey: getEnv("DOUBAO_API_KEY", "ark-3f942f9b-7428-4880-b939-026087b99957-062f1"),
|
|
BaseURL: getEnv("DOUBAO_BASE_URL", "https://ark.cn-beijing.volces.com/api/v3"),
|
|
Model: getEnv("DOUBAO_MODEL", "ep-20260717134040-w9qhc"),
|
|
Timeout: 5 * time.Minute,
|
|
MaxFileSize: 10 * 1024 * 1024, // 10MB
|
|
MaxTasks: 100,
|
|
MaxFixAttempts: 3,
|
|
GiteaUrl: "https://gitea.cdlsxd.cn",
|
|
GiteaToken: "406ebea224965f9be4c25e7ff2614588827fd31f",
|
|
OrgName: "ai_sdk",
|
|
}
|
|
}
|
|
|
|
func getEnv(key, defaultVal string) string {
|
|
if val := os.Getenv(key); val != "" {
|
|
return val
|
|
}
|
|
return defaultVal
|
|
}
|