メインコンテンツへスキップ
CHATGPT はウェブ検索を有効にした ChatGPT に質問し、回答、見つけたすべての出典、実行した検索、表示した商品カードや場所カードを返します。

リクエスト

レスポンス

一部を省略したレスポンスの例:
各出典には searchQueries(この出典を結果に含めた検索)、cited(回答がインラインで引用したか)、citedText(各引用が裏付ける回答のテキスト)が付きます。商品のように検索で見つけていない出典には searchQueries がありません。

カードのレイアウト

layout は ChatGPT が回答をカードで表示したときに返ります。nodes は ChatGPT の画面と同じ順に並びます。

includeフラグ

CHATGPT はすべてのレスポンスフラグに対応します。rawResponse と html 以外は既定でオンで、オフにするには false を送ります。

カードの詳細

include.entityDetails を有効にすると、回答の各カード(商品、場所、アプリ、ブランド)について、読者がカードをクリックしたときにChatGPTが開く詳細パネルも受け取れます。説明、仕様、レビューとその根拠ページが含まれます。パネルは独自のページを引用するため、回答本文にない出典まで把握できます。 error は、パネルの取得に失敗した場合は ENTITY_DETAIL_FAILED、パネルに本文がない場合は ENTITY_DETAIL_EMPTY、パネルを開くための会話情報やターンの認証情報がない場合は ENTITY_DETAIL_UNAVAILABLE です。payload.location、CN、HK、代替経路の回答、include.html でもカード詳細を取得できます。 ChatGPTが以前に書いたパネルは約1秒、リクエストを受けて新しく書くパネルは10〜30秒で返り、同時に4つまで開きます。回答ごとにカード20個まで開きます。パネルに追加のクレジットはかからず、続けての質問の回答もそれぞれパネルを受け取ります。

続けて質問する

payload.followUps を使うと、最初の回答のあと同じ会話で最大4回まで順に質問できます。各項目は次のどちらかです。
  • { "prompt": "..." }: 自分で書いた質問。
  • { "select": { "button": 0, "choices": { "budget": "Under $100" } } }: 前の回答にあるフォームのボタンを押します。
button は回答内のボタンを0から数え、既定は最初のボタンです。choices は各 choice ノードの name で、またはフォームの順に配列でオプションを選びます。選ぶ値はオプションの value か label、または0から数えた位置です。選ばなかった項目は ChatGPT が選択していたオプションのままなので、{ "select": {} } はボタン自身の prompt を送ります。
トップレベルのフィールドは最初の回答のままです。レスポンスの followUps には以降の各回答が、送った質問(prompt)、select で押した内容(selection: ボタンの label と各選択肢の値)、最初の回答と同じフィールドとともに並びます。 select を押せなかった場合、残りの質問は送られず、followUpsStopped にその項目の index、code、message が入ります。 タスクは得られた回答とともに完了します。回答ごとに1クレジットで、タスクはすべての続けての質問の分のクレジットを保留し、返した回答の分だけを請求します。include.analysis、include.citationAnalysis、include.html は最初の回答に適用されます。その他のエンジンは followUps を 400 VALIDATION_ERROR で拒否します。

あとから会話を続ける

回答を読んでから次の質問を決めるには、新しい CHATGPT タスクの payload.continueFrom に完了したタスクのidを入れ、prompt か、そのタスクの最後の回答にあるフォームを押す select(ルールは followUps と同じ)を一緒に送ります。
  • フォームを表示した回答には forms が付きます。各フォームの buttons(その順番が select.button)と、name、最初に選ばれていたオプション、options を持つ choices が入ります。
  • conversation.id は会話を始めたタスク、turn はこれまでの回答数、expiresAt は続けられる最後の時刻で、最初の回答から3時間後です。
  • 続きの質問は指定したタスクの最後の回答の下で送られるため、同じタスクを2回指定すると会話が分岐します。
  • 元の country と location を引き継ぎます。省略するか、同じ値を送ってください。
  • 別のアカウントやエンジンのタスク、完了していないタスク、無効な select は 400 VALIDATION_ERROR で、期限切れの会話は 400 CONVERSATION_EXPIRED で拒否されます。どちらも請求されません。
  • 続きの質問の料金は通常の ChatGPT タスクと同じです。

関連ページ