69 lines
2.6 KiB
Python
69 lines
2.6 KiB
Python
import os
|
|
from pathlib import Path
|
|
|
|
# 基础路径配置
|
|
BASE_DIR = Path(__file__).parent.parent.parent
|
|
UPLOAD_DIR = BASE_DIR / "uploads"
|
|
AUDIO_DIR = UPLOAD_DIR / "audio"
|
|
MARKDOWN_DIR = UPLOAD_DIR / "markdown"
|
|
|
|
# 文件上传配置
|
|
ALLOWED_EXTENSIONS = {".mp3", ".wav", ".m4a", ".mpeg", ".mp4"}
|
|
ALLOWED_IMAGE_EXTENSIONS = {".jpg", ".jpeg", ".png", ".gif", ".webp"}
|
|
MAX_FILE_SIZE = 100 * 1024 * 1024 # 100MB
|
|
MAX_IMAGE_SIZE = 10 * 1024 * 1024 # 10MB
|
|
|
|
# 确保上传目录存在
|
|
UPLOAD_DIR.mkdir(exist_ok=True)
|
|
AUDIO_DIR.mkdir(exist_ok=True)
|
|
MARKDOWN_DIR.mkdir(exist_ok=True)
|
|
|
|
# 数据库配置
|
|
DATABASE_CONFIG = {
|
|
'host': os.getenv('DB_HOST', 'localhost'),
|
|
'user': os.getenv('DB_USER', 'root'),
|
|
'password': os.getenv('DB_PASSWORD', ''),
|
|
'database': os.getenv('DB_NAME', 'imeeting'),
|
|
'port': int(os.getenv('DB_PORT', '3306')),
|
|
'charset': 'utf8mb4'
|
|
}
|
|
|
|
# API配置
|
|
API_CONFIG = {
|
|
'host': os.getenv('API_HOST', '0.0.0.0'),
|
|
'port': int(os.getenv('API_PORT', '8000')),
|
|
'cors_origins': os.getenv('CORS_ORIGINS', 'http://localhost:5173').split(',')
|
|
}
|
|
|
|
# 七牛云配置
|
|
QINIU_ACCESS_KEY = os.getenv('QINIU_ACCESS_KEY', 'A0tp96HCtg-wZCughTgi5vc2pJnw3btClwxRE_e8')
|
|
QINIU_SECRET_KEY = os.getenv('QINIU_SECRET_KEY', 'Lj-MSHpaVbmzpS86kMIjmwikvYOT9iPBjCk9hm6k')
|
|
QINIU_BUCKET = os.getenv('QINIU_BUCKET', 'imeeting')
|
|
QINIU_DOMAIN = os.getenv('QINIU_DOMAIN', 't0vogyxkz.hn-bkt.clouddn.com')
|
|
|
|
# Dashscope (Tongyi Qwen) API Key
|
|
QWEN_API_KEY = os.getenv('QWEN_API_KEY', 'sk-c2bf06ea56b4491ea3d1e37fdb472b8f')
|
|
|
|
# LLM配置 - 阿里Qwen3大模型
|
|
LLM_CONFIG = {
|
|
'model_name': os.getenv('LLM_MODEL_NAME', 'qwen-plus'),
|
|
'api_url': os.getenv('LLM_API_URL', 'https://dashscope.aliyuncs.com/api/v1/services/aigc/text-generation/generation'),
|
|
'max_tokens': int(os.getenv('LLM_MAX_TOKENS', '2000')),
|
|
'temperature': float(os.getenv('LLM_TEMPERATURE', '0.7')),
|
|
'top_p': float(os.getenv('LLM_TOP_P', '0.9')),
|
|
'system_prompt': """你是一个专业的会议记录分析助手。请根据提供的会议转录内容,生成简洁明了的会议总结。
|
|
|
|
总结应该包括以下几个部分:
|
|
1. 会议概述 - 简要说明会议的主要目的和背景
|
|
2. 主要讨论点 - 列出会议中讨论的重要话题和内容
|
|
3. 决策事项 - 明确记录会议中做出的决定和结论
|
|
4. 待办事项 - 列出需要后续跟进的任务和责任人
|
|
5. 关键信息 - 其他重要的信息点
|
|
|
|
要求:
|
|
- 保持客观中性,不添加个人观点
|
|
- 使用简洁的中文表达
|
|
- 按重要性排序各项内容
|
|
- 如果某个部分没有相关内容,可以说明"无相关内容"
|
|
- 总字数控制在500字以内"""
|
|
} |