refactor: 认证系统重构 + DevTools CLI 重写 + 文档全面更新
- auth: Login 简化为管理员始终通过 .env 验证,GetProfile 修正 admin DB 查询 - devtools: .sh/.bat 同步重写为完整 CLI (start/stop/status/logs/build/db:*) - docs: 新增 devtools.md,重写 Deploy.md (三种方式+Windows说明),更新 README/gateway-api - voice-service: DashScope 实时流式 STT 支持 - gateway: Phase 6 多模型配置 + 多端客户端管理 + WebSocket 增强 Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -11,20 +11,44 @@ type Config struct {
|
||||
MaxAudioSize int64 // 字节
|
||||
|
||||
// DashScope STT 配置
|
||||
DashScopeAPIKey string
|
||||
DashScopeModel string
|
||||
DashScopeAPIKey string
|
||||
DashScopeModel string // 离线/非实时 ASR 模型
|
||||
DashScopeSTTRealtime string // 实时 ASR 模型
|
||||
}
|
||||
|
||||
// Load 从环境变量加载配置
|
||||
// Load 从 models.json 和环境变量加载配置。
|
||||
// models.json 优先级高于环境变量。
|
||||
func Load() *Config {
|
||||
// 从 models.json 加载 ASR 配置
|
||||
modelsAPIKey, modelsOffline, modelsRealtime := LoadModelsConfig()
|
||||
|
||||
// .env / 环境变量作为回退
|
||||
envAPIKey := getEnv("DASHSCOPE_API_KEY", "")
|
||||
envModel := getEnv("DASHSCOPE_STT_MODEL", "qwen3-asr-flash-2026-02-10")
|
||||
envRealtime := getEnv("DASHSCOPE_STT_REALTIME_MODEL", "qwen3-asr-flash-realtime")
|
||||
|
||||
apiKey := modelsAPIKey
|
||||
if apiKey == "" {
|
||||
apiKey = envAPIKey
|
||||
}
|
||||
offlineModel := modelsOffline
|
||||
if offlineModel == "" {
|
||||
offlineModel = envModel
|
||||
}
|
||||
realtimeModel := modelsRealtime
|
||||
if realtimeModel == "" {
|
||||
realtimeModel = envRealtime
|
||||
}
|
||||
|
||||
return &Config{
|
||||
Port: getEnv("PORT", "8093"),
|
||||
WhisperBinary: getEnv("WHISPER_BINARY", "./whisper.cpp/main"),
|
||||
WhisperModel: getEnv("WHISPER_MODEL", "./whisper.cpp/models/ggml-small.bin"),
|
||||
WhisperLanguage: getEnv("WHISPER_LANGUAGE", "zh"),
|
||||
MaxAudioSize: 10 * 1024 * 1024, // 10MB
|
||||
DashScopeAPIKey: getEnv("DASHSCOPE_API_KEY", ""),
|
||||
DashScopeModel: getEnv("DASHSCOPE_STT_MODEL", "gummy-chat-v1"),
|
||||
Port: getEnv("PORT", "8093"),
|
||||
WhisperBinary: getEnv("WHISPER_BINARY", "./whisper.cpp/main"),
|
||||
WhisperModel: getEnv("WHISPER_MODEL", "./whisper.cpp/models/ggml-small.bin"),
|
||||
WhisperLanguage: getEnv("WHISPER_LANGUAGE", "zh"),
|
||||
MaxAudioSize: 10 * 1024 * 1024, // 10MB
|
||||
DashScopeAPIKey: apiKey,
|
||||
DashScopeModel: offlineModel,
|
||||
DashScopeSTTRealtime: realtimeModel,
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user