CleanTool是EduChat项目配套的数据预处理工具,其标准操作流程如下:
- 输入准备:将原始对话数据保存为JSON格式,每条记录应包含
instruction
(指令)、input
(输入)、output
(输出)三个字段 - 基础清洗:执行命令
python clean_tool.py --input data.json --output cleaned_data.json --gpu True
,工具会自动:- 移除完全重复的样本(基于MD5哈希值)
- 过滤低质量数据(通过N-gram重叠率和困惑度检测)
- 标准化文本格式(统一全角/半角符号等)
- 高级选项:
- 领域过滤:添加
--domain edu
参数可保留教育相关度高的样本 - 长度控制:
--min_length 20
移除过短响应 - 质量阈值:
--quality_threshold 0.7
调整判定标准(0-1范围)
- 领域过滤:添加
经实际验证,清洗后的数据可使模型训练效率提升30%,在数学解题等需要严谨性的任务上错误率降低15%。对于非技术用户,项目仓库提供了预设好的清洗规则模板可直接套用。
本答案来源于文章《EduChat:开源教育对话模型》