Spaces:
Running
Running
File size: 1,296 Bytes
b064311 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
import uvicorn
import logging
from .app import app, key_manager
from .config import Config
# 获取日志记录器
logger = logging.getLogger("sora-api.main")
def init_app():
"""初始化应用程序"""
try:
# 密钥管理器已在app.py中初始化并加载完成
# 检查是否有可用的密钥
if not key_manager.keys:
logger.warning("未配置API key,将使用测试密钥")
key_manager.add_key(
key_value="Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IjE5MzQ0ZTY1LWJiYzktNDRkMS1hOWQwLWY5NTdiMDc5YmQwZSIsInR5cCI6IkpXVCJ9...",
name="默认测试密钥"
)
logger.info(f"API服务初始化完成,已加载 {len(key_manager.keys)} 个API key")
except Exception as e:
logger.error(f"API服务初始化失败: {str(e)}")
raise
def start():
"""启动API服务"""
# 初始化应用
init_app()
# 打印配置信息
Config.print_config()
# 启动服务
logger.info(f"启动服务: {Config.HOST}:{Config.PORT}")
uvicorn.run(
"src.app:app",
host=Config.HOST,
port=Config.PORT,
reload=Config.VERBOSE_LOGGING # 仅在调试模式下开启自动重载
)
if __name__ == "__main__":
start() |