メインコンテンツまでスキップ

チャットプラグインBeta

API への ChatGPT 呼び出しをよりスマートにするプラグインを作成する方法を学びます。

序章

OpenAI プラグインは、ChatGPT をサードパーティ アプリケーションに接続します。これらのプラグインにより、ChatGPT は開発者が定義した API とやり取りできるようになり、それによって ChatGPT の機能が強化され、幅広い操作を実行できるようになります。

  • プラグインは、ChatGPT に次のことを許可できます。
  • スポーツのスコア、株価、最新ニュースなどのリアルタイム情報を取得します。
  • 会社のドキュメント、個人的なメモなどのナレッジ ベース情報を取得します。
  • フライトの予約、食事の注文など、ユーザーに代わってアクションを実行します。

::: ヒント プラグインは限定アルファ版であり、まだアクセスできない可能性があることに注意してください。アクセスするには、順番待ちリストに参加してください。アルファ テスト中は、ユーザーや開発者と緊密に協力して、プラグイン システムを反復処理します。プラグイン システムは破壊的な変更を受ける可能性があります。:::

プラグイン開発者は、標準のマニフェスト ファイルとOpenAPI 仕様形式のAPI ドキュメント ファイルを使用して、1 つ以上のオープン API エンドポイント (特定の API を参照) を指定します。これらのファイルはプラグインの機能を定義し、ChatGPT がこれらのファイルを読み取れるようにし、開発者によって定義された API を呼び出します。

AI モデルは、インテリジェントな API 呼び出し元として機能します。API 仕様と API をいつ使用するかの自然言語記述が与えられると、モデルはアクティブに API を呼び出して操作を実行します。たとえば、ユーザーが「パリのどこに何泊すればいいですか?」と尋ねた場合、モデルはオプションでホテル予約プラグイン API を呼び出し、API 応答を受け取り、ユーザー向けの回答を生成できます (API データとその自然言語機能)。

時間が経つにつれて、より高度なユースケースに対応できるようにシステムが進化することが予想されます。

プラグインプロセス

プラグインを構築するには、エンド ツー エンドのプロセスを理解することが重要です。

  1. マニフェスト ファイルを作成し、次の場所でホストします。yourdomain.com/.well-known/ai-plugin.json

    • このファイルには、プラグインに関するメタデータ (名前、ロゴなど)、認証情報 (認証タイプ、OAuth URL など)、およびOpenAPI 仕様形式の API ドキュメント ファイルが含まれています。
    • モデルは、OpenAPI 仕様で記述されたフィールドを参照し、それらのフィールドに自然言語の説明を提供するために使用できます。
    • 最初は 1 ~ 2 個のエンドポイントのみを公開し、使用するパラメーターの数を最小限にしてテキストの長さを最小限に抑えることをお勧めします。プラグインの説明、API リクエスト、API レスポンスはすべて、ChatGPT との会話に挿入されます。コンテンツが多すぎると、モデルのコンテキストの長さの制限に影響を与える可能性があります。
  2. ChatGPT UIにプラグインを登録する

    • 从顶部下拉列表中选择插件模型,然后选择“Plugins(插件)”、“Plugin Store(插件商店)”,最后选择“Install an unverified plugin(安装未经验证的插件)”或“Develop your own plugin(开发自己的插件)”。
    • 如果需要身份验证,请提供 OAuth 2 client_id 和 client_secret 或 API Key
  3. 用户激活您的插件

    • 用户必须在 ChatGPT UI 中手动激活您的插件。(默认情况下,ChatGPT 不会使用您的插件。
    • 在 alpha 期间,插件开发者将能够与 15 个额外的用户共享他们的插件(目前只有其他开发者可以安装未经验证的插件)。后续,我们将推出一种方法来提交您的插件以供审核,以便向 ChatGPT 的所有用户群公开。
    • 如果需要身份验证,用户将通过 OAuth 重定向到您的插件;您也可以选择在创建新帐户。
    • 未来,我们希望构建功能来帮助用户发现有用和流行的插件。
  4. 用户开始对话

    • OpenAI 将在发送给 ChatGPT 的消息中插入对您的插件的简洁描述,最终用户看不到。这将包括插件描述、Endpoint(指具体的某个 API)和示例。
    • 当用户提出相关问题时,如果看起来相关,模型可能会选择从您的插件调用 API 调用;对于 POST 请求,我们要求开发人员构建用户确认流程。
    • 该模型会将 API 结果合并到其对用户的响应中。
    • 该模型的响应中可能包含从 API 调用返回的链接。这些将显示为丰富的预览(使用 OpenGraph 协议,我们在其中提取 site_name, title, description, image, url 字段)”

現在、プラグインの会話ヘッダーでユーザーの国と州を送信します (たとえば、あなたがカリフォルニアにいる場合、{"openai-subdivision-1-iso-code": "US-CA"}のように見えます。より多くのデータ ソースについては、ユーザーは同意画面でオプトインする必要があります。ショッピング、レストラン、天気などでこれを使用できます。より詳しくは開発者詳細をご参照ください。