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