46 lines
1.5 KiB
Python
46 lines
1.5 KiB
Python
from pydantic_settings import BaseSettings
|
|
from pydantic import ConfigDict
|
|
|
|
class Settings(BaseSettings):
|
|
server_host: str
|
|
server_port: int = 8080
|
|
asr_provider: str = "Aliyun" # 固定使用阿里云
|
|
llm_provider: str = "Volcano" # 固定使用火山引擎
|
|
tts_provider: str = "MiniMax" # 固定使用MiniMax
|
|
|
|
volcano_api_key: str
|
|
volcano_base_url: str
|
|
volcano_model_id: str = "ep-20250226121739-jkd24" # Doubao-1.5-pro-32k
|
|
volcano_app_id: str = "7872932045"
|
|
volcano_access_token: str
|
|
|
|
minimax_api_key: str = ""
|
|
minimax_group_id: str = ""
|
|
minimax_base_url: str = "https://api.minimax.chat/v1/t2a_v2"
|
|
|
|
aliyun_api_key: str
|
|
aliyun_vocabulary_id: str
|
|
|
|
assets_dir: str = "assets"
|
|
session_timeout: int = 600
|
|
conversation_history_timeout: int = 1800
|
|
max_conversation_history: int = 5
|
|
cleanup_interval: int = 300
|
|
llm_first_token_timeout: int = 5 # LLM首个token的超时时间(秒)
|
|
tts_request_timeout: int = 5 # TTS单次请求超时时间(秒)
|
|
selected_role_key: str
|
|
|
|
db_host: str = "mysql"
|
|
db_port: int = 3306
|
|
db_user: str = "talkingq"
|
|
db_password: str
|
|
db_name: str = "talkingq"
|
|
db_echo: bool = False # 是否打印SQL语句
|
|
|
|
admin_api_key: str # 用于设备注册的管理员API密钥
|
|
client_api_key: str # 用于微信小程序客户端验证的API密钥
|
|
|
|
model_config = ConfigDict(extra="ignore", env_file=".env")
|
|
|
|
settings = Settings()
|