Open Interpreter 利用 Code Interpreter 实现本地化
前言
去年 7 月,OpenAI 发布了一个强大的插件,名为 Code Interpreter(代码解释器),它可以根据用户的自然语言需求生成并执行代码解决方案,帮助完成各种任务,如数据分析、图表创建和文件编辑等。
尽管 OpenAI 的 GPT-4 代码解释器改变了游戏规则,但它也有一些特定的限制。OpenAI 的解决方案是托管的,它在受控的远程环境中运行,限制了开发人员对本地设置的控制。这导致了一些明显的限制,比如无法访问互联网、有限的预安装软件包、最大上传大小为 100MB 以及运行时间限制为 120 秒。而且,当环境终止时,任何生成的文件或链接都会丢失,对于长时间运行的任务可能会带来不便。
然而,现在有一个名为 Open Interpreter 的开源项目解决了这些问题。Open Interpreter 可以在本地环境中运行,可以访问互联网,没有文件大小和运行时间的限制,并且可以利用任何包或库。正式发布的 Open Interpreter 在短短不到一周的时间内就获得了惊人的 16.8k stars,可见其受欢迎程度。
Open Interpreter 介绍
Open Interpreter 是一个开源工具,提供交互式和编程聊天功能,让用户可以通过在终端中运行解释器与其进行对话。开发人员可以编写任务和工作流程脚本,直接传递消息给解释器,以便更精确地控制。用户可以检查和配置系统消息,以满足个人偏好和项目要求的灵活性。

Open Interpreter 不仅仅是另一个编码解释器。它是一个专注于复杂任务的强大工具,允许语言模型在您的计算机上运行代码,以完整地编写应用程序、任务等。它是 OpenAI 代码解释器的实现,可以运行 GPT4 和其他模型,支持 Python、JavaScript、Shell 等语言的代码。
Open Interpreter 的独特功能之一是其终端中类似聊天的界面,允许用户以更直观和用户友好的方式与之交互。该解释器不仅可以编写代码,还可以创建和编辑照片、视频、PDF 和其他文件。它可以控制网络浏览器进行网络搜索,并通过网络上的不同区域进行搜索,以实现并提供必要的链接。
核心特点
Open Interpreter 的核心特点包括:
互联网访问自由:
在本地运行的 Open Interpreter 可以完全访问互联网,允许免费访问外部 API 和数据库,提高项目的灵活性。
包和库选择:
Open Interpreter 允许使用任何包或库,使您能够选择最适合您项目的工具。
无限的运行时间和文件大小:
Open Interpreter 没有执行时间或文件大小的限制,可以顺利进行大规模数据分析和计算处理。
确保安全性:
在执行代码之前,Open Interpreter 需要用户确认,以防止执行未经授权的代码,提高安全性。
物有所值:
Open Interpreter 是一个免费的开源项目,对于初创公司和个人开发人员来说,降低成本是一个重要优势。
支持多种编程语言:
Open Interpreter 不仅支持 Python,还支持 JavaScript、Bash 等多种编程语言,适用于更广泛的应用程序。
总之,Open Interpreter 是一个多功能且灵活的开源编程工具,具有本地行为、多语言支持、包和库选择、无限运行时间和文件大小、高级安全性以及物有所值等特点。这些特性极大地提高了项目的灵活性和效率,使其成为广泛用户,包括初创公司、大型企业和个人开发人员的有用工具。
基本使用
4.1:安装部署

安装完成后,在 Terminal 输入 interpreter 就可以启动使用 Open Interpreter。默认会提示输入 OPENAI_API_KEY,则使用 GPT-4 执行,否则使用本地 Code-LLama 执行。如果使用 azure openai 则需要输入 azure/openai,更多其他模型的使用请参考https://docs.openinterpreter.com/guides

4.2、本地运行
Open Interpreter 允许 LLM 在本地运行 Python、Javascript、Shell 等语言的代码。如果没有 GPT-4 API,也可以通过如下命令行使用开源模型 Code Llama 如果您将其与 openai 型号一起使用,首次安装时较小 (50kb) 。如果您使用 code-llama 在本地运行它(它会为您安装它,让您选择模型大小),则大小从 3GB 到 30GB 不等。如果您运行 interpreter --local,它会自动安装并使用 Code Llama。
例如输出 hello world,open interpreter 在执行任意代码之前都会要求确认

使用示例
5.1:文件处理内容分析



可以看到 Open Interpreter 使用名为 pandas 的 Python 库来解决它,最终成功编写完程序并执行获取到结果。
5.2:数学计算


5.3、联网支持
自从 GPT-4 关闭联网功能之后,基本上没有几个大模型可以很好的实现联网能力,Open Interpreter 可以完全访问互联网,允许免费访问外部 API 和数据库,提高项目的灵活性。例如我们输入查询:“获取全球人工智能领域 LLM 大语言模型相关的 10 条最新新闻”

Open Interpreter 首先会根据输入的问题整理好解决问题的思路,然后按步骤来完成并一步步去实现



可以看到在 Open Interpreter 的执行过程中,对于出现的错误也能很好的自我进行修复,最终完成了结果的输出。
5.4、链接使用数据库的能力发掘
可以直接在提示词中输入需要处理的内容和链接信息或以文件的形式读取,告诉大模型相关信息



在输入的信息足够的情况下可以让模型自动生成相关的 sql 语句,完成复杂任务的执行。
除了以上的示例之外,还能使用 open interpreter 进行图表分析绘制,提取分析视频等各类更复杂的任务,充分发觉大模型的潜力。
总结
Open Interpreter 是一个突破性的开源项目,它不仅解决了 OpenAI GPT-4 代码解释器在远程环境中运行所带来的诸多限制,还为开发人员提供了更广泛的功能和灵活性。
作为一个可以在本地环境中运行的工具,Open Interpreter 可以访问互联网,没有文件大小和运行时间的限制,并且可以利用任何包或库。它的出现,使得开发人员能够更自由地进行内容创建、数据处理以及各种任务的执行。此外,Open Interpreter 还提供了交互式和编程聊天功能,使得用户可以通过在终端中运行解释器与其进行对话,更精确地控制任务和工作流程。
Open Interpreter 不仅是一个编码解释器,它还是一个强大的工具,专注于处理复杂任务,将 GPT-4 代码解释器的强大功能与本地开发环境的灵活性完美结合在一起。
参考资料:
1、https://docs.openinterpreter.com
2、https://github.com/OpenInterpreter/open-interpreter
评论