チャット形式でプログラミングが可能なローカルで動作するオープンソースなAIツール「Open Interpreter」を使ってみた

OpenAIが開発したプラグイン「Code Interpreter」を使用すると、ChatGPTにプログラミングのコードを生成してもらうことが可能ですが、インターネットに接続できないのに加え、使用できるパッケージやアップロードの容量、実行時間などに制限があります。「Open Interpreter」はローカルで動作することでそうした制限を突破し、柔軟にさまざまなプログラムを生成・実行してくれるオープンソースなAIツールとのことなので、実際に使って試してみました。
KillianLucas/open-interpreter: OpenAI's Code Interpreter in your terminal, running locally
https://github.com/KillianLucas/open-interpreter/blob/main/docs/README_JA.md

Open Interpreterの動作のイメージを確認できるムービーが用意されています。
「Can you set my system to dark mode?(システムをダークモードにしてくれますか?)」とプロンプトを入力。

するとAIがコードを生成し、システムをダークモードにしました。

今度はシンプルなポモドーロタイマーの作成を頼んでみます。

AIが自動でHTML・CSS・JavaScriptを生成し、いい感じのタイマーアプリが作成できました。

続いてpdfファイルを指定して「要約できますか?」とプロンプトを入力。

AIが内容を要約してくれます。

「カレンダーの内容をリストアップしてください」

自動でカレンダーアプリが起動します。

予定がリストアップされました。メールでの送信を頼みます。

今度はメールアプリが起動。

メールが送信できました。

Word形式のファイルが保存されているフォルダから新しいターミナルを起動します。

「ここにあるWordファイルをPDFに変換できますか?」

自動でpdf形式のファイルが続々と生成されました。

◆実際に使ってみた
動作イメージが確認できたところで、実際にWindows 10のPCを使用してOpen Interpreterを実行してみます。Open Interpreterを実行するにはPythonが必要なので、まずPythonの公式サイトへ行き、「Downloads」にカーソルをのせると出てくる「Python 3.XX.X」というボタンをクリックします。

インストーラーがダウンロードされるので、ダブルクリックして実行。

「Add python.exe to PATH」にチェックを入れて「Install Now」をクリックします。

インストールが始まるのでしばらく待機。完了したら「Close」をクリックしてインストーラーを終了します。

Pythonのインストールが完了したらスタートメニューを開き、「cmd」と検索すると表示されるコマンドプロンプトをクリックして起動します。

下記のコマンドでOpen Interpreterをインストール。
pip install open-interpreter
そして下記のコマンドで起動します。
interpreter
毎回の起動時にOpenAIのAPI keyの入力を求められます。OpenAIのほか、「Azure」「Anthropic」「Replicate」「AI21」「OpenRouter」「Cohere」「Petals」が利用可能で、ローカルの大規模言語モデルで動作させることも可能とのこと。ただし、GPT-4の利用を強く推奨するとのことだったので今回はGPT-4を使用します。

OpenAIのAPI keysの画面を開き、「Create new secret key」をクリック。

分かりやすい名前をつけて「Create secret key」をクリックします。

新たなAPIキーが生成されるのでコピー。

コマンドプロンプトに戻り、ペーストしてEnterキーを押せば準備完了です。なお、毎回APIキーを入力するのが面倒な場合は環境変数に登録すればOKとのこと。

まずはお試しということで、「Plot AAPL and META's normalized stock prices(AppleとMetaの正規化された株価データを図示してください)」とプロンプトを入力してみました。実行手順の計画とコードが表示され、コードを実行して良いかどうかを尋ねられます。「y」と入力してEnterキーを押します。

エラーが出ましたが、GPT-4がエラーを解析して自動で修正してくれます。新たなコードが生成されるので「y」と入力してEnter。

エラーが出現し、訂正コードが生成されるので「y」と入力してEnterキーを押します。

ようやく必要なライブラリをインポートするという最初の手順をクリアできました。続いて過去の株価データをダウンロードするコードが生成されます。「y」と入力してEnterキーを押します。

株価データがダウンロードできました。続いて正規化します。

そして図示するコードが生成されました。

実行すると下図の通り、無事グラフが完成しました。なお、毎回「y」を入力してEnterキーを押すのが面倒な場合は最初の起動時に「interpreter -y」とオプションをつけて起動すればOK。今回はAIが生成したコードを確認せずに実行するのが怖かったため毎回確認しています。

続いてタイマーアプリを作成してみます。「シンプルなタイマーアプリを生成してください」と日本語で指示してみると、返答は英語ですが無事指示内容は認識してもらえました。ただし、コードを確認するとコマンドラインアプリになってしまっています。

GUIが欲しかったので、「タイマーを実行するウェブアプリを作成してください」とウェブアプリであることをはっきりと指示。

するとHTML・CSS・JavaScriptが生成されてブラウザが開き、下図のタイマーが出現しました。

毎回10秒で固定されているのは使いにくいので、「秒数を設定できるようになりませんか?」と質問してみます。

自動でコードが修正され、再度ブラウザが開きます。今度は秒数を指定できるようになっていました。

デモムービーにあったとおり、システムの設定変更を試してみます。

「システムをダークモードにしてください」と入力すると、「自分で設定画面から設定してね」と返答されました。何回かプロンプトを変更してみましたが自動で設定されることはなく、こうした設定の自動変更は近日登場予定となっているデスクトップアプリを待つしかなさそうでした。

なお、今回の記事でのGPT-4の使用料金は1.96ドル(約293円)でした。

・関連記事
AIの力だけでAngry Birdsのコピーゲームを作成したエンジニアが登場、作成時に使用したプロンプトも公開中 - GIGAZINE
コードを自動生成するAIを使うプログラマーはAIを使用しないプログラマーよりも安全性の低いコードを生成しやすいという研究結果 - GIGAZINE
ChatGPTが生成するコードは必ずしも安全なものではなくChatGPT自身は脆弱性を認識している - GIGAZINE
Metaのコーディング支援AI「Code Llama」に調整を加えることでOpenAIのGPT-4の性能を上回る可能性が報告される - GIGAZINE
GPT-4 TurboがベンチマークでGPT-4を下回ってしまう、ただしベンチマークの内容に問題がある可能性あり - GIGAZINE
・関連コンテンツ
in レビュー, ソフトウェア, Posted by log1d_ts
You can read the machine translated English article I tried using 'Open Interpreter', an ope….