クイックスタート・ファイルをもとに、ChatGPTプラグイン機能の概要を調べる
この記事に書いてあること
ChatGPTのプラグインがどのように機能しているかを、公式で用意されたクイックスタート・ファイルをもとに探っていきます。
実際に動作させるまでの手順と、機能の利用、わかったことを紹介します。
クイックスタート・ファイル
ChatGPT plugins quickstart として用意されているのは、簡易To Doアプリです。
このチュートリアル・ファイルは、まずは概要を理解する目的で簡易な機能を持つものとして、作成されています。
どこかのAPIサーバへアクセスする訳ではない
ログインやOAuthなどの認証が不要
エンドユーザーとのやり取りの中でTo Doリストの登録・修正・削除を行います。To Doリストのデータは実行ファイル内部の変数で保有します。
プラグインの最小限の構成ファイル
main.py
openapi.yaml
.well-known/ai-plugin.json
実際にやったこと
以下の順序でやったことを紹介します。
準備
起動する
プラグイン機能を利用する
動作させるまでの手順
準備
Pythonのインストール
Pythonのヴァージョン指定は特にありませんでしたので、執筆時の最新版であるヴァージョン3の `3.11.2` を利用しました。Pyenvを利用してインストールします。
pyenv install 3.11.2
pyenv local 3.11.2
plugins quickstartのインストール
あとは公式のガイダンス通りですが、一部手順が抜けている箇所もあるので、ここで補完します。
git clone https://github.com/openai/plugins-quickstart.git
cd plugins-quickstart
ほかのユーザーからも指摘がありますが、(23-06-01の時点では)ファイルに記述ミスがあり、このままでは正常に動作しません。修正します。
必要なパッケージのインストール
pip install -r requirements.txt
起動する
Pythonファイルの実行
python main.py
ブラウザでの操作
ブラウザで https://chat.openai.com へアクセスする(私はChromeを使用しました)
モデルのドロップダウンから "Plugins" を選択する
その中から "Plugin store" を選択する
モーダルウインドウの右下にある "Develop your own plugin" というリンクをクリックする
Domain欄へ `localhost:5003` と入力し、`Find manifesto file`ボタンをクリックする
機能の利用
To Doの登録や修正を行えたほか、優先度の高い順に列記してもらうことも出来ました(その場合は、To Doに含まれている実行タイミングや締切をもとに判断しているようです)。
わかったこと
ChatGPTのプラグイン開発、APIサーバは用意するとして、プラグイン自体の中身自体はAPIエンドポイントの定義をPython 1ファイルで記述するだけのようです。厳密にはあと2つほど設定ファイルを用意しますが。
ユースケースとして明示されているのは、自社で用意するAPIサーバを使用するというだけのようですね。
技術的・利用規約的に内部で他社サーバを利用してOKかどうかは今後調査してみます。一見NGとは書いてないのだけど。