作者:蔡奇栩(北京大学计算语言所)
应 DataFlow 团队的邀请,这篇文章想和大家分享自己从 DataFlow 开源项目的所感所学。
8月份的时候,我和北京大学计算语言所与信息管理学院的范西莎同学,以及北京航空航天大学的关浩轩同学一起组队参加了 LIC·2025 语言与智能技术竞赛,而参与这个比赛其实是一个意外又有趣的巧合。我就读的语言所是一个非常有趣的研究机构,是最早的文理结合的研究机构,以前所里研究
赛事简介
作为中文自然语言处理(NLP)领域内最权威、最热门的赛事之一,LIC·2025由中国计算机学会、中国中文信息学会联合主办,百度公司承办,大赛围绕文心4.5系列开源模型,联合人民日报健康客户端、智源研究院、TVB 三个行业引领者,开放高价值真实场景数据集,共同探索大模型的无限可能,推动 AI 技术在关键领域的深度应用。
我们参加的是这个比赛的赛道二:将 OpenSeek 这个智源的开源数据集里面的思维链进行数据增强。这个赛题看似非常简单,其实实际尝试之后,我们发现自己还是 Too Young Too Navie。
赛题挑战:旨在通过对智源研究院的公开数据集 OpenSeek 进行 CoT 改造和模型微调,探索增强大模型逻辑推理能力的前沿方法,为科研领域贡献更强大的微调数据集和大模型工具。
遇到的问题与挑战
我们一开始的方案是希望尝试将思维链拓展并且增强为带有”Reflection“的反思数据,实际尝试之后发现有非常多的问题,比如格式不规范,比如反思的内容出现重复等等… 看似是非常多的问题,其实也可以总结为:生成的数据质量控制并不稳定。
当时跟团队同学们聊天,随便加点反思数据,然后再加一点分而治之,再加一点 rewrite 增强多样性,再把原来的 CoT 数据弄长一点。感觉随口便可相处大量改进数据集的方案,因为都曾在各种论文中看过,然而自己跑起来才知道:“纸上得来终觉浅,绝知此事要躬行” 。 一旦模型输出的质量不稳定,这全都是纸上谈兵罢了。
选择 DataFlow
关于怎么知道 DataFlow,我的印象非常深刻,当时是凌晨 5 点多,我在学校南门外面的便利蜂吃泡面,手机上面刷到了关于 DataFlow 的介绍,标题就叫:“还在为 AI 数据发愁?” 。当时我心想,推荐算法推荐的太准了。焦虑的我,还买了一杯咖啡来冲兑困意,边喝边看 DataFlow 的推文介绍。
苦涩的味道顺着口腔流入食道,但是兴奋的喜悦感直冲脑门。我觉得我找到我想找的东西了,感觉就是这个!
DataFlow 是北大张文涛老师团队开发的开源数据准备平台。它全面支持文本模态的数据治理,同时也支持从PDF、网页、音频中提取并转译为文本内容。 经过治理的数据可供大语言模型(LLM)的预训练(Pre-training)、有监督微调(Supervised Finetuning)、强化学习微调(Reinforcement Finetuning )使用。
好的数据质量管理就像是我手边的咖啡,经过严格的采摘、清洗、烘焙、研磨,每一步都是工业化的复杂流程。
而 DataFlow 在我心里就是这么一个数据加工厂,但是使用起来的感觉却像是一台精密制作的咖啡机,你只需要提供模型的 API 接口,其他所有事情,交给 DataFlow 来完成。
实践过程
在 DataFlow 框架柱中,我们针对 OpenSeek-Math 类别的数据集,使用 DataFlow 提供的算子和 DataFlow Reasoning Pipeline(强推理 Pipeline),搭建了数学推理数据生成流水线(Math Reasoning Chain Synthesis Pipeline)。流水线主要先是检测低质量数学问题,其次合成补充部分高质量数学问题。之后合成高质量数学推理链,并进行质量过滤。
评估包括了:答案准确性校验, 长度控制,格式校验,文本流畅性等等。
DataFlow Reasoning Pipeline 的优势主要有三点:
- 自我研发的数据问题合成 & 质量评估工具,保证超过90%的Question合成准确率
- 自研的长推理数据链合成和X-Verify工具,通过严格校正确保推理链的正确性。
- 自研的伪答案生成器,对于没有标准答案的数据,我们通过Majority Voting的方式,用多智能体的方式获取答案。
我们使用 ERNIE-4.5 基座模型,模块化控制每一步思维链数据的生成与验证,仅用14%高质量精选OpenSeek-Math 数据微调 ERNIE-4.5-21B-A3B,来带 23 个 Math benchmark 的性能提升,诠释了“数据质量远胜于数量”的核心理念。
经过这一系列的强推理 Pipeline,我们获得了智源LIC强推理挑战赛的第一名。
DataFlow 使用心得
接下来还想跟大家分享一下 DataFlow 这个框架的几个特点:
- 简单易用:DataFlow 的使用方法只需要修改文件路径和模型路径(或者 API) 即可。不论是 cpu 环境,api 环境,gpu 环境 都有现成的搭建好的 pipeline,一键使用轻松上手。
- 清晰可控:DataFlow 使用模块化的算子来控制数据质量管理的每一个流程,包括筛选、生成、评估,每一个算子都只需要 import,然后在 forward 的环节中 添加即可,每一个了解 Python的人都可以非常清楚的看懂,数据的处理逻辑。并且数据在生成的过程中,每一个中间 step 都可以在指定的文件夹底下看到,可以清洗的比对每一个 step 的清洗前和清洗后。
- 质量高:通过 DataFlow 清洗的数据集,在比赛中的 23 个数学 Benchmark 都获得了全方位的性能提升,这是我这次参赛的经验分享,未来希望 DataFlow 这个项目能够成长并且拓展到许多垂类专业领域,不论是教育、医疗、工业生产,有着更广阔的类别:多模态、Agentic 设计。通过数据的维度,全方位的助力学界、业界 AI 的发展。
DataFlow 的神仙团队
在这里我想特别感谢 DataFlow 团队的梁昊学长和程宇学长,当然还有交流群里面热心回复大家问题的 DataFlow 团队成员,当时的我由于对框架使用的不熟悉,有许多非常简单的问题,但是他们依然愿意热心的解答;我觉得参加比赛获得一等奖有一半的功劳都是归功于 DataFlow 团队。甚至我认为,DataFlow 的框架其实适用于非常多各类比赛活动,包括但不限于数据清洗用于微调,构建丰富多样性的文本等等,我相信了解 DataFlow 就是掌握了一个数据质量控制的利器。
DataFlow 是一个非常具有潜力的开源项目,现在还在成长中,非常欢迎社区的所有同学们一起使用 DataFlow,一起参与开源社区的构建,在 AI 的知识海洋中扬帆起航(Flow 起来!)。
GitHub 链接:github.com/OpenDCAI/Da…