我让AI接管了整个数据科学工作流
最近,我一直感到一种持续的AI FOMO(错失恐惧)。每天,我都看到人们分享AI技巧、他们构建的新智能体和技能,以及氛围编码的应用程序。我越来越意识到,快速适应AI正在成为当今数据科学家保持竞争力的必要条件。
但我说的不仅仅是用ChatGPT头脑风暴、用Cursor生成代码,或者用Claude润色报告。更大的转变是,AI现在可以参与到更加端到端的数据科学工作流中。
为了让这个想法更具体,我用我的Apple Health数据在一个真实项目上进行了尝试。
1、一个简单的例子:Apple Health分析
自2019年以来,我每天都戴着Apple Watch来追踪我的健康数据,如心率、消耗的能量、睡眠质量等。这些数据包含了我日常生活中数年的行为信号,但Apple Health应用主要只提供简单的趋势视图。
六年前我曾尝试分析两年的Apple Health导出数据。但它最终变成了那些你永远完不成的副业项目之一……我这次的目标是在AI的帮助下,从原始数据中快速提取更多洞察。
1.1 我手头的资源
以下是我拥有的相关资源:
- 原始Apple Health导出数据:1.85GB的XML文件,上传到了我的Google Drive。
- 解析原始导出数据为结构化数据集的示例代码,来自我六年前GitHub仓库中的代码。但这些代码可能已经过时了。
1.2 没有AI的工作流
没有AI的标准工作流看起来很像我六年前尝试的方式:检查XML结构,编写Python代码将其解析为结构化的本地数据集,使用Pandas和Numpy进行探索性数据分析,并总结洞察。
我相信每个数据科学家都熟悉这个过程——这不是什么高深的科学,但构建它需要时间。要得到一份精炼的洞察报告,至少需要一整天的时间。这就是为什么那个6年前的仓库仍然标记为WIP(进行中)……
1.3 AI端到端工作流
我使用AI后的更新工作流是:
- AI在我的Google Drive中定位原始数据并下载它。
- AI参考我的旧GitHub代码,编写Python脚本来解析原始数据。
- AI将解析后的数据集上传到Google BigQuery。当然,分析也可以在不使用BigQuery的情况下在本地完成,但我这样设置是为了更好地模拟真实的工作环境。
- AI对BigQuery运行SQL查询来进行分析并编写分析报告。
本质上,AI处理了从数据工程到分析的几乎每一步,而我更多地充当审查者和决策者。
2、AI生成的报告
现在,让我们看看Codex在我的指导和一些来回沟通后,在30分钟内生成了什么(不包括设置环境和工具的时间)。
我选择Codex是因为我在工作中主要使用Claude Code,所以我想尝试一个不同的工具。我趁机从零开始设置我的Codex环境,以便更好地评估所需的所有努力。
你可以看到这份报告结构良好、视觉精美。它总结了对年度趋势、运动一致性以及旅行对活动水平影响的宝贵洞察。它还提供了建议,并说明了局限性和假设。让我印象最深的不仅仅是速度,而是输出结果多快就开始看起来像一份面向利益相关者的分析,而不是粗糙的笔记本。
3、我实际是怎么做的
既然我们已经看到AI在30分钟内能生成令人印象深刻的工作,让我分解一下并展示我采取的所有步骤。我在这个实验中使用了Codex。和Claude Code一样,它可以在桌面应用、IDE或CLI中运行。
3.1 设置MCP
为了让Codex能够访问工具,包括Google Drive、GitHub和Google BigQuery,下一步是设置模型上下文协议(MCP)服务器。
设置MCP最简单的方法是让Codex帮你做。例如,当我要求它设置Google Drive MCP时,它快速配置了我的本地文件,并提供了关于如何在Google Cloud Console中创建OAuth客户端的明确后续步骤。
它并不总是第一次就成功,但坚持会有帮助 :) 当我要求它设置BigQuery MCP时,在连接成功之前至少失败了10次。但每次,它都为我提供了关于如何测试以及哪些信息有助于排查故障的清晰说明。
3.2 使用计划模式制定计划
设置好MCP之后,我进入了实际项目。对于一个涉及多个数据源/工具/问题的复杂项目,我通常从计划模式开始,确定实施步骤。在Claude Code和Codex中,你都可以用/plan启用计划模式。它的工作方式是这样的:你概述任务和粗略计划,模型提出澄清问题并提议一个更详细的实施计划供你审查和优化。
3.3 执行和迭代
当我点击"是的,实施这个计划"后,Codex开始按照步骤自主执行。它工作了13分钟,生成了下面的第一次分析。它在不同的工具之间快速切换,但由于BigQuery MCP遇到了更多问题,它在本地进行了分析。经过另一轮故障排查后,它成功地上传了数据集并在BigQuery中运行了查询。
然而,第一遍的输出仍然比较浅,所以我通过后续问题引导它深入。例如,我的Google Drive中有过去旅行的机票和旅行计划。我让它找到这些文件并分析我旅行期间的活动模式。它成功定位了这些文件,提取了我的旅行日期,并运行了分析。
经过几轮迭代,它在30分钟内生成了一份更加全面的报告,正如我在开头分享的那样。你可以在这里找到它的代码。这可能是这个练习中最重要的经验之一:AI行动迅速,但深度仍然来自于迭代和更好的问题。
4、数据科学家的启示
4.1 AI改变了什么
上面是我如何使用Codex和MCP在不手动编写任何代码的情况下运行端到端分析的一个小例子。对于工作中的数据科学家,有哪些启示?
- 超越编码辅助的思考。 与其仅仅将AI用于编码和写作,不如将其角色扩展到整个数据科学生命周期。在这里,我用AI在Google Drive中定位原始数据并将解析后的数据集上传到BigQuery。还有更多与数据管道和模型部署相关的AI用例。
- 上下文成为力量倍增器。 MCP是让这个工作流变得更加强大的关键。Codex扫描了我的Google Drive来定位我的旅行日期,并读取了我旧的GitHub代码来找到示例解析代码。同样,你可以启用其他公司批准的MCP来帮助你的AI(以及你自己)更好地理解上下文。例如:连接Slack MCP和Gmail MCP来搜索过去相关的对话。使用Atlassian MCP访问Confluence上的表文档。设置Snowflake MCP来探索数据模式并运行查询。
- 规则和可复用技能很重要。虽然我在这个例子中没有明确演示,但你应该自定义规则并创建技能来引导你的AI并扩展其能力。这些话题值得下次单独写一篇文章 :)
4.2 数据科学家角色将如何演变
但这是否意味着AI会取代数据科学家?这个例子也揭示了数据科学家角色未来将如何转变。
- 更少的手动执行,更多的问题解决。在上面的例子中,Codex生成的初始分析非常基础。AI生成分析的质量在很大程度上取决于你问题框架的质量。你需要清晰地定义问题,将其分解为可执行的任务,确定正确的方法,并将分析推向更深入。
- 领域知识至关重要。要正确解读结果并提供推荐,领域知识仍然是必需的。例如,AI注意到我的活动水平自2020年以来显著下降。它找不到一个令人信服的解释,但说:"可能的原因包括日常变化、工作安排、生活方式转变、受伤、动力不足或缺乏结构化训练,但这些都是推测,不是发现。"但背后的真正原因,你可能已经想到了,是疫情。我在2020年初开始在家工作,所以自然消耗了更少的卡路里。这是一个非常简单的例子,说明为什么领域知识仍然重要——即使AI可以访问你公司所有过去的文档,也不意味着它会理解所有业务细微差别,这就是你的竞争优势。
- 这个例子相对简单,但仍然有很多类别的工作我不会信任AI今天独立操作,特别是需要更强技术和统计判断力的项目,如因果推断。
5、重要的注意事项
最后但同样重要的是,使用AI时你需要记住一些考虑事项:
- 数据安全。我相信你已经听过很多次了,但让我再重复一次。使用AI的数据安全风险是真实存在的。对于个人副业项目,我可以随心所欲地设置并自行承担风险(说实话,授予AI对Google Drive的完全访问权限感觉是一个冒险的举动,所以这更多是为了演示目的)。但在工作中,始终遵循公司关于哪些工具安全使用以及如何使用的指导。并确保在点击"批准"之前仔细阅读每一条命令。
- 仔细检查代码。对于我简单的项目,AI可以毫无问题地编写准确的SQL。但在更复杂的业务环境中,我仍然看到AI时不时在代码中犯错。有时,它以不同的粒度连接表,导致扇出和重复计算。其他时候,它遗漏了关键的过滤条件和约束。
- AI很方便,但它可能会在完成任务时带来意想不到的副作用……让我讲一个有趣的故事来结束这篇文章。今天早上,我打开笔记本电脑,看到了一个磁盘空间不足的警报——我有一台512GB SSD的MacBook Pro,我很确定我只用了大约一半的存储空间。由于我昨晚在玩Codex,它成了我的第一怀疑对象。所以我实际上问它:"嘿,你做了什么吗?我的'系统数据'一夜之间增长了150GB"。它回答说:"没有,Codex只占xx MB"。然后我翻了翻文件,看到了一个142GB的"bigquery-mcp-wrapper.log"……很可能,Codex在排查BigQuery MCP设置问题时设置了这个日志。后来在实际分析任务中,它膨胀成了一个巨大的文件。所以是的,这台神奇的许愿机是有代价的。
这次经历很好地总结了我感受到的权衡:AI可以极大地压缩从原始数据到有用分析之间的距离,但要充分利用它,仍然需要判断力、监督意愿以及调试工作流本身的意愿。
原文链接: Beyond Code Generation: AI for the Full Data Science Workflow
汇智网翻译整理,转载请标明出处