OpenAIがChatGPTのユーザー信頼と関連性のために構築した新しい広告スタック
従来の広告システムは、検索クエリやページビューといった個別のユーザーイベントに応答するように設計されています。しかし、ChatGPTのような会話型AIでは、ユーザーの意図が複数のターンやセッションを通じて発展するため、OpenAIはこの新しいパラダイムをサポートするカスタム広告配信システムを構築しました。
この新しい広告スタックは、オーケストレーターとして機能するカスタムのポストトレーニング済みフロンティアLLMを中心に構築されています。このLLMは、潜在的なオプションの特定(検索)からユーザーエンゲージメントの予測(ランキング)、有用性の評価(関連性)、そして最終的なオークションの実行に至るまで、広告フロー全体を管理します。
会話型広告のためのアーキテクチャ設計上の決定
エージェント的なチャット環境に広告を統合しつつ、ユーザーの信頼を維持するために、広告システムは3つの重要な設計上の決定を行いました。
1. ステートフルな広告セッションの実装
広告システムはステートフルなセッションを維持します。つまり、複数のターンや異なる会話にわたって情報を記憶し、更新します。このアプローチは、従来の広告の要求応答型アーキテクチャを超越するものです。すべてのメッセージを独立したイベントとして扱うのではなく、広告システムは発展するやり取りに適応し、ユーザーの商業的な目標が時間の経過とともにどのように変化するかを追跡できます。
2. カスタムLLMオーケストレーターの活用
カスタムのポストトレーニング済みLLMが、会話の文脈と根底にある意図を解釈します。このLLMはツール呼び出しアーキテクチャを使用して広告フロー全体を調整し、ユーザーの現在のターンと会話履歴の両方に基づいて広告を選択、ランキング、配信します。
3. 広告と回答生成の分離
広告選択プロセスは、ChatGPTの通常の回答生成と並行して別のサービスで実行されます。このアーキテクチャ上の境界により、広告フローがChatGPTの自然な回答に影響を与えず、モデルの中立的なトーンが維持されます。広告配信システムが失敗したり遅延したりした場合でも、ChatGPTのコアとなる回答は影響を受けずに継続されます。
広告オーケストレーターとしてのLLM
核心的なイノベーションは、広告システム内の特定のツールを反復的に呼び出すことで広告フロー全体を管理するLLMオーケストレーターです。オーケストレーターの主な目標は、高いユーザー価値と高い広告主価値のバランスを取り、常にユーザーエクスペリエンスを優先することです。
発展するユーザー意図の解釈
ユーザーとの会話が進むにつれて、意図は大きく変化する可能性があります。例えば、ランニングに関する一般的な質問から始まった会話が、後にトレーニング用のシューズに関する具体的な質問に変わる場合があります。オーケストレーターは、以前のメッセージへの参照を解釈し、ユーザーが仮定の話をしているときを認識しなければなりません。これにより、最初のクエリのみに基づいて目標を誤解することを防ぎます。
プロセスを開始するために、オーケストレーターは関連する商業的意図を表す1つ以上のクエリを準備します。これには、複数ターンの会話を要約版に凝縮し、セマンティック埋め込みを作成することが含まれます。これにより、検索システムは会話全体を単一の文字通りの文字列に圧縮するのではなく、商業的な可能性(例:[ハイキング旅行に適した靴])に焦点を当てることができます。
広告選択パイプライン
広告システムは多段階のパイプラインとして機能し、オーケストレーターが各ステップでツールを呼び出します。
- 検索: オーケストレーターは書き換えられたクエリを使用してセマンティック埋め込みを作成します。これは、近似最近傍(ANN)検索用に最適化された複数のインデックスに供給され、潜在的な広告候補の広範なプールを迅速に取得します。
- フィルタリング: 資格基準を満たさない候補は除外されます。チェックには、クリエイティブとキャンペーンの可用性、ポリシー制限、予算の可用性、ペース配分、配置の互換性、重複排除が含まれます。
- 評価とスコアリング: フィルタリングを通過した候補は、さまざまなシステムによってスコアリングされます。オーケストレーターはこれらのシステムを呼び出し、セマンティックな関連性、予測されるエンゲージメント(クリック/コンバージョンの可能性)、過去のパフォーマンスを評価します。これにより、オークションに向けたプールが絞り込まれます。
- オークション: オーケストレーターは、文脈的に適切な候補を最終的なオークションツールに指名します。オークションは、入札計算、品質調整されたランキング、価格設定、最終選考を含む最終的な配信メカニズムを適用します。
- 最終的な資格チェック: 配信前に2つのチェックが行われます。広告がチャットの文脈で適切であると感じられること(ポリシーに準拠していても)、および広告リクエストが現在のターンに含まれるのに間に合うように到着することです。
広告配信とシステム改善
サーバーサイド配信とユーザーインプレッション
広告配信はサーバーサイドのプロセスであり、広告クリエイティブ(タイトル、説明、リンク)とモデルが生成した前置きがフロントエンドに送信されます。前置きはクリエイティブとは別に保持され、広告主のメッセージを維持しつつ、ChatGPTのトーンを中立に保ちます。広告は、クリエイティブがChatGPTの回答が完全に生成される前に到着し、フロントエンドがそれを明確にスポンサー付きとして表示した場合にのみ、インプレッションとしてユーザーに表示されます。
可観測性と自己改善
広告スタックは、詳細なログとデータパイプラインを使用して継続的な改善を促進します。ターンが広告の対象外であった場合や、検索で候補が返されなかった場合など、詳細な結果が記録されます。この詳細な内訳により、チームは機会の検出、検索の品質、配信の信頼性など、システムの特定のパーツを分離して改善できます。
さらに、システムはモデルベースの評価のために高性能なモデルを採用しています。これらの最強のモデルがシステムの結果を観察し、より小さく効率的なオーケストレーションおよび検索モデルがより良く機能するようにトレーニングすることで、強力な自己改善ループを生み出しています。
人間のフィードバックの役割
モデルは意図を理解できますが、好みや製品の方向性を形作るには人間のフィードバックが不可欠です。フィードバックは、ユーザーのクリックや非表示、ユーザー調査、およびAds Managerを通じた広告主からの直接の入力から収集され、反復や製品の意思決定に役立てられます。