# quiz-format **Repository Path**: cenzimo/quiz-format ## Basic Information - **Project Name**: quiz-format - **Description**: 使用 AI 格式化题目信息 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-12-10 - **Last Updated**: 2025-12-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Quiz Formatter AI ## 项目简介 这是一个基于AI的题库格式化工具,可以将题目数据转换为结构化的Markdown、HTML或JSON格式。支持使用OpenAI、DeepSeek等AI模型对题目内容进行智能优化,提供本地和云端两种部署方案。 ## 主要功能 - 支持多种输出格式(Markdown/HTML/JSON) - 提供AI智能优化功能 - 支持OpenAI、DeepSeek等AI模型 - 提供内存、文件、Redis三种缓存方案 - 包含同步和异步批量处理能力 - 提供丰富的API接口 - 支持自定义模板 ## 环境要求 - Python 3.10 - Docker (可选) - Redis (可选) ## 安装部署 ### 本地运行 1. 克隆项目 ```bash git clone https://gitee.com/cenzimo/quiz-format cd quiz-formatter-ai-v2 ``` 2. 安装依赖 ```bash pip install -r requirements-ai.txt ``` 3. 启动服务 ```bash python -m src.api.ai_api ``` ### Docker部署 1. 构建镜像 ```bash docker build -t quiz-formatter-ai . ``` 2. 运行容器 ```bash docker run -p 8000:8000 quiz-formatter-ai ``` ## 使用方法 服务启动后,访问 http://localhost:8000/docs 可查看API文档 ### 示例请求 ```bash curl -X POST "http://localhost:8000/api/format" \ -H "Content-Type: application/json" \ -d '{ "question": {"question": "1+1等于多少", "answer": "2"}, "output_format": "html", "optimize": true }' ``` ## 配置说明 配置文件位于 `config/ai_config.py`,可配置AI模型参数、缓存设置等 ## 缓存管理 支持三种缓存方式: - memory (内存缓存,默认) - file (文件缓存) - redis (Redis缓存) 可通过API接口 `/api/cache/stats` 查看缓存状态,`/api/cache/clear` 清除缓存 ## 模板管理 模板文件位于 `templates/` 目录下,支持HTML和Markdown格式 - HTML模板目录:`templates/html/` - Markdown模板目录:`templates/markdown/` - CSS样式目录:`templates/css/` 可通过 `/api/templates` 接口查看可用模板 ## API接口 主要API: - `/api` - 根路径 - `/api/health` - 健康检查 - `/api/format` - 格式化单个题目 - `/api/batch` - 批量格式化(同步) - `/api/batch/async` - 批量格式化(异步) - `/api/jobs/{job_id}` - 查询异步任务状态 - `/api/templates` - 获取模板列表 - `/api/cache/stats` - 查看缓存状态 - `/api/cache/clear` - 清除缓存 - `/api/export/{format}` - 导出示例文件 ## 性能监控 项目包含监控仪表板,可通过以下方式启动: ```bash python -m src.monitoring.dashboard ``` 访问 http://localhost:9090 查看监控数据 ## 开发测试 运行测试: ```bash pytest tests/ ``` ## 项目结构 ``` quiz-formatter-ai-v2/ ├── config/ # 配置文件 ├── data/ # 数据文件 ├── src/ # 源代码 │ ├── ai/ # AI模型相关实现 │ ├── api/ # API接口 │ ├── cache/ # 缓存实现 │ ├── formatter/ # 格式化核心逻辑 │ ├── logging/ # 日志配置 │ ├── monitoring/ # 监控模块 │ └── templates/ # 模板管理 ├── templates/ # 模板文件 │ ├── css/ # CSS样式 │ ├── html/ # HTML模板 │ └── markdown/ # Markdown模板 └── tests/ # 测试代码 ``` ## 许可证 本项目采用 MIT 许可证,请查看 LICENSE 文件了解详细信息。