feat: 实现数据库驱动的API配置管理和项目结构重组

## 新功能
- 实现管理后台API配置管理(OpenAI/Anthropic/Qwen)
- API配置保存到数据库,实时生效无需重启
- API密钥遮罩显示(前10位+后4位)
- 完整endpoint URL自动显示

## 后端改进
- 新增 config_service.py 用于加载数据库配置
- LLMService 支持动态配置注入,回退到环境变量
- 更新 exam.py 和 question.py 使用数据库配置
- 扩展 schemas.py 支持所有API配置字段

## 前端改进
- 重写 AdminSettings.jsx 增强UI体验
- API密钥显示/隐藏切换
- 当前使用的提供商可视化标识
- 移除"需要重启"的误导性提示

## 项目结构重组
- 移动所有脚本到 scripts/ 目录
- 移动所有文档到 docs/ 目录
- 清理 Python 缓存文件

🤖 Generated with Claude Code

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-12-01 19:24:12 +08:00
parent 0ea8e5aa1e
commit a01f3540c5
47 changed files with 1051 additions and 129 deletions

64
docs/START_HERE.txt Normal file
View File

@@ -0,0 +1,64 @@
==========================================
QQuiz 快速启动指南 (3步完成)
==========================================
【第1步】配置 OpenAI API Key
-------------------------------------------
1. 双击运行: quick_config.bat
2. 会自动打开记事本,找到这一行:
OPENAI_API_KEY=sk-your-openai-api-key-here
3. 将 "sk-your-openai-api-key-here" 替换为你的真实 API Key
4. 保存并关闭记事本
如果没有 API Key可以
- 去 https://platform.openai.com/api-keys 创建
- 或者暂时使用测试 Key功能受限
【第2步】启动系统
-------------------------------------------
双击运行: auto_setup_and_run.bat
脚本会自动:
✓ 检查 Python 和 Node.js
✓ 创建数据库
✓ 安装所有依赖
✓ 启动后端和前端
整个过程 3-5 分钟,请耐心等待
【第3步】访问系统
-------------------------------------------
浏览器打开: http://localhost:3000
默认账户:
用户名: admin
密码: admin123
【如果遇到问题】
-------------------------------------------
1. PostgreSQL 密码
- 脚本会询问 PostgreSQL 管理员密码
- 如果是首次安装,密码可能是你安装时设置的
- 常见默认密码: postgres 或 root
2. 数据库连接失败
- 确保 PostgreSQL 服务正在运行
- 打开"服务"查看 postgresql 服务状态
3. 端口被占用
- 3000/8000 端口可能被占用
- 关闭占用端口的程序重试
【测试数据】
-------------------------------------------
创建题库时可以上传:
test_data/sample_questions.txt
==========================================
准备好了吗现在开始第1步
==========================================