即时工程
探索 OpenAI 的 ChatGPT 代码解释器:深入探究其功能

OpenAI 在自然语言处理 (NLP) 方面的进步以大型语言模型 (LLM) 的兴起为标志,大型语言模型 (LLM) 支撑着数百万人使用的产品,包括编码助手 GitHub Copilot 和 Bing 搜索引擎。这些模型凭借其独特的记忆和合并信息的能力,在代码和文本生成等任务中树立了无与伦比的基准。
理解 ChatGPT 的代码解释器
要理解 ChatGPT 代码解释器的重要性,首先必须了解它是什么以及它是如何构建的。
从本质上讲,ChatGPT 代码解释器利用了 ChatGPT 的功能,但增强了理解、解释甚至跨多种编程语言生成代码的能力。 此功能将 ChatGPT 从文本生成器转变为开发人员的宝贵工具,有助于代码理解、调试甚至代码生成。
编码培训 GPT:Codex 方法
以上皆是 GitHub 副驾驶 与 ChatGPT 的代码解释器 利用 法典模型 由 OpenAI 开发。
Codex 是一种专门的 GPT 语言模型,旨在具有熟练的 Python 代码编写能力。 Codex 经过 GitHub 公开源代码的培训,通过支持 GitHub Copilot 中的功能展示了其潜力。 当评估其从文档字符串合成程序的能力(功能正确性的衡量标准)时,Codex 的表现优于两者 GPT-3 与 GPT-J.
一个引人注目的观察是,重复采样可以提高 Codex 的效率。当每个问题使用最多 100 个样本时,该模型的成功率会提升至 70.2%。 这种效率表明可以使用启发式排名来挑选准确的代码样本,而无需对每个样本进行全面评估。
为了评估其能力,该模型的任务是仅基于文档字符串创建独立的 Python 函数。然后使用单元测试来评估生成代码的准确性。在一个包含 164 个原始编程问题(包括语言理解、算法和基础数学测试)的数据集中,Codex 解决了包含 12 亿个参数的问题。 28.8% 一次尝试即可完成。
通过微调正确实现的独立函数来进一步磨练模型,其效率得到了提高,从而解决了 Codex-S 问题 37.7% 第一次尝试时面临的挑战。 然而,在编程的实际领域中,试错方法很常见。 Codex-S 模型模仿了这一现实场景,在给予 100 次机会后,成功解决了 77.5% 的挑战。
像 ChatGPT 这样生成代码的生成模型通常通过将生成的样本与参考解决方案进行比较来评估。这种比较可以是精确的,也可以采用类似 BLEU 分数的相似度度量。然而,这些基于匹配的指标往往无法把握编码的细微差别。BLEU 的一个主要缺陷在于它无法有效捕捉代码的语义特征。
人们提出了一种更相关的衡量标准,而不是仅仅依赖匹配:功能正确性。 这意味着模型生成的代码应该通过一组给定的单元测试。 这个想法与标准编码实践一致,因为开发人员经常使用单元测试来衡量代码的有效性和准确性。
该指标不仅评估准确性,还评估生成代码的功能可用性。
这个 通过@k 引入度量作为功能正确性的度量。 它本质上意味着,如果“k”个生成的代码示例中的任何一个通过了单元测试,则问题被视为已解决。 然而,不只是以其直接形式使用它,而是使用无偏估计器来计算 pass@k 以避免高方差。
为了评估 ChatGPT 的代码能力,该研究利用了 人类评估 数据集。 该数据集由手写的 Python 问题组成,每个问题都附有单元测试。
考虑到与运行未知或不受信任的代码相关的风险,沙箱环境被设计来安全地测试生成的代码。 使用的这个环境 g遮阳板 模拟资源并在主机系统和运行代码之间创建屏障。 因此,即使该模型产生恶意代码,它仍然受到控制,不会损害主机或网络。
使用 ChatGPT 代码解释器
OpenAI 的 ChatGPT 经历了多次演变,其中代码解释器是其中的一项革命性功能。 GPT-4模型。 与传统的聊天界面不同,代码解释器允许用户更深入地研究计算任务,无缝融合人类与人工智能对话和计算过程之间的界限。
从本质上讲,代码解释器类似于将计算机嵌入聊天机器人中。 此动态功能为用户提供临时磁盘空间来上传大量文件格式,从 TXT、PDF 和 JPEG 等常见类型到 CPP、PY 和 SQLite 等更专业的类型。 这种广泛的支持增强了其在各种任务中的多功能性,无论是文档处理还是图像处理。
代码解释器运行在一个强大而安全的框架内,并预装了 300 多个库。这种沙盒环境在确保安全性的同时,仍能提供强大的计算能力。有趣的是,当用户接到任务时,它会实时编写 Python 脚本来执行用户的请求。例如,使用 OCR 将基于图像的 PDF 转换为可搜索的格式;用户只需上传文档,剩下的工作就交给 ChatGPT 处理。
上传文件大小限制一直是大家关注的焦点。虽然最终规格尚未公布,但用户实验表明,该系统可以有效处理远大于 100MB 的文件。无论文件大小如何,务必注意,这些文件是临时文件,会在聊天会话结束后被丢弃。
代码解释器 (Code Interpreter) 的出色之处不仅在于其强大的技术实力,更在于其便捷易用性。OpenAI 为 ChatGPT Plus(附带 GPT-4 模型)的订阅用户提供了此功能。因此,这款变革性工具不仅面向科技精英,而且正逐渐普及到更广泛的受众。
标准 ChatGPT 模型和代码解释器之间的区别在于它们的交互范例。 前者主要生成文本响应,而后者理解并执行代码,提供直接结果。 这不仅使其成为技术专业人士的宝贵资产,而且还使那些没有编码知识的人能够执行复杂的计算任务。
ChatGPT 代码解释器的功能可以彻底改变软件开发和数据科学的几个方面:
- 自动代码生成:对于软件应用程序和数据分析脚本,只要给出高级描述,系统就可以生成样板结构或复杂的代码片段,从而加速开发和数据分析过程。
- 代码审查和数据验证:像 ChatGPT 这样的人工智能驱动工具可以帮助提高软件代码库的质量和安全性。 此外,在数据科学领域,此类工具有助于审查和验证数据处理和转换脚本,确保准确性和效率。
- 数据分析协助:对于数据科学家来说,ChatGPT 代码解释器可以帮助生成用于初步数据探索、可视化甚至基本统计测试的代码,从而简化数据分析工作流程。
如果您有兴趣了解更多关于 ChatGPT 和即时工程的复杂性,Unite AI 提供了全面的细分,请参阅“ChatGPT:高级提示工程“。
设置 ChatGPT 代码解释器
代码解释器集成允许平台解释用户查询,将其作为 Python 代码执行,并以交互式聊天格式显示结果。 要访问此功能,用户可以导航至 ChatGPT 设置,探索 Beta 功能部分,然后激活代码解释器。
它的与众不同之处在于其透明的机制。 当用户提示任务时,平台会揭示处理过程的每个步骤,清楚地说明命令是如何解释和执行的。 重要的是,出于隐私和安全原因,代码解释器在没有任何互联网连接的情况下运行。
探索 ChatGPT 代码解释器的优势
数据可视化 & 分析
ChatGPT 超越了传统图表的范围,提供传统和创新的图形表示。 这确保用户可以以提供最有意义的见解的格式查看数据。
然而,它不仅仅是可视化原始数据。ChatGPT 模型擅长处理和提炼数据。虽然功能强大,但用户仍需谨慎使用。
金融分析师会发现代码解释器分析和可视化股票价格的功能特别有用。通过无缝集成,用户可以上传数据集并以各种格式进行可视化。当个人能够进行复杂的数据分析时,此功能的重要性就显而易见了。
下面的视频演示了 ChatGPT 的代码解释器如何创建一个全面的 TSLA 股票分析。
关键精华:
- 特斯拉的股价虽然经历了波动,但随着一段时间的增长也表现出了韧性。
- 特定日期的高交易量表明市场有浓厚的兴趣或对关键事件的反应。
- 年初至今(YTD)回报率的下降表明,投资者在考虑未来投资时应同时分析公司内部因素和外部市场状况。
实施计算机视觉和 OCR
人脸检测是计算机视觉中的一项重要功能,它是通过一种经典技术来实现的: Haar级联分类器 来自 OpenCV。
下图展示了经典 Haar Cascade 分类器的使用。
从图像中提取文本的过程(称为光学字符识别 (OCR))是使用 Tesseract 无缝实现的,文本随后由 GPT-4 结构化,从而增强了可理解性。
在以下视频中,了解 Tesseract (OCR) 如何从证书图像中提取文本。
代码解释器在视频、音频和图像处理领域表现出色。 通过简单的命令,用户可以实现详细的编辑,例如将 GIF 转换为具有特定增强功能的 MP4。 只需上传您的文件,输入您想要的修改,然后观看奇迹的发生。
ChatGPT 代码解释器内的 Python 外部库
ChatGPT 代码解释器是一个动态编程平台,配备了丰富的 Python 库。这些库涵盖了从使用 Seaborn 进行数据可视化到通过 Torch 进行高级机器学习的所有内容。但它不仅仅是一个静态工具包。
受此启发 聊天页面 来自科拉科特·乔瓦瓦尼奇。
从最新的开始 nltk发布,我们将一个 .whl 文件上传到解释器。然后,我们指示 ChatGPT 通过分析现有软件包的位置来找到合适的 site-packages 目录。下一步是将 wheel 文件解压到一个临时位置,并将文件移动到已识别的 site-packages 目录。然而,这遇到了一个问题。
为了寻求解决方法,我们提示:“请确保 NLTK 安装在 Python 环境中,并且安装后可以访问。”
ChatGPT 做出了回应,提供了解决方案。 它建议将临时目录添加到 sys.path,允许 Python 识别并从该位置内解压的 nltk 包中提取模块。 这一策略产生了奇迹,导致 NLTK 成功安装。
通过使用 .whl 文件,整个安装过程展现了独创性和适应性的融合。尽管初期面临诸多挑战,ChatGPT 代码解释器仍展现了其多功能性,并致力于满足程序员的需求,确保新手和老手都能获得流畅的编程体验。
在@DominikPeters最近发布的一条推文中,他精彩地展示了该解释器的功能。Peters请求GPT-4生成一份关于巴黎各行政区的测验,该模型最终生成了一个运行良好的网站。您可以在dominik-peters.de/gpt-arrondissement-quiz/上获取该测验,并进行实际体验。
让 GPT-4 为我编写一个巴黎地区测验,它开箱即用。 https://t.co/Uhv7tPLspq pic.twitter.com/3agFZllEEQ
— 多米尼克·彼得斯 (@DominikPeters) 2023 年 4 月 30 日
总结
OpenAI 凭借 ChatGPT 代码解释器取得的突破,对程序员和非程序员而言都具有革命性的意义。它能够处理各种任务——从协助开发人员进行调试到轻松完成巴黎式测验——这充分证明了人工智能在提升我们数字体验方面的无限潜力。以下是我们深入研究的精髓:
了解你的工具:就像与同事交朋友一样,熟悉一下代码解释器。它基于 Codex 设计,并根据 GPT-4 进行了微调。它能够熟练掌握多种编程语言,是您所有编程冒险的理想伴侣。
拥抱人工智能革命:传统的编码实践即将发生巨大的转变。 借助 ChatGPT 代码解释器等人工智能驱动的工具,可以加快错误识别、代码生成甚至代码审查等任务。
不仅仅是代码:解释器的应用范围不仅限于文本或代码。它能够处理多种文件格式,从简单的 TXT 文件到复杂的 PY 脚本,这凸显了它在各个领域的实用性。
永远不要停止实验:我们对 NLTK 库安装的探索体现了持久性和适应性的重要性,而这正是代码解释器所体现的价值观。如果出现问题,通常总有办法解决。
加入人工智能对话:巴黎地区测验所展示的实际应用程序强调了该工具在现实世界中的巨大实用性。 拥抱它,探索它,让它放大你的项目。
总而言之,ChatGPT 代码解释器不仅仅是一个工具;它正在改变我们与科技连接的方式。对于创新者和爱好者来说,它预示着一个充满编码潜力的世界。






















