本地千万级 XLSX/CSV 多系统客户数据处理实战:用 AI 工作流零代码、零 SQL 完成表头归一化、相同客户识别
今天分享一个多系统客户数据处理的实战案例:对多个不通来源的原始客户表完成清洗、标题统一,然后合并,并通过手机号、邮箱识别相同客户。
这里要介绍是小白都能用的AI 工作流方案:
不用写 Python,也不用懂 SQL,直接在本地电脑上完成千万级 XLSX/CSV 多系统客户数据的清洗、表头归一化、相同客户识别和结果输出。
二、案例需求分析
有三张不同渠道的用户表,数据量在千万级别,如下:
- `CRM客户表.csv`(CRM_ID、姓名、手机、邮箱、地址、来源、录入日期)— 200万行
- `电商客户表.csv`(EC_ID、买家昵称、手机号、email、收货地址、平台、注册时间)— 500万行
- `门店会员表.csv`(会员ID、会员姓名、会员卡号、绑定手机、门店、开卡日期)— 100万行
本案例就是要统一3张表的用户信息, 并寻找相同客户。主要经过下面4个步骤。
1. 清洗数据
清洗数据就是将一些带有脏数据,格式有问题的数据都清洗成统一的, AI 工作流内置了 Python Agent,通过提示词就能实现任意清洗逻辑,如下:
1. "手机"统一为11位数字,去除+86、空格、横线等干扰字符
2. "邮箱"统一转为小写
3. "姓名"去除前后空格
4. "录入日期"统一为 yyyy-MM-dd 格式
2. 统一表头
每张表的表头不一样,我们需要将三张表的表头统一成:
源ID、姓名、手机、邮箱、地址、来源系统、录入时间
以便能够合并成一张大表,后面进行SQL处理。
如下,CRM客户表,电商客户表,门店会员表 统一表头的结果:



3. 合并
将上面统一后的表头横向叠加合并就行了, AI 工作流内置了SQL Agent, 直接通过下面描述,就可以合并了,如下:
"CRM客户标准表、电商客户标准表、门店会员标准表",按相同字段顺序上下拼接
4. 找相同用户
客户数据来自不同系统,同一个客户往往会在 CRM、电商、门店会员表里各出现一次,虽然来源不同,但手机号或者邮箱可能是一样的。
AI 工作流内置了 SQL Agent,直接通过提示词就可以完成这一步处理,如下:
基于合并后的表,新增"统一客户ID"字段,取值条件:只要两条记录手机号相同,或者邮箱相同,就将这两条记录归入同一个客户分组,并写入同一个统一客户ID
这样系统就得到了完整准确的唯一用户ID了。 规则就是:
- 手机号不同,邮箱相同的数据 属于同一个客户。
- 邮箱不同,手机号相同的也属于同一客户。
二、案例要完成的任务提示词
这个提示词就是案例需要完成的任务,直接用于配置到工作流智能体里面。
需要说明一点: 提示词不一定非要写成固定模板 。只要表达得 清晰 、 明确 、 简洁 ,让人一眼能看懂要做什么、按什么顺序做、最后输出什么结果,就可以了。
本次案例整理出的提示词如下:
整体要求:合并三个系统的客户数据,生成统一客户主数据:
第一步 - 清洗CRM客户表:
1. "手机"统一为11位数字,去除+86、空格、横线等干扰字符
2. "邮箱"统一转为小写
3. "姓名"去除前后空格
4. "录入日期"统一为 yyyy-MM-dd 格式
第二步 - 清洗电商客户表:
1. "手机号"统一为11位数字,去除+86、空格、横线等干扰字符
2. "email"统一转为小写
3. "买家昵称"去除前后空格
4. "注册时间"统一为 yyyy-MM-dd 格式
第三步 - 清洗门店会员表:
1. "绑定手机"统一为11位数字,去除+86、空格、横线等干扰字符
2. "会员姓名"去除前后空格
3. "开卡日期"统一为 yyyy-MM-dd 格式
第四步 - 统一CRM客户表字段:
1. 将字段名统一为:CRM_ID -> 源ID,来源 -> 来源系统,录入日期 -> 录入时间
2. 保留字段:源ID、姓名、手机、邮箱、地址、来源系统、录入时间
第五步 - 统一电商客户表字段:
1. 基于"电商客户清洗表"
2. 将字段名统一为:EC_ID -> 源ID,买家昵称 -> 姓名,手机号 -> 手机,email -> 邮箱,收货地址 -> 地址,平台 -> 来源系统,注册时间 -> 录入时间
3. 保留字段:源ID、姓名、手机、邮箱、地址、来源系统、录入时间
4. 输出"电商客户标准表"
第六步 - 统一门店会员表字段:
1. 基于"门店会员清洗表"
2. 将字段名统一为:会员ID -> 源ID,会员姓名 -> 姓名,绑定手机 -> 手机,门店 -> 来源系统,开卡日期 -> 录入时间
3. 新增"邮箱"字段,值为空
4. 新增"地址"字段,值为空
5. 保留字段:源ID、姓名、手机、邮箱、地址、来源系统、录入时间
6. 输出"门店会员标准表"
第七步 - 生成统一客户池临时表:
1. CRM客户标准表、电商客户标准表、门店会员标准表按相同字段顺序上下拼接
2. 三张表的所有记录全部保留,不做删除
3. 输出"统一客户池临时表"
第八步 - 生成客户去重分组表:
1. 基于"统一客户池临时表",新增"统一客户ID"字段;只要两条记录手机号相同,或者邮箱相同,就将这两条记录归入同一个客户分组,并写入同一个统一客户ID
2. 输出"客户去重分组表"
三、落地实现:工作流配置
工作流是由多个智能体节点组成的,这个案例我们涉及到下面几个智能体:
- 文件助手: 获取磁盘的文件或目录。
- 内容清洗器: 专门用来做数据清洗的,只要输入清洗描述就可以对文件数据进行任意整理。
- 标题清洗器:通过提示词描述,对标题进行整理。
- 数据入库:将文件数据转成本地数据库,用于后面作SQL统计。
- 表统计: 对本地数据库表进行SQL统计,不需要写sql,只需要统计的描述就可以了。
- 报表导出: 对数据库表进行导出,支持导出csv,xlsx,HTML(可视化显示) 。
根据这几个智能体还有上面描述的提示词,我们就可以完成工作流的配置了。
1. 配置文件助手
”文件助手“ 可以用来获取磁盘上任意的一个或多个文件。打开DT-Bot工作流, 配置一个 “文件助手”智能体节点,描述原始数据文件位置,如图:
DT-Bot工作流,解决方案获取可以看文章末尾名片。

