什么是 ChatGPT Code Interpreter?
ChatGPT 是一款使用大型语言模型(LLM)技术来回答问题的聊天机器人。该技术通过预测序列中的下一个词来形成连贯的回应。不过,一旦启用代码解释器功能,ChatGPT 的能力将显著增强。
启用 Code Interpreter 后,ChatGPT 可以通过编写并执行计算机代码来提供答案。OpenAI 引入的这一功能,使聊天机器人能够执行此前无法完成的任务。例如,它可以进行复杂计算、基于用户上传的数据生成图表等,全部通过代码执行完成。
有人认为,引入 Code Interpreter 有助于降低不准确性——这是 LLM 常见的问题。通过执行代码来寻找答案,聊天机器人可以提供更精确、准确的回应,从而提升整体用户体验。
从技术上讲,ChatGPT 模型可以在沙盒环境中访问 Python 解释器,不仅能编写代码,还能在 Python 环境中执行并返回结果。如果代码失败(这种情况并不少见),它还能读取回调信息进行调试,并自动进入循环修复代码使其运行。
代码解释器功能在整个对话中保持激活,但为防止运行时间过长,会有时间限制。更妙的是,您可以连续运行多段代码,并让它们协同工作。
此外,您可以向对话上传文件。如果代码需要从文件中读取数据,您可以直接发送该文件。代码执行完成后,您也能取回结果。例如,如果代码生成了新文件,您可以下载并按需使用。目前,输入文件大小上限约为 500 MB。
以下是来自 OpenAI 官方文档的一个简单 Code Interpreter 示例:

代码解释器插件执行逻辑计算
开始使用 Code Interpreter
2024 年 5 月 16 日更新:OpenAI 已对原“高级数据分析”(Advanced Data Analysis,或 Code Interpreter),现称为数据分析,进行增强。该功能现已在全新旗舰模型 GPT-4o 中向 ChatGPT Plus、Team 和 Enterprise 用户提供。此次增强包括:
- 直接从 Google Drive 和 Microsoft OneDrive 上传文件:可直接从云存储上传最新版本的文件。
- 交互式表格与图表:在可展开的新视图中与数据互动,支持实时操作与追问。
- 可自定义且可下载的图表:支持自定义柱状图、折线图、饼图和散点图,并下载用于演示与文档。
这些功能在 GPT-4o 中默认可用。详情请阅读OpenAI 公告。这意味着您不再需要像以往版本那样手动启用 Code Interpreter 或 Advanced Data Analysis。
ChatGPT Code Interpreter 的常见用例
目前最常见的用例是数据分析(这大概也是其被简化为数据分析之名的原因)。
例如,若您让 ChatGPT 在数据中寻找有趣的发现,它可以检查您的财务记录、健康统计或位置信息等,并提供见解。
从事金融的人士发现,它在研究股价或制定预算等任务中很有用。研究人员也在使用该工具创建独特的数据可视化。例如,ChatGPT 的 Code Interpreter 曾创建过全球人口的交互式图表。

尽管目前数据分析是最常见的用例,但理论上,任何需要逻辑与计算的任务,都应当可以通过 ChatGPT 的 Code Interpreter 实现。根据初期用户研究,OpenAI 指出该功能在以下领域尤为有用:
- 解决数学问题,涵盖定量与定性
- 进行数据分析与可视化
- 在不同格式之间转换文件
使用 ChatGPT Code Interpreter 的示例
示例 1 - 在一个玩具数据集上做数据分析
首先,我们用一个非常简单的数据集来试试。数据集如下所示:

我会上传 CSV 文件,并通过一个简单提示让 ChatGPT 的代码解释器分析数据。您会在消息框中看到一个加号,可用于上传文件。

输入提示后,ChatGPT 代码解释器就会开始处理。由于输出很大(包括处理过程本身),这里无法完整展示,但以下是提炼出的几条见解。

我此前处理过该数据集,可以确认这些见解是相关且有价值的,而且生成速度令人印象深刻。下面是我们要求的“故事化”总结:

相当出色。不过,这个数据集相对简单,只有 6,000 行和 7 列——非常干净、直接。我们不妨用一个更贴近现实世界的数据集来试试这个示例。
在 DataCamp 的《ChatGPT 数据科学速查表》中,获取60+ 条用于数据科学任务的 ChatGPT 提示。
示例 2 - 在更复杂的数据集上获取数据洞察
本例使用的数据集是来自 加拿大统计局(StatsCan)的加拿大 CPI 通胀数据。数据集如图所示——原始、包含重复、缺失值、许多编码信息以及地理编码。

