nikkie-ftnextの日記

イベントレポートや読書メモを発信

MyGPTsのActionってなんだろう? WebPilotを例に理解の第一歩

はじめに

スキルを数えるスキル1、nikkieです。

以前に少し触ったMyGPTsの素振りの続きです。

いろんなGPTが世に解き放たれていますが、Actionという概念を理解したいなと思いました。

目次

Actionの例:WebPilot

Actionのドキュメントはこちら:
https://platform.openai.com/docs/actions

今回は既存のAction、WebPilotを設定してみました。

  • OpenAIが提供するWeb Browsingのチェックを外す
    • 代わりにWebPilotを使う設定をしていく
  • ConfigureタブのActionsで「Create new Action」

(上の画像は、設定を終え、「gpts.webpilot.ai」Actionができている状態です)

設定値

  • Schemaは「Import from URL」で https://gpts.webpilot.ai/gpts-openapi.yaml を指定してImport2
    • これにより Available actions が設定された(YAMLで定義されているっぽい)
  • Authenticationは「None」のまま
  • Privacy policyに https://gpts.webpilot.ai/privacy_policy.html を指定
    • 今回はActionを設定する素振り目的なので精査していませんが、WebPilotのPrivacy policyをよく確認の上でご利用ください

これだけで済みました、簡単!
「gpts.webpilot.ai」Action、できあがり!

このGPTとの会話の様子です。
URLで指定した論文を要約してもらっています

(許可を求められています3。先ほどのPrivacy policyですね)

要約を見ると、PDFの内容が取得できていると思われます!
これはOpenAIのWeb Browsingでは取得できなかったんですよ

雑感

WebPilot Actionがすごい

PDFが取得できるのはすごいですね。

WebPilot Actionでは、GPTがWebPilotとやり取りしてURLのコンテンツが取得できています。
Actionの中の動きはブラックボックスです。

デフォルトのOpenAI製Web Browsingでは、進行状況の表示によると、まずBingで検索する動きをしています。
PDFを指定したときは、Bingで検索した後にアクセスできないと返されました

WebPilotを知ったきっかけは性能がいいというこちらの投稿です

WebPilot Actionを使わないワークアラウンド

今回比較のために以下のGPTsを試しています。

これらにはarXiv Vanityのリンクを渡すとうまくいきました。
https://www.arxiv-vanity.com/papers/1412.6980/

arXiv Vanity4はPDFの代わりにレスポンシブのサイトとしてarXivの論文を表示します。
これはOpenAI製Web Browsingでアクセスできるんですね(Bingで検索 -> アクセス -> 内容取得している)。

「論文読める君」が、Bingで検索 -> arXiv Vanityにアクセスという動きをしていて、arXiv Vanityを知りました。

GPT Builderがすごい

以前触ったときにも体験した5のですが、自然言語でconfigureできるのは改めてすごいなと思いました。

Builderとやり取りを重ねる中で、ラクティスに沿ったと思われるconfigureになるんですよね。
Instructions、独力では絶対に以下のフォーマットを導けないです

Role and Goal:

Constraints:

Guidelines:

Clarification:

Personalization:

このチャットUIにより、ノーコードでカスタマイズしたGPTができちゃうわけですよ!
そしてActionを使えば、カスタマイズしたGPTは外部のAPIを利用できるわけです。
できることがめちゃくちゃ広がります!

感想

既存のActionを指定して、Actionの概念を掴みました。
Actionを介してGPTが外部のシステムと対話し協働する、これってアイうた(アイの歌声を聴かせて)の世界観じゃん!
テンション上がってきた

P.S. この先はAction自作へ

以下を参考に引き続き手を動かす予定です。


  1. これはOpenAPIの仕様で、https://platform.openai.com/docs/actions/hosted-openapi-specification によるとOpenAIがホストもしてくれるみたいです(With Actions, OpenAI now hosts the OpenAPI specification for your API.
  2. YAMLではx-openai-isConsequentialをfalseにしています。このパラメタの設定については https://platform.openai.com/docs/actions/consequential-flag に記載があります
  3. https://github.com/arxiv-vanity/arxiv-vanity
  4. からあげさんの記事を参照しています