凄すぎると話題の「Open Interpreter」の始め方・使い方まとめ

以下の記事を見て、早速「Open interpreter」を試してみたので、使い方や始め方をまとめておきます

https://note.com/shi3zblog/n/n7eaba88ffe4a



# Open Interpreterとは
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3356814/e54c597d-59cb-32c8-ccd5-4821255e33d4.png)

Open Interpreterは、GPT-3.5、GPT-4、Code Llamaなどの大規模言語モデル（LLMs）を活用して開発されたオープンソースのツールです。

このツールは、OpenAIが提供するChatGPTの「Advanced Data Analysis(旧Code Interpreter)」のオープンソース版とも言える存在で、Python、Javascript、Shellなどのプログラミング言語のコードを自然言語による対話を通じてローカル環境で実行することができます。

このツールの最大の特徴は、ChatGPTの「Advanced Data Analysis」と違いローカル環境で動くため、ファイル容量やネット接続への制約がなく、ChatGPTの「Advanced Data Analysis」より幅広い使い方ができます。

そのため、Open Interpreterを使えば、プログラミングの知識がない方でも、Chromeブラウザでのリサーチ、大量データの分析など、多岐にわたる作業をチャット形式で簡単に行うことができます。

https://openinterpreter.com/

## Open Interpreterの利用の注意点
Open Interpreterの利用には以下のようないくつかのリスクが伴うため、Google ColabやReplitなどの制限された環境での使用を検討することが推奨されています。

:::note warn
利用の注意点
- コードはローカル環境で動作するため、ファイルやシステム設定にアクセスできます。これにより、データの損失やセキュリティ上の問題が生じる可能性があります。
- コード実行時にはユーザーの承認が求められますが、この確認手順を回避する方法も存在しますので、細心の注意が必要です。
- システム設定やファイルを変更するようなコマンドの実行には特に慎重になるよう心掛けましょう。
:::

https://twitter.com/NuCode/status/1700767720332284363?ref_src=twsrc%5Etfw%7Ctwcamp%5Etweetembed%7Ctwterm%5E1700767720332284363%7Ctwgr%5E59d143a58a8421c25c3cada683a44034e8bab507%7Ctwcon%5Es1_&ref_url=https%3A%2F%2Fgenerativeinfo365.com%2F%3Fp%3D1785

実際に勝手に環境構築し始めたり、ライブラリをインストールしたり、ファイルを移動・削除したりとする可能性もあるので、もしローカルで利用する場合にはDocker環境上で動かすことをお勧めします。

https://twitter.com/kajikent/status/1700885403870576664?ref_src=twsrc%5Etfw%7Ctwcamp%5Etweetembed%7Ctwterm%5E1700885403870576664%7Ctwgr%5E59d143a58a8421c25c3cada683a44034e8bab507%7Ctwcon%5Es1_&ref_url=https%3A%2F%2Fgenerativeinfo365.com%2F%3Fp%3D1785


# Open Interpreterの始め方・使い方
Open Interpreterは特別な登録など不要で、インストールすればすぐに利用可能です

色々と解説がついたクイックスタート用のGoogle Colabも公開されているので、サクッと試したい方はこちらのコードを参考にするのが良さそうです。

https://colab.research.google.com/drive/1WKmRXZgsErej2xUriKzxrEAXdxMSgWbb?usp=sharing#scrollTo=loqh8HJ-oQAG

## 1. インストール
```
!pip install open-interpreter
```
## 2. OpenAI APIキーの設定
OpenAIのAPIキーを利用する場合は設定が必要ですが、OpenAIのキーを使用しない場合は、Code-Llamaを利用することができます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3356814/b9aef138-79f2-afb9-304e-5fe5672ac4c8.png)

## 3. 対話的セッションの開始
ターミナルで次のコマンドを実行します

```
import interpreter
```

また、Pythonスクリプトからの利用も可能です
```
interpreter.chat()
```
## 4. プログラム的なチャット
特定のメッセージを直接.chat(message)に渡してコマンドを実行することもできます。
```
interpreter.chat("Add subtitles to all videos in /videos.")
```
## 5. 新しいチャットの開始
Open InterpreterはPython内での会話履歴を保持します。新しい会話を開始する場合は、以下の方法でリセットできます。
```
interpreter.reset()
```
## 6. チャットの保存と復元
会話の履歴を保存して後から再開することができます。
```
messages = interpreter.chat("My name is Killian.", return_messages=True)
interpreter.reset()
interpreter.load(messages)
```

## 7. モデルの変更
gpt-3.5-turboの場合は、fastモードを使用する
```
interpreter --fast
```
### 8. デバッグモード
コントリビューターがOpen Interpreterを調査するのを助けるために、--debugモードは非常に便利です。

ターミナルでコマンドを実行する際には、--debug フラグを使用して起動します。
```
interpreter --debug
```
既に対話的なセッション中でデバッグモードを有効にする場合は、以下のコマンドを入力します。
```
$ interpreter
...
> %debug # <- Turns on debug mode
```
このモードを使うことで、Open Interpreterの動作をより詳細に理解したり、問題を診断する際に役立ちます。


### 9.ローカルでCode Llamaを使う方法（API課金しない方法）
Open InterpreterはGPT-4やGPT-3.5を使う以外に、ローカルでCode Llamaなどのモデルも利用できます。

Code Llama を使用するには、コマンドラインからローカルモードで interpreter を実行します。
```
interpreter --local
```
または、Hugging FaceモデルをそのレポID（例えば “tiiuae/falcon-180B”）を使ってローカルで実行することもできます
```
interpreter --model tiiuae/falcon-180B
```

**参考（公式）**
Macユーザー向け

https://note.com/alexweberk/n/n250db705b06e

Windowsユーザー向け

https://www.munenick.me/blog/open-interpreter-windows11


## 10. ローカルモデルのパラメータ
ローカルで実行するモデルの max_tokens と context_window (トークン単位) を簡単に変更できます。

context_windowを小さくするとRAMの使用量が減るので、GPUが失敗している場合はサイズを短くしてみることをお勧めします。
```
interpreter --max_tokens 2000 --context_window 16000
```
# 実際に使ってみた感想

「Open interpreter」の実力を試すべく、実際にアンケート結果の分析とその結果を使った分析レポートの作成を依頼してそみました！

正直、全然期待していなかったのですが、予想を超えるクオリティでしたので、一部始終を以下の記事で紹介しています

https://generativeinfo365.com/?p=1785