type
status
date
slug
summary
tags
category
icon
password

Open Interpreter 介绍及其使用方法 | 自然语言控制你的电脑系统

notion image
Open Interpreter 让LLM能够在本地运行代码(Python、Javascript、Shell等)。安装后,您可以通过在终端中运行 $ interpreter 与Open Interpreter进行ChatGPT风格的界面聊天。
这为您的计算机的通用功能提供了自然语言界面:
  • 创建和编辑照片、视频、PDF等。
  • 控制Chrome浏览器进行研究
  • 绘制、清理和分析大型数据集
  • ...等等。
⚠️ 注意:在运行代码之前,您将被要求批准代码。

项目主页

open-interpreter
OpenInterpreterUpdated Apr 6, 2024

演示

快速开始

终端

安装后,只需运行 interpreter

Python

GitHub Codespaces

按下此仓库的GitHub页面上的 , 键以创建codespace。片刻后,您将收到一个预装了open-interpreter的云虚拟机环境。然后,您可以直接并自由地与其交互,并确认其执行系统命令,而不必担心损坏系统。

与ChatGPT的代码解释器的比较

OpenAI发布了代码解释器与GPT-4,为使用ChatGPT完成现实世界任务提供了绝佳机会。
然而,OpenAI的服务是托管的、闭源的,并且受到严格限制:
  • 无互联网访问。
  • 最大上传100 MB,最大运行时间限制为120.0秒。
  • 状态在环境死亡时被清除(与任何生成的文件或链接一起)。

Open Interpreter通过在您的本地环境中运行来克服这些限制。它可以完全访问互联网,不受时间或文件大小的限制,并且可以使用任何包或库。
这将GPT-4的代码解释器的强大功能与您本地开发环境的灵活性相结合。

命令

  • 更新:生成器更新(0.1.5)引入了流式传输:

交互式聊天

要开始终端中的交互式聊天,可以从命令行运行 interpreter
或从.py文件中运行 interpreter.chat()
您还可以流式传输每个块:

程序化聊天

为了更精确的控制,您可以直接将消息传递给 .chat(message)

开始新的聊天

在Python中,Open Interpreter记住了对话历史记录。如果您想要重新开始,可以重置它:

保存和恢复聊天

interpreter.chat() 返回消息列表,可以使用 interpreter.messages = messages 恢复对话:

自定义系统消息

您可以检查和配置Open Interpreter的系统消息,以扩展其功能、修改权限或提供更多上下文。

更改您的语言模型

Open Interpreter使用LiteLLM连接到托管的语言模型。
您可以通过设置model参数来更改模型:
在Python中,在对象上设置模型:

本地运行Open Interpreter

终端

