LoginSignup
0
2

OpeninterpreterをAzure OpenAIで試す

Posted at

Azure OpenAI環境にてopeninterpreterを試してみた。

Openinterpreterとは

OpeninterpreterはOpenAIのchatgpt plusにて提供されている「codeinterpreter」のオープンソースクローン。
LLMに対して自然言語でアプローチして、プログラムコードを(ローカル環境にて)実行させることができる。
https://openinterpreter.com/
2023/9/26のupdateでDeveloper Featuresとしてpythonによる実行が追加されたため試してみた。(それまではコマンドラインツールのみだったはず。)

コマンドライン実行

Azure OpenAIでの実行方法が変わっている。以前は環境変数にリソース設定をして --use-azure で起動できたはずだが、オプションが使えなくなっている。代わりに--model(-m)にazure/デプロイ名のオプションにて実行可能。(他LLMサービスを使用する場合も同様。この拡張による変更かと。)

export AZURE_API_KEY=""
export AZURE_API_BASE="https://[AOAI-resourcename].openai.azure.com"
export AZURE_API_VERSION="2023-07-01-preview"

# gpt-4はデプロイ名
interpreter -m azure/gpt-4

pythonプログラム実行

今回追加されたpythonインタフェース。
interpreter.chat()でインタラクティブモードで起動する。

import interpreter
import os

os.environ['AZURE_API_KEY']     = ""
os.environ['AZURE_API_BASE']    = "https://[AOAI-resourcename].openai.azure.com"
os.environ['AZURE_API_VERSION'] = "2023-07-01-preview"

# gpt-4はデプロイ名
interpreter.model="azure/gpt-4"
interpreter.chat()

もしくはメッセージを直接指定する場合、

interpreter.chat("Hi! Can you print hello world?")

実行結果

Sure, here's the code to print "Hello, world!" in Python:
    print('Hello, world!')
When you run this code, it will display "Hello, world!" as the output. 

実行してみる

コマンドラインを起動して、以下の指示を与えてみる。
スクリーンショット 2023-10-15 19.37.53.png

実行計画を示したのち、実行するためのコードを提案してくる。
スクリーンショット 2023-10-15 19.35.30.png

ただし上記のコードは失敗(tableタグを取得することができない)することがわかっており、その後深みにハマっていくため、
「> tableタグから取得するのではなく、テキスト内から探して」
とリクエストするとコードを修正してくれる。
(提案コードはランダムなため、一発でうまくいくコードを教えてくれる場合もある。)

スクリーンショット 2023-10-15 19.36.07.png

コードを実行した結果から答えを教えてくれる。
スクリーンショット 2023-10-15 19.36.27.png

※コード表示した後、コード実行に対して[Y/n]を聞かれる場合もあるが、何も出ない場合もあり、その場合は「y」と入力すると実行する。(ここらは不安定。)

まとめ

まだ不安定だが、何かの要件を満たすためにコーディングしていくステップを代わりにやってくれるため、コーディングの教育用途にも向いていると思われる。(コードエラー時の修正、計画の見直しなど。)
極めて近い将来、自然言語で要件を伝えるだけで、人間側はノーコードで結果を得ることができるように利用できるようになりそう。

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2