让我们用一个简单提示,看看能从这个数据集中获得哪些洞察。

1. 构建数据结构(schema)

2. 数据清洗

3. 数据可视化

4. 提炼洞察

表现相当亮眼。它很好地理解并清洗了数据,选择了合适的可视化方式,随后编写 Python 代码生成可视化,最后围绕图表撰写了洞察。虽不完美,但与以往见到的自动化洞察工具相比,已非常有前景。
想学习如何在真实的端到端数据科学项目中使用 ChatGPT?立即查看 DataCamp 上的《使用 ChatGPT 开展数据科学项目指南》。
示例 3 - 使用 ChatGPT 进行图像动画
您也可以上传一张图片并让 ChatGPT 对其进行编辑。比如,我会上传一张苹果的图片,并让它将其动画化。

它可能会向您提出一些澄清性问题,但最终会按您的要求编写代码,为图像添加动画效果。


从 ChatGPT 的 Code Interpreter 下载的动画输出(gif 文件)
结论
OpenAI 的 ChatGPT Code Interpreter 是一项突破性功能,拓展了这款 AI 聊天机器人的能力。启用代码解释器后,ChatGPT 能够编写并执行计算机代码,从而完成计算、数据分析和可视化生成等复杂任务。
这项功能不仅提升了 ChatGPT 回答的准确性与精确性,也为用户带来更具互动性与动感的体验。从数据分析到解决数学问题,代码解释器为用户打开了广阔的可能性,使 ChatGPT 成为适用于多种场景的强大工具。
如果您希望借助 ChatGPT 优化工作流程、改变业务模式,欢迎加入 DataCamp 的《ChatGPT 入门》课程,掌握生成式 AI 的强大力量。立即解锁无限可能,革新您的工作!点此报名。
FAQs
旧版 Code Interpreter 与新版 GPT-4o 模型的数据分析能力有何主要区别?
全新的 GPT-4o 模型默认包含增强的数据分析能力,无需手动启用。它还引入了诸多新特性,例如直接从 Google Drive 和 Microsoft OneDrive 上传文件、交互式表格与图表,以及可用于演示和文档的可自定义可下载图表。
我如何将 Google Drive 或 Microsoft OneDrive 中的文件上传到 ChatGPT 进行分析?
在 GPT-4o 模型中,您可以直接从 Google Drive 或 Microsoft OneDrive 上传最新版本的文件。这样,ChatGPT 能够快速处理多种文件类型,包括 Google 表格、文档、幻灯片,以及 Microsoft Excel、Word 和 PowerPoint 文件,从而简化数据分析工作流程。
使用 ChatGPT 的新数据分析功能,我可以自定义并下载哪些类型的图表?
在与 ChatGPT 的对话中,您可以自定义并与柱状图、折线图、饼图和散点图进行交互。您可以悬停查看图表元素、继续追问、选择颜色,并下载图表用于演示或文档。
网页浏览插件现在仍不可用吗?它是否被替换或重新引入?
网页浏览插件因安全和隐私问题最初被移除,现已在加强防护后重新上线。这使用户能够安全地获取最新信息并执行基于网络的任务。
针对 ChatGPT 的新数据分析功能,是否有隐私与安全措施保障?
是的,OpenAI 非常重视信任与数据隐私。他们不会使用 ChatGPT Team 与 Enterprise 客户的数据进行训练,ChatGPT Plus 用户也可以通过数据控制设置选择不参与训练。此外,OpenAI 提供全面的安全措施,包括 SAML SSO、合规性与数据加密,确保用户数据得到保护。

Adel 是一位数据科学教育者、演讲者,以及 DataCamp 的媒体副总裁。他推出了多门关于数据分析、机器学习和数据工程的课程与直播培训,热衷于在组织内推广数据技能与数据素养,并关注技术与社会的交汇。他拥有数据科学与商业分析硕士学位。闲暇时,您常能发现他陪他的猫 Louis 一起玩耍。
凭借出色的文本生成能力,OpenAI 的 ChatGPT 迅速风靡全球。多亏了曾被称为 Code Interpreter 的功能,这款聊天机器人还能生成图表和地图,并将图像转换为视频,持续吸引着用户。
该功能最初面向 ChatGPT Plus 订阅用户推出,如今在 GPT-4o 模型中已成为默认能力。它使 ChatGPT 能够编写并执行计算机代码,完成诸如计算、数据分析和可视化生成等复杂任务。
本文将通过几个示例用例,概述如何使用 ChatGPT 的 Code Interpreter 功能。