根据提示词描述,获取到了”CRM客户表.csv“原始表格,给后面智能体使用。
2. 配置内容清洗
“内容清洗器” 很强大,内部是通过python agent执行引擎处理的, 可以对文件进行任意数据整理,我们直接输入清洗提示词就可以了, 如图:

3. 标题清洗
CRM客户表的原标题如下:

我们需要统一成:源ID、姓名、手机、邮箱、地址、来源系统、录入时间。
所以只需要修改名称就行了,如下提示词描述配置:

箭头就是将 xx1 修改成 xx2。
4. 数据入库
接下来就需要SQL合并,但是需要将文件导入到本地数据库引擎,然后形成数据库表,如图配置入库:

到此,我们 CRM客户表.csv 的清洗,统一表头,入库就完成了, 其余的2张表也是如此配置。
5. 表统计
接下来我们需要进行合并,直接用“表统计”智能体就好了, 也是直接输入提示词描述,工作流内部会生成相关sql进行统计(全程不用你操心),下面是我配置完成的图:

配置完成后,我们发布工作流执行就可以了。
输入了 合并的描述, 然后合并后会生成一个大表, 取好名称就行了。
下面,我们就配置找相同用户,如下:

6. 导出报表
表统计后,只生成了结果表到数据库里面,还需要从数据库里面下载出来,这是要用“报表导出”智能体,可以指定哪些表,下载类型(支持CSV+HTML),如下图:

四、结尾语
这个案例的价值,不只是产出了一张统一的客户主数据表,更重要的是把分散在多个系统中的客户数据整理成了更标准、更适合统一识别和集中管理的数据结构。通过清洗、表头归一化、相同客户识别和结果输出,整个处理链路更清晰,也更贴近企业客户数据整合与治理的实际业务场景。
按照 AI 工作流配置好处理要求后,不需要手写 Python 和 SQL,也可以把原始客户数据快速整理成可直接用于管理、分析和沉淀的结果表。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)