我的数据清洗能手小浣熊
![我的数据清洗能手小浣熊](https://static001.geekbang.org/infoq/95/95abfd7d899f5cdcea80757543180a87.png)
【背景介绍】
我们处在信息化时代,每天都有海量的数据生成,而 AI 的表现最终体现在它所学习的数据量以及可以调用的资源的数量。大模型知识的实时性和无法调用私有知识库的局限性,RAG(Retrieval Augmented Generation)技术应用而生,而 RAG 的效果依赖知识库的质量,对于海量数据,清洗是一个巨大的工程,要耗费大量人力财力。
从去年开始华为已经在推进头部应用开始适配纯血鸿蒙系统,到了年初突然开始加速,先是 TOP100,后面又是 TOP5000,对于一个新系统,前期不管是对于平台侧还是应用侧注定不是一帆风顺的:资料缺失、API 不稳定、缺少参考呢。好在经过半年的探索和积累,平台能力也逐步完善,各个 APP 厂商也积累了不少经验,所以产生了一个把这些遇到的问题搜集起来,做成知识库集成到 AI 智能体帮助后续开发者的想法。
收集到六千条有效问答数据后,需要对问答数据再次清洗和加工才可以成为高质量输入,上传系统做知识切片。之前都是把要处理的问题描述输入给 ChatGPT,让 ChatGPT 生成脚本后复制到本地,再执行脚本观察效果,这样调试不是很方便,每次赋值粘贴效率很低,而且设计多个操作效果不是很理想。
偶然机会接触了小浣熊智能助手,一经使用便爱不释手。
【小浣熊家族介绍】
![](https://static001.geekbang.org/infoq/47/47b5b34e5b7e2879983328ebf5fd01d8.png)
小浣熊是商汤科技推出的智能体工具,不仅有代码助手,还有办公助手,办公助手可以提供 json、excel 数据的分析、图标绘制、趋势总结、反思等。可以直接将要操作的 Excel 拖入进去,输入提示词自动生成 python 操作 excel,操作后可以直接下载修改后的 Excel,对于清洗数据的场景特别适合。
【清洗目标】
原始数据是包含问题标题、问题详情、答案、问题来源四列的 6420 条问答数据,这些数据中有下面这些问题需要处理:
有的答案是空的,其实问题详情的内容就是答案,需要把答案为空的表格填充成问题详情内容;
有的智能体平台要求问题最多 500 字符,答案最多 800 字,需要针对这个平台筛选出一份问题小于 500,答案小于 800 的两列表格数据文件;
有的智能体平台要求答案最多 2000 字符,针对这个平台,需要筛选一份答案字符数不超过 2000 的两列表格数据文件;
有的智能体平台对问题和答案字符数长度没有限制,理想的结果是问题标题一列,答案列的格式为:
![](https://static001.geekbang.org/infoq/51/518e752741e5a88ba273389cc1c40742.png)
【清洗过程】
1、将待处理文件拖到办公小浣熊平台
![](https://static001.geekbang.org/infoq/f7/f74c62a4766b028000a04292f3df21f0.png)
拖入上传完成后等待加载,加载成功后右侧会出现拖入文件的预览。
2、处理空答案
输入命令:如果第三列answer列为空,则将第二列qdetail列的输入拷贝到第三列
:小浣熊会帮助我们自动生成代码并执行:
执行完成后我们可以统计修改的行:处理前有多少行answer为空的数据?
,小浣熊帮助我们写代码统计出有 3 行被处理:
3、清除第二列第三列中无效的链接数据
第二列第三列中是带有 html 标签的数据,其中有些数据是包含 a 标签,且带有 href 的:<a href="https://link.wodekouwei.com/?dfda=zbDYEjW66Op%2BjIzhCjZbkg%3D%3D.3oWqB%2Bahn1PyCqp5bW%2BZgKBrtP7ChKNDdKvLn5Osre9SKasC24ZQuM%2BYgibRa28gJXkkOyGR5%2BRnaaMZ1xUao8or5d3Unv%2FGQITMukfevqvVZmwv%2Fy2GuIf9V%2BOvxrORXGkOf71vbsjcfQwmgbE8eA%3D%3D" rel="nofollow" target="_blank">https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/account-get-phonenumber-0000001601012050</a>
a 标签修饰的内容是实际的地址,a 标签 href 地址其实是无效地址,需要判断如果包含 a 标签,且 a 标签中 href 值包含 wodekouwei.com 的话需要将 a 标签移除,只保留 a 标签修饰的内容。
修改确认有第三列多少包含 wodekouwei.com 的行:
![](https://static001.geekbang.org/infoq/64/643a57c23738f7852da08c9988c11b57.png)
有 2976 行,接着给小浣熊输入内容:
小浣熊生成代码:
![](https://static001.geekbang.org/infoq/6f/6f62a24195309bfb94aa84675f18fc81.png)
小浣熊生成的代码是基于正则匹配的,发现修改后不能全部匹配,尝试修改提示词:
小浣熊提供了基于 Beautiful Soup 的解析规则解析:
![](https://static001.geekbang.org/infoq/26/26305faa1555afb8778e055b6616361e.png)
查看被修改了多少列:
![[我的数据清洗能手小浣熊-7.png]]检测数据看到已经修改成功了。
4、筛选第三列字符数小于 2000 的所有行
输入筛选第三列字符数小于2000的所有行,并输出符号条件的行数
![](https://static001.geekbang.org/infoq/60/60dbc6a6b17a2722749f4689cea3326d.png)
5、生成符合格式的列
新增一列 new_answer,格式为:问题详情:第二列内容
问题方案:第三类内容
问题详情:第四列内容
生成代码:
生成数据预览:
![](https://static001.geekbang.org/infoq/dc/dc4b97feea59277c24a9761669f2ab76.png)
【借助小浣熊清洗完成效果】
最终清洗完成后生成的新数据:
![](https://static001.geekbang.org/infoq/fa/fa15d2983bc4745386d2afcc750861b8.png)
办公小浣熊操作视频分享:
【总结】
AI 工具极大的提升我们的效率,借用王坚院士的不等式:
与现有的已有的基础模型相比,应用做的还不够好;
以现有的算力能力,基础模型做的还不够好;
以现有的电力,算力还不够。在不等式的最左边,我们的应用提升空间还很大,像小浣熊在办公层面的应用尝试,创新角度讲是创造性的,非常开心有机会接触到这么好用的产品。
在一个心得是,在使用 AI 应用的时候,我们要保持一定的耐心,把它当人看,如果没有解决我们的问题,我们要尝试换个角度问。
最后再分享一下我清洗完数据做成知识库后的智能体的效果,是一个鸿蒙应用开发相关的知识库:https://www.coze.cn/s/i6E4uNpm/,感谢小浣熊帮助我高效的完成了这个作品。
版权声明: 本文为 InfoQ 作者【轻口味】的原创文章。
原文链接:【http://xie.infoq.cn/article/d6cdeb1fabb6f6ce2039d5365】。未经作者许可,禁止转载。
评论