feat: 持久化和 web 接口基础架构

This commit is contained in:
RockChinQ
2024-10-11 22:27:53 +08:00
parent 21f153e5c3
commit 7c3557e943
26 changed files with 462 additions and 22 deletions

View File

@@ -15,6 +15,9 @@ required_deps = {
"psutil": "psutil",
"async_lru": "async-lru",
"ollama": "ollama",
"quart": "quart",
"sqlalchemy": "sqlalchemy[asyncio]",
"aiosqlite": "aiosqlite",
}

View File

@@ -15,7 +15,7 @@ log_colors_config = {
}
async def init_logging() -> logging.Logger:
async def init_logging(extra_handlers: list[logging.Handler] = None) -> logging.Logger:
# 删除所有现有的logger
for handler in logging.root.handlers[:]:
logging.root.removeHandler(handler)
@@ -41,7 +41,8 @@ async def init_logging() -> logging.Logger:
stream_handler = logging.StreamHandler(sys.stdout)
log_handlers: logging.Handler = [stream_handler, logging.FileHandler(log_file_name)]
log_handlers: list[logging.Handler] = [stream_handler, logging.FileHandler(log_file_name)]
log_handlers += extra_handlers if extra_handlers is not None else []
for handler in log_handlers:
handler.setLevel(level)