Open Interpreter可以使用与OpenAI兼容的服务器在本地运行模型。(LM Studio、jan.ai、ollama等)
只需使用您的推理服务器的api_base URL运行 interpreter(对于LM studio,默认为 http://localhost:1234/v1):
或者您可以使用Llamafile在不安装任何第三方软件的情况下运行
有关更详细的指南,请查看Mike Bird的这个视频
如何在后台运行LM Studio。
  1. 下载 https://lmstudio.ai/ 然后启动它。
  1. 选择一个模型,然后点击 ↓ 下载
  1. 点击左侧的 ↔️ 按钮(在 💬 下方)。
  1. 选择您的模型,然后点击 启动服务器
一旦服务器运行,您可以开始与Open Interpreter的对话。
**注意:**本地模式将您的 context_window 设置为3000,将您的 max_tokens 设置为1000。如果您的模型有不同的要求,请手动设置这些参数(见下文)。

Python

我们的Python包为您提供了更多对每个设置的控制。要复制并连接到LM Studio,请使用以下设置:

上下文窗口,最大令牌

您可以修改本地运行模型的 max_tokenscontext_window(以令牌为单位)。
对于本地模式,较小的上下文窗口将使用更少的RAM,因此如果出现故障/速度慢,我们建议尝试一个更短的窗口(~1000)。确保 max_tokens 小于 context_window

详细模式

为了帮助您检查Open Interpreter,我们有一个 --verbose 模式用于调试。
您可以通过使用其标志(interpreter --verbose)或在聊天中激活详细模式:

交互式模式命令

在交互式模式中,您可以使用以下命令来增强您的体验。以下是可用命令的列表:
可用命令:
  • %verbose [true/false]:切换详细模式。没有参数或使用 true 时,它进入详细模式。使用 false 时退出详细模式。
  • %reset:重置当前会话的对话。
  • %undo:从消息历史记录中删除上一个用户消息和AI的响应。
  • %tokens [prompt]:(实验性)计算下一个提示作为上下文将发送的令牌,并估计其成本。可以选择计算 prompt 的令牌和估计成本(如果提供了一个)。依赖于 LiteLLM的 cost_per_token() 方法 进行估计成本。
  • %help:显示帮助消息。

配置/配置文件

Open Interpreter允许您使用 yaml 文件设置默认行为。
这提供了一种灵活的方式来配置解释器,而无需每次更改命令行参数。
运行以下命令打开配置文件目录:
您可以在那里添加 yaml 文件。默认配置文件名为 default.yaml

多个配置文件

Open Interpreter支持多个 yaml 文件,允许您轻松切换配置:

示例FastAPI服务器

生成器更新使Open Interpreter能够通过HTTP REST端点进行控制:
您也可以简单地运行 interpreter.server() 来启动与上述相同的服务器。

Android

在Android设备上安装Open Interpreter的逐步指南可以在 open-interpreter-termux repo 中找到。

安全通知

由于生成的代码在您的本地环境中执行,它可以与您的文件和系统设置交互,可能导致意外的结果,如数据丢失或安全风险。
⚠️ Open Interpreter在执行代码之前会要求用户确认。
您可以运行 interpreter -y 或设置 interpreter.auto_run = True 来绕过此确认,这样做的话:
  • 在请求修改文件或系统设置的命令时要谨慎。
  • 像自动驾驶汽车一样监视Open Interpreter,并准备通过关闭终端来结束进程。
  • 考虑在受限环境中运行Open Interpreter,如Google Colab或Replit。这些环境更加隔离,降低了执行任意代码的风险。
实验性安全模式支持,以帮助缓解一些风险。

工作原理

Open Interpreter为函数调用语言模型配备了一个 exec() 函数,该函数接受一个 language(如 "Python" 或 "JavaScript")和要运行的 code
然后我们将模型的消息、代码和您的系统的输出作为Markdown流式传输到终端。

贡献

感谢您对贡献的兴趣!我们欢迎社区的参与。
有关如何参与的更多详细信息,请参阅我们的 贡献指南

路线图

访问 我们的路线图 以预览Open Interpreter的未来。
注意:此软件与OpenAI无关。
notion image

QA对

Q:Open Interpreter 是什么?

A: Open Interpreter 是一个开源项目,它允许用户在本地运行代码(如 Python、Javascript、Shell 等),并与语言模型进行交互,从而实现类似于 ChatGPT 的界面聊天。

Q:Open Interpreter 有什么优点?

A: Open Interpreter 的优点包括能够在本地环境中运行,无互联网访问限制,可以使用任何包或库,没有时间或文件大小限制,提供了更多的灵活性和控制。

Q:如何安装 Open Interpreter?

A: 可以通过运行 pip install open-interpreter 命令来安装 Open Interpreter,如果安装有问题,可以参考官方的安装指南。

Q:如何在终端中使用 Open Interpreter?

A: 安装完成后,用户可以通过在终端中运行 interpreter 命令来启动 Open Interpreter,并与之进行交互式聊天。

Q:Open Interpreter 支持哪些编程语言?

A: Open Interpreter 支持多种编程语言,包括但不限于 Python、Javascript、Shell 等。

Q:Open Interpreter 如何与语言模型交互?

A: Open Interpreter 通过将用户的消息、代码和系统输出作为 Markdown 流式传输到终端,从而实现与语言模型的交互。

Q:Open Interpreter 的安全措施是什么?

A: Open Interpreter 在执行代码之前会要求用户确认,以防止意外的结果。用户可以通过设置 interpreter.auto_run = True 来绕过此确认,但需要谨慎操作。

Q:Open Interpreter 支持自定义配置文件吗?

A: 是的,Open Interpreter 支持使用 yaml 文件来设置默认行为,提供了灵活的配置方式。

Q:Open Interpreter 支持程序化聊天吗?

A: 是的,Open Interpreter 允许用户通过直接将消息传递给 .chat(message) 来实现程序化聊天,提供更精确的控制。

Q:Open Interpreter 如何在本地运行模型?

A: Open Interpreter 可以通过使用与 OpenAI 兼容的服务器在本地运行模型,例如 LM Studio、jan.ai、ollama 等。

Q:Open Interpreter 支持交互式模式命令吗?

A: 是的,Open Interpreter 在交互式模式中支持一系列命令,如 %verbose%reset%undo%tokens%help 等。

Q:Open Interpreter 支持多语言文档吗?

A: 是的,Open Interpreter 提供了多种语言的文档,包括日文、中文版、印地语等。

Q:Open Interpreter 有示例 FastAPI 服务器吗?

A: 是的,Open Interpreter 提供了示例 FastAPI 服务器代码,可以通过 HTTP REST 端点进行控制。

Q:Open Interpreter 可以在 Android 设备上安装吗?

A: 是的,可以在 Android 设备上安装 Open Interpreter,具体步骤可以参考 open-interpreter-termux repo。

Q:Open Interpreter 的工作原理是什么?

A: Open Interpreter 为函数调用语言模型配备了一个 exec() 函数,该函数接受一个 language 和要运行的 code,然后将模型的消息、代码和系统输出流式传输到终端。

Q:Open Interpreter 的未来路线图是什么?

A: 可以访问 Open Interpreter 的 GitHub 页面查看其未来路线图,了解即将推出的新功能和改进。

Q:Open Interpreter 与 OpenAI 有关系吗?

A: 注意,此软件与 OpenAI 无关,是一个独立的开源项目。

Q:Open Interpreter 支持安全模式吗?

A: 是的,Open Interpreter 有实验性的安全模式支持,以帮助缓解一些风险。

Q:Open Interpreter 支持命令行模式吗?

A: 是的,Open Interpreter 支持命令行模式,用户可以通过命令行传入参数来执行下载任务,或者从浏览器读取 Cookie 并写入配置文件。

Q:Open Interpreter 支持哪些操作系统?

A: Open Interpreter 支持多种操作系统,包括 Windows、macOS 和 Linux 等。
GPT PILOT | 你的AI开发伙伴哔哩下载姬(跨平台版) / Bilibili 视频下载
Loading...