这是我和医保数据打交道的第118个月。
第十批、十一批"两库"规则陆续公布,我盯着密密麻麻的Excel表格,突然意识到——有些事,真的不该人来做。
01 | 那些年被Excel支配的恐惧
上个月,国家医保局发布了第十批"两库"规则明细。作为医保信息化团队的一员,我的任务很简单:把新规则和历史规则逐条比对,标记出新增、修改、删除的条目,生成差异报告。
听起来不难?
现实是:
两个Excel,各有2000+行规则
每行包含N个字段(规则编号、名称、类型、适用场景、参数...)
需要比对"规则编号"+"版本号"+"适用时间"三个关键维度
差异要精确到单元格级别
我用了多久?
整整2个工作日。
第一天:把两个Excel导入数据库,写SQL比对脚本(当然,中途被各种格式问题卡住)
第二天:人工核对SQL结果,把疑似差异一条条确认,修bug,再核对...
同事路过我工位:"你还在做这个?不是早就说了要自动化吗?"
我苦笑:"可我们没现成的工具啊。写Python脚本?太复杂。用RPA?部署麻烦。最后还是手动来得快..."
那一刻,我意识到:
我们陷入了"手动更快"的陷阱——因为写自动化工具的成本,看起来比手动更高。
02 | TREA出现的那天
转折点来自一个意外。
我们在测试一个本地AI工具时,偶然发现TREA(Text-based Reasoning and Execution Agent)不仅能处理文本,还能直接操作本地文件——包括Excel。
关键发现:TREA不需要写复杂的Python脚本,不需要配置数据库,甚至不需要懂正则表达式。
它只需要:
你告诉它要做什么(自然语言)
它自己读取Excel、分析差异、生成报告
我试了第一个命令:
对比两个Excel文件:新规则.xlsx 和 历史规则.xlsx找出新增、修改、删除的规则,生成差异报告
结果:
读取文件:10秒
数据分析:8秒
生成报告:5秒
总计:23秒。
我盯着屏幕,不敢相信——那个让我加班两天的任务,TREA用了23秒。
03 | TREA的四大核心能力(数据分析让我彻底依赖它)
经过一个月的深度使用,我发现TREA有四个远超预期的特性,这些才是我真正离不开它的原因:
3.1 本地系统权限:安全又自由
作为处理敏感数据的工具,本地权限控制是我最关心的。
TREA在这方面的设计让我很放心:
命令沙箱机制:
默认情况下,TREA只允许执行白名单内的安全命令(如
ls,cp,mv,python3等)危险命令(如
rm -rf,sudo,chmod 777)会被自动拦截并提示确认即使你需要执行特殊命令,也可以通过配置文件临时授权,而不是完全放开
文件夹范畴权限:
TREA启动时可以指定工作根目录(如
/data/分析)所有文件操作都限制在这个目录及其子目录内
无法访问系统关键目录(如
/etc,/root,C:\Windows)即使Prompt里写"读取/etc/passwd",TREA也会拒绝执行
实际效果:我可以放心地把TREA放在生产环境,处理医保局的敏感数据,不用担心它误删文件或泄露信息。
3.2 SOLO模式:真正的多线程自动化
这是TREA最让我惊喜的特性——SOLO模式。
什么是SOLO模式?
当你写了一个复杂的自动化流程(比如:读取A文件→处理→读取B文件→比对→生成报告→发送飞书),TREA会自动分解成多个子任务
这些子任务可以并行执行(比如同时读取A和B文件)
更重要的是:不需要人工确认!
对比Claude Code:
Claude Code:每执行一个步骤,都要弹窗问"是否继续?"——你必须守着电脑点YES
TREA SOLO模式:写完Prompt,一键启动,坐等结果。期间你可以去喝茶、开会、甚至关机(只要不kill进程)
实战场景:
处理excel:1、从表:“互联网禁止开具药品”,sheet:“明细表”(后称:W表) 921行开始,按照表“bz.xlsx”,sheet:"“超互联网医院药品支付范围”知识点对应药品代码"(后称:Q表) D列校验Q表的D列对应的值是否在W表的D列中,如果在则不用操作,如果不在则在W表D列填充,并且将Q表B列的名称填充到W表的E列(注:Q表的B列是合并单元格的);2、W表新增的行:A列、B列、C列、F列与920行保持一致填充;3、前面两步结束后,遍历W表E列,如果值在表“bz.xlsx”,sheet:"“超互联网医院药品支付范围”规则对应知识点明细"B列中,则W表的G列内容改为:“【药物名称】医疗机构开展互联网诊疗活动时,不得开具麻醉药品、精神药品等特殊管理药品的处方。”4、处理完之后保存
在Claude Code里,你需要至少点几次确认。
在TREA SOLO模式下,你只需要写一次Prompt,然后等它跑完。
这不仅仅是省了点击次数,更是工作流的质变——从"人机交互"变成了"任务委托"。
3.3 表格理解能力:SQL式重命名,一步到位
TREA对表格的理解能力,比我见过的所有AI工具都要强。
痛点场景:医保局的Excel文件命名很繁琐,比如:
"国家医保局第十批药品目录调整规则明细表_20240315_最终版_v2.xlsx"
在Prompt里反复引用这个文件名,简直是灾难:
"读取国家医保局第十批药品目录调整规则明细表_20240315_最终版_v2.xlsx,然后对比国家医保局第十批药品目录调整规则明细表_20240315_最终版_v2.xlsx和国家医保局第十一批药品目录调整规则明细表_20240501_正式发布.xlsx"
我的解决方案:我试着用SQL的思维写Prompt:
-- 定义表别名新规则表 AS new_rules = 读取 "第十一批规则_20240501.xlsx"旧规则表 AS old_rules = 读取 "第十批规则_20240315.xlsx"-- 执行比对SELECT*FROM new_rulesFULLOUTERJOIN old_rules ON new_rules.规则编号 = old_rules.规则编号WHERE new_rules.版本号 != old_rules.版本号
TREA的反应:它完全理解了我的意图,并且:
自动创建了两个DataFrame对象(new_rules, old_rules)
执行了SQL风格的JOIN操作
一步到位生成了差异结果
甚至更智能的是:当我在Prompt里写"把新规则表里'规则编号'列重命名为'id'",TREA会记住这个别名,后续所有引用都自动生效。
这种上下文理解能力,让复杂的表格操作变得像写SQL一样流畅。
3.4 反思机制:问题自愈能力
这是TREA最让我震撼的能力——它不仅能执行,还能反思和修复。
实战场景:我让TREA处理一个包含合并单元格的Excel文件,Prompt里明确要求"忽略前2行标题行"。
执行完成后,我验收发现:
新规则表里多出了3行"空数据"(应该是标题行没处理好)
修改规则表里有些行的"生效时间"列显示为"N/A"(应该是日期格式问题)
我追问:"为什么新规则表里有空行?标题行处理有问题吗?"
TREA的响应(30秒内):
问题定位:1. 新规则表前3行被识别为数据(实际第2-3行是合并单元格的标题延续)2. 日期列使用了pandas默认解析,未能识别'2024.05.01'格式修复方案:1. 修改读取逻辑:skiprows=[0,1],但保留合并单元格信息2. 日期解析:添加format='%Y.%m.%d'参数已重新执行并验证:✅ 新规则表:6247行(无空行)✅ 日期列:全部正确解析为datetime类型
然后它把修复后的文件重新生成了一遍。
这种**"发现问题→定位原因→自动修复→重新执行"**的闭环能力,意味着:
我不需要自己debug代码
不需要反复修改Prompt
甚至不需要理解技术细节(虽然我理解)
效率提升的不仅仅是速度,更是心流状态的保持。以前处理Excel,我要在"写代码→运行→报错→改代码→再运行"的循环里挣扎。 现在,我只需要验收结果,指出问题,等它修复。
04 | 实战:我用TREA处理第十一批规则
有了这些能力的加持,我开始处理更复杂的场景——第十一批规则。
这次的数据量更大:两个文件,合计6000+行,50+个字段。
我写的TREA指令是这样的:
-- 1. 定义表别名(解决长文件名问题)新规则表 ASnew = 读取 "/data/2026/第十一批规则明细_20260512.xlsx" (跳过前2行)旧规则表 ASold= 读取 "/data/2025/规则明细_20250815.xlsx" (跳过前2行)-- 2. 数据清洗(TREA自动处理合并单元格、空值)清洗 new 表:填充空值、处理合并单元格清洗 old 表:填充空值、处理合并单元格-- 3. 三路比对(基于规则编号+版本号)新增规则 =SELECT*FROMnewWHERE 规则编号 NOTIN (SELECT 规则编号 FROMold)升级规则 = SELECTnew.*, old.版本号 AS 旧版本号FROMnewJOIN old ONnew.规则编号 = old.规则编号WHEREnew.版本号 != old.版本号修改规则 = SELECTnew.*, old.*FROMnewJOIN old ONnew.规则编号 = old.规则编号 ANDnew.版本号 = old.版本号WHEREnew.其他字段 != old.其他字段删除规则 =SELECT*FROMoldWHERE 规则编号 NOTIN (SELECT 规则编号 FROMnew)-- 4. 输出到Excel(三个工作表)写入 "/output/第十一批规则差异报告_20260512.xlsx":-Sheet1:新增规则(带统计行)-Sheet2:修改规则(旧值vs新值并排显示)-Sheet3:删除规则-- 5. 生成摘要并推送生成Markdown摘要(包含差异统计、关键字段完整性检查)
执行结果:
✅读取完成:新规则6247行,旧规则5891行✅ 数据清洗:处理了 3 个合并单元格,填充了 127 个空值✅ 比对完成:发现 342 处差异- 新增规则: 128 条- 规则升级: 89 条- 内容修改: 125 条✅ 生成报告:第十一批规则差异报告_20260512.xlsx (2.3MB)✅ 飞书推送:已发送到"医保规则监控"群
总耗时:4分37秒。
而我之前预估的人工时间:至少2.5个工作日。
05 | 从"自动化脚本"到"自动化思维"
这次经历让我明白了一个道理:
工具的价值,不在于它本身多强大,而在于它改变了你的工作思维。
以前,我的思维是:
"这个需求,我该写个Python脚本还是手动做?"
"写脚本要多久?维护成本高不高?"
"算了,还是手动吧,快"
现在,我的思维变成了:
"这个需求,我能用TREA描述清楚吗?"
"TREA能不能自动处理数据质量问题?"
"如果TREA能搞定,我为啥要写代码?"
这不是偷懒,这是效率的质变。
我们把时间花在思考(如何更好比对规则、如何设计监控流程),而不是重复劳动(手动操作Excel、调试脚本、处理异常)。
06 | TREA适合谁?不适合谁?
适合的场景:
✅ 重复性数据处理(每天/每周的报表)
✅ 文件格式转换(Excel转Markdown、CSV转JSON)
✅ 数据清洗和比对(就像我做的规则比对)
✅ 批量文件重命名、整理
✅ 文本提取和格式化(从PDF提取表格)
✅ 简单的自动化流程(读取邮件附件→处理→发送结果)
特别适合:
🎯 需要本地运行
🎯 需要多线程自动化(不想守着电脑点确认)
🎯 处理复杂表格(需要智能理解表结构、合并单元格、SQL式操作)
🎯 **追求"写一次,跑完为止"**(不需要反复调试)
不适合的场景:
❌ 需要深度定制逻辑的复杂算法
❌ 对性能要求极高的场景(TREA是本地AI,不是高性能计算)
❌ 需要图形界面交互的任务(TREA是命令行工具)
一句话总结:
TREA不是为了替代程序员,而是为了让非程序员也能自动化,让程序员从重复劳动中解放。
07 | 给同样在Excel地狱挣扎的你
如果你也和我一样,每天被这些重复工作折磨:
手动比对两个Excel找差异
把PDF表格转成可编辑格式
批量重命名几百个文件
每天生成同样的报表
我的建议是:
先别急着学Python很多人的想法是"我要学编程来自动化",结果学了三个月还在看教程。TREA让你先自动化起来,再根据需要深入学习。
从一个小任务开始选一个你每周都要做的、重复的Excel任务,用TREA尝试自动化。成功一次,你就上瘾了。
利用SOLO模式解放自己写Prompt时尽量一次性描述完整流程,让TREA自动分解任务并行执行。你只需要写Prompt,然后等结果。
善用反思机制如果结果有问题,直接告诉TREA哪里不对,它会自动定位并修复。不要自己debug,让AI来debug AI。
写在最后
上周,我把医保局第十一批规则比对报告发到群里,领导说:"这次怎么这么快?"
我说:"用了一个新工具,叫TREA。"
他问:"需要申请采购吗?"
我说:"免费,开源,本地运行。"
他愣了一下,然后笑了。
我突然觉得,技术最好的样子,不是高大上的概念,而是让普通人也能从重复劳动中解放出来。
TREA给我的最大改变:
以前:写代码→调试→再写→再调试→终于跑通→又出bug...
现在:写Prompt→等结果→指出问题→它修复→完成
效率提升的不仅仅是100%,更是工作幸福感的100%。
如果你也想逃离Excel地狱,不妨试试TREA。
毕竟,你的时间,值得做更有价值的事。
📌 彩蛋:我的TREA配置分享
我在本地部署的TREA环境配置(供参考):
# 1. 安装TREA CLIpip install trea-cli# 2. 初始化配置(指定工作目录)trea init --workdir /data/分析# 3. 启用SOLO模式(多线程自动化)trea config set solo_mode true# 4. 设置安全白名单(只允许安全命令)trea config set allowed_commands "ls,cp,mv,python3,pandas,openpyxl"# 5. 创建你的第一个自动化脚本trea create "医保规则比对"
实际使用的TREA指令模板:
-- 定义别名(解决长文件名)表A AS a = 读取 "/path/to/文件A.xlsx"表B AS b = 读取 "/path/to/文件B.xlsx"-- 数据清洗清洗 a 表:填充空值、处理合并单元格清洗 b 表:填充空值、处理合并单元格-- 执行分析结果 = SELECT ... FROM a JOIN b ON ...-- 输出写入 "/output/结果.xlsx": 结果发送到飞书群 "工作通知"
关键技巧:
用
AS给长文件起别名,避免重复复制粘贴用SQL风格描述操作,TREA理解得更准确
启用SOLO模式,一次写完整流程,让它自动并行执行
结果不满意?直接说"第X行有问题",它会自动定位修复
就这样。
作者:一位在医保信息化领域挣扎了十年,终于用TREA找回生活平衡的普通从业者。
如果这篇文章对你有帮助,欢迎转发给同样在Excel地狱挣扎的朋友。
GitHub项目地址:TREA官方仓库(已Star⭐)
相关阅读:
《我用TREA自动化了周报生成,每天省1小时》
《TREA vs Claude Code:多线程自动化为什么选SOLO模式》
《TREA安全机制详解:本地权限控制完全指南》
《从零开始:TREA实战手册(持续更新)》
夜雨聆风