ai-chat-ui/server/utils/helpers.py
MT-Fire d8a6f696e7 refactor: 优化后端目录结构和代码组织
- 重构目录结构,将配置和日志模块分离到独立目录
- 创建 config/ 目录,统一管理平台配置和 API 密钥
- 创建 core/ 目录,集中管理日志系统功能
- 创建 database/ 目录,添加 SQLite 数据库初始化和管理
- 删除不必要的文件:测试文件、缓存文件、重复代码文件
- 更新所有导入路径,确保模块引用正确

主要变更:
- config.py → config/settings.py
- utils/logger.py → core/logger.py
- init_logging.py → core/init.py
- 删除 logging.conf(配置已整合到代码中)
- 新增 database/__init__.py 提供数据库连接管理

改进点:
- 更清晰的模块划分,便于维护和扩展
- 避免命名冲突(logging 模块与 Python 标准库冲突)
- 统一的配置和日志管理接口
2026-03-08 17:12:08 +08:00

53 lines
1.3 KiB
Python

"""
通用工具函数
"""
import json
import os
import uuid
from datetime import datetime
from typing import Dict
from core import (log_chat_interaction, log_error_detail, log_request_info,
log_response_info)
def get_current_timestamp():
"""获取当前时间戳"""
return int(datetime.utcnow().timestamp())
def generate_unique_id():
"""生成唯一ID"""
return str(uuid.uuid4())
def format_api_response(
content: str, conversation_id: str = None, model: str = "qwen-plus"
):
"""格式化API响应"""
return {
"id": generate_unique_id(),
"conversationId": conversation_id or generate_unique_id(),
"content": content,
"model": model,
"createdAt": get_current_timestamp(),
}
def log_request(method: str, path: str, client_ip: str = "unknown"):
"""记录请求日志"""
log_request_info(method, path, client_ip)
def log_response(status_code: int, process_time: float):
"""记录响应日志"""
log_response_info(status_code, process_time)
def extract_delta_content(full_content: str, previous_content: str) -> str:
"""提取增量内容"""
if len(full_content) > len(previous_content):
return full_content[len(previous_content) :]
return ""