add banbanmini backend
This commit is contained in:
47
talkingq-url/initialization.py
Normal file
47
talkingq-url/initialization.py
Normal file
@@ -0,0 +1,47 @@
|
||||
from services.registry import register_service
|
||||
from implementations.aliyun_asr import AliyunASR
|
||||
from implementations.volcano_llm import VolcanoLLM
|
||||
from implementations.minimax_tts import MiniMaxTTS
|
||||
from utils.logger import session_logger
|
||||
import os
|
||||
from config import settings
|
||||
from services.firmware_scanner import firmware_scanner
|
||||
|
||||
def init_directories():
|
||||
"""初始化必要的目录"""
|
||||
tts_audio_dir = os.path.join(settings.assets_dir, "tts_audio")
|
||||
os.makedirs(tts_audio_dir, exist_ok=True)
|
||||
session_logger.info("system", "initialization", f"TTS音频目录已初始化: {tts_audio_dir}")
|
||||
|
||||
firmware_dir = os.path.join(settings.assets_dir, "firmware")
|
||||
os.makedirs(firmware_dir, exist_ok=True)
|
||||
session_logger.info("system", "initialization", f"固件目录已初始化: {firmware_dir}")
|
||||
|
||||
async def check_database_initialization():
|
||||
"""检查数据库是否已初始化"""
|
||||
try:
|
||||
from database.connection import get_db_manager
|
||||
db_manager = await get_db_manager()
|
||||
session = await db_manager.get_session()
|
||||
await session.close()
|
||||
session_logger.info("system", "initialization", "数据库已初始化")
|
||||
except Exception as e:
|
||||
session_logger.error("system", "initialization", f"数据库未初始化,请检查配置: {str(e)}")
|
||||
raise Exception(f"数据库连接失败: {str(e)}")
|
||||
|
||||
async def scan_firmware_files():
|
||||
"""扫描固件文件并更新数据库"""
|
||||
try:
|
||||
await firmware_scanner.scan_firmware_files()
|
||||
except Exception as e:
|
||||
session_logger.error("system", "initialization", f"扫描固件文件失败: {str(e)}")
|
||||
|
||||
|
||||
async def register_services():
|
||||
init_directories()
|
||||
await check_database_initialization()
|
||||
await scan_firmware_files() # 添加扫描固件文件的步骤
|
||||
register_service("asr", "Aliyun", AliyunASR)
|
||||
register_service("llm", "Volcano", VolcanoLLM)
|
||||
register_service("tts", "MiniMax", MiniMaxTTS)
|
||||
session_logger.info("system", "initialization", "所有服务已注册")
|
||||
Reference in New Issue
Block a user