# data_generator **Repository Path**: qingge_dada/data_generator ## Basic Information - **Project Name**: data_generator - **Description**: 本项目是一个专门用于生成国学与非物质文化遗产(非遗)科普数据的系统,采用Alpaca格式,通过大模型API生成高质量的文化科普内容。 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-11-03 - **Last Updated**: 2025-11-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 国学非遗数据生成与验证系统 这是一套完整的国学与非物质文化遗产数据生成和验证系统,通过大模型API自动生成符合Alpaca格式的问答数据,并提供多维度验证功能。用户只需输入API密钥即可进行数据批量合成和检查,通过修改提示词即可合成不同行业的数据。 ## 系统概述 本系统包含两个核心组件: 1. **数据生成器** (`data_generator.py`) - 基于大模型API批量生成国学非遗问答数据 2. **数据验证器** (`data_validator.py`) - 多维度验证生成数据的质量和准确性 ## 功能特点 - **Alpaca格式生成**:生成符合Alpaca格式的问答数据 - **多类别支持**:涵盖6类非遗和8类国学内容 - **多线程并发处理**:支持多线程并发生成和验证数据 - **多维度验证**:从主题符合性、格式规范、数据完整性、内容准确性与价值、语言表达清晰度五个维度评估数据质量 - **SQLite存储**:使用SQLite数据库存储和管理数据 - **进度跟踪**:实时显示生成和验证进度 - **数据导出**:支持导出验证结果为JSON格式 ## 安装与使用 ### 环境要求 - Python 3.7+ - 依赖包:`requests`, `sqlite3`, `python-dotenv` ### 安装步骤 1. 克隆项目到本地: ```bash git clone <项目地址> cd FeiYi ``` 2. 安装依赖: ```bash pip install -r requirements.txt ``` 3. 配置API密钥: - 创建`.env`文件 - 添加`MINIMAX_API_KEY=your_api_key_here` ### 使用流程 #### 第一步:生成数据 运行数据生成器,批量生成国学非遗问答数据: ```bash python data_generator.py --count 1000 --concurrent --max-workers 5 ``` 参数说明: - `--count`: 要生成的数据条数(默认1000) - `--concurrent`: 启用并发模式 - `--max-workers`: 并发线程数(默认5) #### 第二步:验证数据 运行数据验证器,对生成的数据进行多维度验证: ```bash python data_validator.py --action validate --concurrent --max-workers 5 ``` 其他验证命令: - 查看验证统计:`python data_validator.py --action stats` - 重置验证结果:`python data_validator.py --action reset` - 导出不符合标准的数据:`python data_validator.py --action export --output results.json` ## 数据类别 ### 非遗类别 1. 传统节日习俗 2. 传统工艺制作 3. 传统文化知识 4. 非遗技艺传承 5. 传统民俗文化 6. 传统养生文化 ### 国学类别 1. 传统礼仪 2. 节气养生 3. 职场沟通 4. 成语应用 5. 经典短句 6. 诗词鉴赏 7. 历史典故 8. 哲学思想 ## 自定义数据生成 要生成不同行业的数据,只需修改`config.py`中的提示词模板: ```python # 修改提示词以适应不同行业 CUSTOM_PROMPT = """ 请生成符合[你的行业]领域的问答数据... """ ``` ## 项目结构 ``` FeiYi/ ├── data_generator.py # 数据生成器 ├── data_validator.py # 数据验证器 ├── config.py # 配置文件 ├── database.py # 数据库操作 ├── api_client.py # API客户端 ├── requirements.txt # 依赖包列表 ├── .env # 环境变量(需自行创建) ├── README.md # 项目说明文档 └── chinese_heritage_data.db # SQLite数据库文件(运行后生成) ``` ## 配置说明 ### API配置 在`config.py`中配置API参数: ```python API_CONFIG = { "api_key": "your_api_key_here", "base_url": "https://api.minimaxi.com/v1", "model": "MiniMax-M2", "max_tokens": 1024, "temperature": 1.0, "top_p": 0.95, "top_k": 20, "frequency_penalty": 0.0, "presence_penalty": 0.0 } ``` ### 速率限制配置 ```python RATE_LIMIT = { "rpm_limit": 60, # 每分钟请求数限制 "tpm_limit": 30000 # 每分钟令牌数限制 } ``` ## 未来计划 1. **Web界面开发**:提供更直观的Web界面,实现更自动化的操作流程 2. **多模型支持**:支持不同大模型API密钥配置,用户可选择不同模型进行数据生成和验证 3. **数据可视化**:添加数据统计和可视化功能,更直观展示数据质量 4. **批量管理**:增强批量数据管理功能,支持分批处理大规模数据集 ## 注意事项 1. **API密钥安全**:请妥善保管API密钥,不要提交到版本控制系统 2. **速率限制**:系统已实现速率限制控制,但请注意不要同时运行多个实例 3. **数据准确性**:生成的内容基于大模型,建议人工审核关键信息 4. **资源消耗**:大量数据生成会消耗API配额,请合理规划使用量 ## 故障排除 ### 常见问题 1. **API调用失败** - 检查网络连接 - 验证API密钥是否有效 - 确认API配额是否充足 2. **数据库错误** - 检查数据库文件权限 - 确认SQLite库是否正确安装 3. **并发处理问题** - 适当降低并发线程数 - 检查系统资源使用情况 ## 示例数据 ### 示例1:传统节日习俗 ```json { "instruction": "解释春节贴春联的寓意", "input": "小年时,爷爷买了副"春风入喜财入户,岁月更新福满门"的春联,让小明帮忙贴,这副春联有什么含义?", "output": "这副春联通过"春风""岁月更新"呼应春节辞旧迎新的主题,"财入户""福满门"则寄托了对新年财运亨通、福气满满的期盼。春联用对仗工整的吉祥语,既营造节日氛围,也传递了人们对美好生活的向往,是春节"纳福驱邪"传统的体现。" } ``` ### 示例2:传统工艺制作 ```json { "instruction": "说明苏绣的常用针法和题材特点", "input": "奶奶收藏了一幅苏绣《牡丹图》,针脚细密像真花一样,苏绣常用什么针法?偏爱哪些题材?", "output": "苏绣常用平针、乱针、打籽针等针法,其中平针绣线条流畅,适合表现花卉细节;乱针绣色彩丰富,能模拟油画效果。题材多以江南风光(如园林、水乡)、花鸟(如牡丹、鸳鸯)为主,像《牡丹图》常用平针勾勒花瓣,凸显细腻灵动,体现"精、细、雅、洁"的风格。" } ``` 清宇云图(深圳)开源出品