利用 OpenInterpreter 和 SiliconCloud API 打造程序员超级终端

Open Interpreter 是github上的一个开源项目,允许大语言模型在终端编写和运行代码,您可以通过安装后运行终端中类似 ChatGPT 的界面与 SiliconCloud API支持的包括 Llama3、Mixtral、Qwen、Deepseek等大模型聊天,赋予计算机的终端功能一个自然语言接口,可以通过终端创建和编辑照片、表格等。控制 Chrome 浏览器执行研究,以及绘制和分析大型数据集。每次Open Interpreter执行代码前都会申请我们批准。

SiliconCloud基于优质的大语言模型提供服务,包括 Llama3、Mixtral、Qwen、Deepseek等,为用户提供超快的模型访问体验。只需一行代码,开发者即可快速迁移到SiliconCloud的快速模型服务上,不仅响应速度快,还有大量的免费模型可以用,真的很香。

第一步

安装Open Interpreter-Github
在终端输入下方命令

pip install open-interpreter

安装后使用 interpreter --version验证是否安装成功,如果没反应就重启一下终端试试

image

第二步

注册SiliconCloud API并获取key,注册地址点这里 aff
注册会送14元初始额度,大概能和付费的大模型聊个几千次了,日常使用半年没问题,当然还有很多免费的大模型可以用.
注册之后还能直接聊天免费体验国内最先进的大模型

然后找到api密钥这里创建一个api密钥


复制一下。

第三步

打开已经安装过open-interpreter的终端,输入

interpreter --api_base "https://api.siliconflow.cn/v1" --api_key "<你的key>" --model <deepseek-ai/DeepSeek-Coder-V2-Instruct>  

这里的模型你可以随便更换

如图所示,假如我们想用命令行实现翻译,可以用Qwen/Qwen2-7B-Instruct这样的免费模型

效果是不是相当可以
当然你还可以利用它进行一些比较复杂的操作,比如截图,这时候我会切换为更高级的付费模型比如deepseek-ai/DeepSeek-Coder-V2-Instruct
看一下聊天过程

 帮我生成屏幕截图放在电脑桌面上

We were unable to determine the context window of this model. Defaulting to 8000.

If your model can handle more, run interpreter --context_window {token limit} --max_tokens {max tokens per response}.

Continuing...


  好的,我会帮你生成屏幕截图并将其放在电脑桌面上。我们将使用Python来完成这个任务。

                                                           计划

   1 使用Python的PIL库来截取屏幕。
   2 将截图保存到桌面上。

                                                         执行步骤

   1 安装必要的Python库(如果尚未安装)。
   2 编写Python代码来截取屏幕并保存截图。

  我们先安装必要的库:

  pip install pillow pyscreenshot

  Would you like to run this code? (y/n)

  y

  pip install pillow pyscreenshot

  C:\Users\Desktop>pip install pillow pyscreenshot
  Requirement already satisfied: pillow in c:\users\appdata\local\programs\python\python312\lib\site-packages (10.4.0)
  Collecting pyscreenshot
    Obtaining dependency information for pyscreenshot from
  https://files.pythonhosted.org/packages/c6/fb/acc0b5a7251682cd11c67c40a1532ffb1dda71626e9ad7e7ba1e55cc3ae2/pyscreenshot
  -3.1-py3-none-any.whl.metadata
    Downloading pyscreenshot-3.1-py3-none-any.whl.metadata (1.4 kB)
  Collecting EasyProcess (from pyscreenshot)
    Obtaining dependency information for EasyProcess from
  https://files.pythonhosted.org/packages/9c/cf/27d1f4b3bae5e566f94fc716e048120128cf603d5163638d22bcd0fc92d8/EasyProcess-
  1.1-py3-none-any.whl.metadata
    Downloading EasyProcess-1.1-py3-none-any.whl.metadata (855 bytes)
  Collecting entrypoint2 (from pyscreenshot)
    Obtaining dependency information for entrypoint2 from
  https://files.pythonhosted.org/packages/42/ee/84c8990b08efa0265bd10fc8781ef26e3157715bf0dfa47ee3c056b513d4/entrypoint2-
  1.1-py2.py3-none-any.whl.metadata
    Downloading entrypoint2-1.1-py2.py3-none-any.whl.metadata (1.0 kB)
  Requirement already satisfied: mss in c:\users\appdata\local\programs\python\python312\lib\site-packages (from
  pyscreenshot) (9.0.1)
  Downloading pyscreenshot-3.1-py3-none-any.whl (28 kB)
  Downloading EasyProcess-1.1-py3-none-any.whl (8.7 kB)
  Downloading entrypoint2-1.1-py2.py3-none-any.whl (9.9 kB)
  Installing collected packages: entrypoint2, EasyProcess, pyscreenshot
   A new release of pip is available: 23.2.1 -> 24.2
   To update, run: python.exe -m pip install --upgrade pip

  这个输出意味着我们已经成功安装了所需的Python库pillow
  和pyscreenshot。接下来,我们可以继续编写Python代码来生成屏幕截图并将其保存到桌面上。

  以下是Python代码:

  import datetime
  import pyscreenshot as ImageGrab
  import os

  # 获取桌面路径
  desktop_path = os.path.join(os.path.expanduser("~"), "Desktop")

  # 生成截图文件名,使用当前日期时间
  screenshot_filename = f"screenshot_{datetime.datetime.now().strftime('%Y%m%d_%H%M%S')}.png"
  screenshot_path = os.path.join(desktop_path, screenshot_filename)

  # 截取屏幕并保存
  screenshot = ImageGrab.grab()
  screenshot.save(screenshot_path)
  print(f"Screenshot saved to {screenshot_path}")


  Would you like to run this code? (y/n)

  y


  import datetime
  import pyscreenshot as ImageGrab
  import os

  # 获取桌面路径
  desktop_path = os.path.join(os.path.expanduser("~"), "Desktop")

  # 生成截图文件名,使用当前日期时间
  screenshot_filename = f"screenshot_{datetime.datetime.now().strftime('%Y%m%d_%H%M%S')}.png"
  screenshot_path = os.path.join(desktop_path, screenshot_filename)

  # 截取屏幕并保存
  screenshot = ImageGrab.grab()
  screenshot.save(screenshot_path)
  print(f"Screenshot saved to {screenshot_path}")
  Screenshot saved to C:\Users\Desktop\screenshot_20240825_234552.png
  这个输出意味着屏幕截图已经成功生成,并且被保存到了指定路径C:\Users\Desktop\screenshot_20240825_234552.png。
  我们已经完成了所有步骤,任务已经成功完成。如果您有其他任务,请随时告诉我。如果没有其他任务,那么我们可以结束这次对话。

有没有一种贾维斯的既视感,是不是有点东西
当然用来编写代码也不在话下,如下图

效果是不是也还可以
这个openInterprinter结合SiliconCloud API应该还有很多玩法,比如利用powershell或bash的快捷指令定义一些有预置提示词的专业AI助手,比如定义一个专业的翻译、专业的前端程序员、SQL编写者等,有待探索中,后面会继续更新。

aff

5 个赞

感谢你的分享

看起来相当强大,但是咱没有终端

大佬有点厉害,强呀强

From 人工智能 to 资源荟萃