跳至主要内容

如何使用 ChatGPT Code Interpreter(代码解释器)

关于 OpenAI ChatGPT 高级数据分析(原 Code Interpreter)的所有必备信息。
· 9分钟 阅读

使用 AI 探索

凭借出色的文本生成能力,OpenAI 的 ChatGPT 迅速风靡全球。多亏了曾被称为 Code Interpreter 的功能,这款聊天机器人还能生成图表和地图,并将图像转换为视频,持续吸引着用户。

该功能最初面向 ChatGPT Plus 订阅用户推出,如今在 GPT-4o 模型中已成为默认能力。它使 ChatGPT 能够编写并执行计算机代码,完成诸如计算、数据分析和可视化生成等复杂任务。

本文将通过几个示例用例,概述如何使用 ChatGPT 的 Code Interpreter 功能。

什么是 ChatGPT Code Interpreter?

ChatGPT 是一款使用大型语言模型(LLM)技术来回答问题的聊天机器人。该技术通过预测序列中的下一个词来形成连贯的回应。不过,一旦启用代码解释器功能,ChatGPT 的能力将显著增强。

启用 Code Interpreter 后,ChatGPT 可以通过编写并执行计算机代码来提供答案。OpenAI 引入的这一功能,使聊天机器人能够执行此前无法完成的任务。例如,它可以进行复杂计算、基于用户上传的数据生成图表等,全部通过代码执行完成。

有人认为,引入 Code Interpreter 有助于降低不准确性——这是 LLM 常见的问题。通过执行代码来寻找答案,聊天机器人可以提供更精确、准确的回应,从而提升整体用户体验。

从技术上讲,ChatGPT 模型可以在沙盒环境中访问 Python 解释器,不仅能编写代码,还能在 Python 环境中执行并返回结果。如果代码失败(这种情况并不少见),它还能读取回调信息进行调试,并自动进入循环修复代码使其运行。

代码解释器功能在整个对话中保持激活,但为防止运行时间过长,会有时间限制。更妙的是,您可以连续运行多段代码,并让它们协同工作。

此外,您可以向对话上传文件。如果代码需要从文件中读取数据,您可以直接发送该文件。代码执行完成后,您也能取回结果。例如,如果代码生成了新文件,您可以下载并按需使用。目前,输入文件大小上限约为 500 MB。

以下是来自 OpenAI 官方文档的一个简单 Code Interpreter 示例:

Code interpreter plugin performing logic calculations

代码解释器插件执行逻辑计算

开始使用 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 曾创建过全球人口的交互式图表。

2022 World Population Map

来源

尽管目前数据分析是最常见的用例,但理论上,任何需要逻辑与计算的任务,都应当可以通过 ChatGPT 的 Code Interpreter 实现。根据初期用户研究,OpenAI 指出该功能在以下领域尤为有用:

  • 解决数学问题,涵盖定量与定性
  • 进行数据分析与可视化
  • 在不同格式之间转换文件

使用 ChatGPT Code Interpreter 的示例

示例 1 - 在一个玩具数据集上做数据分析

首先,我们用一个非常简单的数据集来试试。数据集如下所示:

Carat table

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

Prompt

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

output visualizations

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

Bulleted insights

相当出色。不过,这个数据集相对简单,只有 6,000 行和 7 列——非常干净、直接。我们不妨用一个更贴近现实世界的数据集来试试这个示例。

在 DataCamp 的《ChatGPT 数据科学速查表》中,获取60+ 条用于数据科学任务的 ChatGPT 提示。

示例 2 - 在更复杂的数据集上获取数据洞察

本例使用的数据集是来自 加拿大统计局(StatsCan)的加拿大 CPI 通胀数据。数据集如图所示——原始、包含重复、缺失值、许多编码信息以及地理编码。

Inflation data

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

prompt2

1. 构建数据结构(schema)

dataset schema

2. 数据清洗

dataset analysis

3. 数据可视化

4. 提炼洞察

Insight extraction

表现相当亮眼。它很好地理解并清洗了数据,选择了合适的可视化方式,随后编写 Python 代码生成可视化,最后围绕图表撰写了洞察。虽不完美,但与以往见到的自动化洞察工具相比,已非常有前景。

想学习如何在真实的端到端数据科学项目中使用 ChatGPT?立即查看 DataCamp 上的《使用 ChatGPT 开展数据科学项目指南》。

示例 3 - 使用 ChatGPT 进行图像动画

您也可以上传一张图片并让 ChatGPT 对其进行编辑。比如,我会上传一张苹果的图片,并让它将其动画化。

animation prompt

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

animation working process

output gif

从 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 Nehme

作者

Adel Nehme

Adel 是一位数据科学教育者、演讲者,以及 DataCamp 的媒体副总裁。他推出了多门关于数据分析、机器学习和数据工程的课程与直播培训,热衷于在组织内推广数据技能与数据素养,并关注技术与社会的交汇。他拥有数据科学与商业分析硕士学位。闲暇时,您常能发现他陪他的猫 Louis 一起玩耍。

主题