話題になっていた、Open Interpreterを触ってみたので手順メモ残します。
Open Interpreterとは
・GPT-3.5や4.0, Llamaなどの大規模言語モデル活用して開発されたオープンソースのツール
・ローカル環境で活用可能な為、ネット経由もモジュールやデータを活用できる
・Python以外にもJavascriptなど多言語対応されていて様々なコード処理が可能
↓大枠は公式のページやqiita上でバズってたブログを参照
Demoのコードを触ってみる
Demoコードが用意されていたので、早速触ってみる。
が、Code Llamaで実行するには、interpreterのコマンドを打った後にopenAIのkeyを入力せずに、enterを押せば、Code-Llamaを選択できるとあったのですが、次にCode-Llamaのparameterを打つ画面が出ると思いきや、自動で7Bが選択されて、その上で以下のようなエラーとなりました。
原因不明だったため、colabでCode-Llamaは使えないのかもと思い、ローカルで対応する方向にしました。
ローカル環境でDocker使ってopen Interpreter使ってみる
Open Interpreterはコードの実行にあたり、必要なパッケージが見つかると自動的にインストールしてくれてとっても便利ですが、普段使っている環境への影響が心配な方は、Dockerや仮想環境を利用すると良い。と注意書きがあったので、Dockerを利用して試してみます。(要macへのDocker Desktopのインストール)
以下のgitがすでにDocker対応しているようなので活用させてもらいました。
Docker環境立ち上げとopen Interpreterのインストール
Docker Desktopを起動する
## gitの環境へ移動(ローカルでgit管理してるフォルダを指定)YY cd git ## open-interpreterのdocker利用のモジュールを取得 git clone https://github.com/karaage0703/open-interpreter-docker ## 作業フォルダ移動 cd open-interpreter-docker ## Dockerのbuild docker build -t ubuntu:open-interpreter-docker . ## Dockerのrun(起動) docker run -it --rm -v $(pwd):/root ubuntu:open-interpreter-docker ## code-interpreterの起動 interpreter --local
上記コードを全て実行した後は以下のような画面表示がされるので、
- Parameter: 7B
- Quality: Low
- Use GPU?: Y
- Code-Llamaのインターフェースパッケージ(llama-cpp-python)のInstall: Y
※GPUを利用するかどうか?の選択をnにした方が処理が早くなった気がするので、自然言語で指示をするぐらいであれば、GPU使わない方が良さそうです。
以下のように、llama-cpp-pythonがインストールできずにエラーが発生
手動でインストールをして再実行する
## llama-cpp-pythonをpipでインストールする pip install llama-cpp-python ## code-interpreterの起動 interpreter --local
これで、Code-Llamaが使えそうです!
code Interpreterを使ってみる(ターミナルにて)
## code Interpreterを開始 interpreter > {ここに文章を打ち込むと返事が返ってくる}
code Interpreterを使ってみる(pythonスクリプトにて)
## モジュールをインポートする import interpreter ## code Interpreterを開始 interpreter.chat() > {ここに文章を打ち込むと返事が返ってくる}
open Interpreterをcode Llamaで触ってみて
プロンプトをいくつか投げてみた感想です。
2023/9/18時点では、code Llamaの7Bモデル(学習パラーメータは70億)だと、日本語の精度はGPT-3.5や4.0に比べるとかなり低そうで、英語での指示が前提になりそう。と思いました。
後はローカル環境での実行のためか、返答もかなり遅いです(PCの性能が微妙なだけかも)
現状業務などに使うのはちょっと難しそうな印象でした。
とはいえ、完全オープンソースで無料で利用できる。というのが最大のメリットの為、今後の改善やPCやデバイスの性能向上によっては使えるようになると思うので、将来が楽しみではあります!