跳到正文
OpenAI News·· 13 小時前精選AI 評分75

OpenAI 如何構建兼顧用戶信任與相關性的 ChatGPT 新型廣告技術架構

How we built ChatGPT’s novel ad stack for user trust and relevance

AI 導讀

OpenAI 為 ChatGPT 建構一套自訂廣告投放系統,以經後訓練的前沿 LLM 編排廣告流程,根據對話脈絡調用工具進行檢索、排名、相關性評估和競價。廣告系統與 ChatGPT 的答案生成分開運作,避免廣告影響回答並維持中立語氣。ChatGPT Ads 上線不足 200 天後,年化收入運行率達 $1 billion;自推出以來,超過 100,000 名廣告商曾在 ChatGPT 投放廣告。

推薦理由

ChatGPT 廣告系統以跨回合及多次對話的狀態和 LLM 工具調用追蹤變化中的商業意圖,並將廣告流程與答案生成分開處理。

正文 · 繁體中文

我們如何打造全新廣告系統,兼顧用戶信任與相關性

技術團隊成員 Ritendra Datta 和 Karthik Gopalratnam

載入中…

音訊 1

分享

傳統廣告系統的設計,是為了回應明確的用戶意圖。用戶在網上搜尋或瀏覽內容,廣告系統便會將這些搜尋查詢和網頁瀏覽記錄作為事件接收,再根據這些事件尋找相符的廣告。為 ChatGPT 建立廣告系統則有所不同:用戶意圖會在對話中逐步形成,並隨着多輪對話而轉變,有時並不會出現適合投放廣告的時機。為了支援這種新模式,我們打造了專門的廣告投放系統。這種新型廣告系統以專門打造、經後訓練的前沿大型語言模型為基礎,透過工具呼叫進行檢索(找出最佳選項)、排序(預測用戶參與度)、相關性評估(評估廣告是否有用),並進行競價,以選出最終廣告並決定價格。

我們的廣告系統透過三項重要的設計決策,支援用戶目標不斷變化的複雜情況:1)實作具狀態的廣告工作階段,讓系統能在多輪對話及多個對話之間記住資訊;2)採用專門打造、經後訓練的大型語言模型,利用工具呼叫架構解讀對話脈絡及背後意圖,並有效地選擇、排序和投放廣告;3)在獨立服務中另行執行廣告選擇流程,與 ChatGPT 的答案生成分開,避免廣告影響答案,並維持 ChatGPT 的中立語氣。我們利用經後訓練的大型語言模型統籌整個廣告流程,根據用戶目前這一輪的對話及對話記錄,判斷何時展示哪則廣告最合適。以往要花數年時間,才能從零開始建立這類可自我改進的廣告系統;ChatGPT Ads 推出不到 200 天後,年化收入運行率便達到 $1 billion;自推出以來,已有超過 100,000 名廣告商在 ChatGPT 投放廣告。

代理式聊天中的廣告應如何運作?

傳統的廣告請求通常始於一個明確的事件。用戶提交搜尋查詢或開啟網頁,廣告系統便會收到請求。這類系統相當簡單:先找出潛在的廣告選項,再進行排序,透過競價為廣告機會定出合適價格,最後向用戶展示廣告。ChatGPT 並不會自然地產生這種明確時機。

在 ChatGPT 對話中,人們帶着目標而來,而非只求單一答案的搜尋查詢。他們可能正在規劃旅程、為公司挑選軟件、佈置家居,或學習新的嗜好。這些事情不會在一輪對話中全部完成。ChatGPT 通常會在過程中協助用戶釐清重點。

舉例來説,我們的工程團隊曾詢問 ChatGPT 如何為比賽訓練:對話一開始是關於跑步的一般問題。幾輪對話後,他們詢問有助訓練的鞋款。隨着各項限制條件逐一提出,對話的商業意義也隨之改變,而這些個人化脈絡會在多個工作階段中不斷演變。若系統只根據第一則訊息採取行動,就可能完全判斷錯誤的意圖,令用戶體驗變差,甚至妨礙用戶。

建立廣告系統時,我們必須超越傳統的請求-回應式廣告架構,從頭打造廣告系統,在優先考慮用戶信任與價值的同時,尋找潛在的商業機會。

對話記憶,不影響 ChatGPT 的回答

在我們的聊天使用情境中,若像傳統廣告系統一樣,把每則訊息都當作獨立請求處理,會帶來幾項風險:1) 過度簡化用戶目標,導致誤解;2) 在用戶的真正需要尚未明確前,過早啟動廣告流程;3) 展示妨礙而非配合用戶歷程的廣告;4) 每次請求有變化時,都低效率地重新執行廣告流程,造成雜訊並浪費成本。廣告系統(包括檢索、排序和投放)並非以個別事件為基礎,而是維持一個有狀態的工作階段;也就是説,廣告工作階段會在符合資格的一輪對話期間持續運作,並隨着資訊變化而記錄和更新資訊。ChatGPT 會把初始請求的脈絡傳送至廣告伺服器。廣告系統會跟進並因應逐步發展的對話作出調整,而非只依賴單一的扁平化查詢。

廣告選擇流程會與 ChatGPT 的一般回應生成流程同步運作,確保廣告流程不會影響 ChatGPT 的回應。廣告會由一個獨立系統進行篩選和選擇;該系統會根據自身的資格、質素和投放限制處理對話內容。這項重要的架構界線——採用不同服務,並使用各自獨立的模型和程式碼——讓 ChatGPT 核心伺服器負責生成非廣告回應;同時,廣告系統會獨立評估是否存在合適的廣告機會,如有,便會透過獨立的服務流程準備贊助廣告版位。

Image 1: Flow diagram showing a user conversation branching into a ChatGPT answer path that produces an organic response and a separate ads eligibility and serving path that produces a clearly labeled sponsored placement.

廣告流程與 ChatGPT 的回答流程同步運作。

除了保障用戶體驗,這種分隔亦帶來一些實際影響。ChatGPT 並不依賴廣告系統——兩者的服務完全獨立,也不會共用內容生成模型。因此,即使廣告服務系統無法使用或運作緩慢,ChatGPT 的非廣告回應仍會如常生成,不受影響。這表示廣告系統無法令 ChatGPT 產品停止運作或延遲回應。這種分隔的另一個好處,是讓優質廣告的標準維持在很高水平。沒有返回任何廣告亦屬正常且成功的結果。只有在廣告明確能為用戶和廣告商帶來好處時,系統才會投放廣告。

LLM 解讀對話並呼叫工具

我們廣告技術堆疊中的另一個關鍵架構元件,是經後訓練、負責解讀對話並以 Agent 式循環執行整個廣告流程的 LLM。它會呼叫廣告系統的核心功能工具,從檢索階段、排序到競價,最終完成投放。我們稱這個 LLM 為協調器。

廣告流程的第一步,是理解用戶意圖,以啟動檢索程序。這個程序會快速而有意地廣泛搜尋潛在廣告,之後再作篩選。逐步接收對話內容,雖然能提供更豐富的資訊,卻也令檢索問題更含糊,因為廣告系統需要區分當前意圖和過時的脈絡。協調器必須解讀用戶對較早訊息的指涉,辨認用戶何時只是在作假設,並避免把每次提及產品或服務都視為購買要求。

廣告協調器會運用可用的對話及用戶背景資料,反覆尋找合適的廣告,並不斷選擇何時呼叫哪個工具;其核心目標是為該對話及背景資料找到最合適的廣告(即平衡用戶價值與廣告商價值的廣告)。如果用戶選擇個人化廣告,協調器亦會考慮可用的用戶過往對話中的非敏感資料,以尋找最合適的廣告。

Image 2: Architecture diagram showing conversation context and user profile feeding an ads orchestrator with retrieval, relevance estimation, event prediction, eligibility, pacing and budgets, and auction and pricing tools that balance user and advertiser value.

廣告協調器會反覆呼叫廣告投放工具,尋找有價值的廣告。

隨着對話推進,廣告協調器取得更多更新的資訊後,可以根據更新後的背景資料重新呼叫一系列工具,尋找更合適的廣告並將其傳回客戶端;如果這些新廣告能及時送達,客戶端便可使用。

用戶價值

廣告商價值

Image 3

印花抱枕

不合資格的候選項目

協調器旨在平衡用戶價值與廣告商價值,並始終以用戶為先。

協調器如何在 Agent 循環中呼叫廣告工具

廣告系統由各個工具組成,協調器會反覆呼叫這些工具,為對話尋找最佳廣告。概括而言,協調器會將對話轉換成簡短的文字摘要,再將摘要轉換成語義嵌入(以較易供廣告系統篩選的形式儲存的含義),利用這些語義嵌入檢索候選廣告,按資格條件(根據預算、用戶設定及其他初步檢查)篩選候選廣告,評估其質素及相關性,最後進行排序,找出適合刊登在聊天回覆末尾的高價值機會。因此,每則廣告都必須達到嚴格的資格及相關性門檻,才符合刊登資格。

準備能捕捉意圖的檢索查詢

協調器 LLM 會先準備一個或多個查詢,以代表相關的商業意圖。這可能包括改寫對話背景資料,拓闊一對一搜尋查詢以外的商業可能性,然後建立語義表示;在這個過程中,協調器會將多輪對話濃縮成摘要版本,供檢索系統使用,從我們的資料庫中有針對性地檢索廣告。

如果廣告只在深入理解用戶意圖時才出現,對用戶和廣告商都會更理想。多個查詢可以保留意圖的不同方面。例如,計劃旅行的對話可能包含交通、住宿或活動等不同需求。檢索系統可以保留這些區別,而不是將整段對話壓縮成一個字面字串。

以下以一段關於行山鞋的假設對話為例:

  1. 去 Yosemite 兩日遊應該帶甚麼?

  2. 下星期會冷嗎?

  3. 有沒有新的 [插入品牌] 產品系列?

雖然用戶沒有把有關鞋品牌的問題與 Yosemite 之旅聯繫起來,廣告系統仍可能以兩個查詢表示這段對話,例如 [shoes appropriate for hiking trip] 和 [new [brand] product lines good for travel]。這可能只是第一次嘗試;協調器旨在反覆調整這些表示,直至在我們的廣告庫中找到對用戶具有高度價值的廣告。

檢索可能的廣告

檢索是建立一批涵蓋面廣的廣告候選項的過程。候選項可能來自不同的檢索策略,之後可在相同的投放限制下競爭。我們會建立多個索引,分別針對不同的系統及產品限制作最佳化(例如,商品資訊流廣告的索引在擷取最佳廣告時,會考慮正面或負面的商品評價。這與其他可能沒有相關評價的廣告無關)。每個索引都會針對某種近似最近鄰(ANN)搜尋作最佳化,並使用代表用戶意圖的嵌入向量。這種 ANN 搜尋是在大型語義索引中進行檢索的近似演算法;也就是説,它能非常快速地擷取廣告,尋找接近良好結果的答案,而非搜尋「正確」答案,同時保留大部分相關候選項。

Image 4: Flow diagram showing rewritten queries encoded into high-dimensional semantic embeddings, searched across regular ads, product ads, and optional strategies, then combined into a broad candidate pool.

廣告系統會在廣告檢索過程中使用改寫後的查詢建立語義嵌入向量,並產生涵蓋面廣的廣告候選集。

篩除不符合資格的候選項

篩選的目標,是剔除所有在相關性、出價及預算方面未達投放要求的廣告候選項。視乎候選項及設定,篩選檢查可能包括廣告素材及廣告活動是否可用(廣告活動或廣告素材是否處於啟用狀態)、廣告活動的目標設定(例如廣告活動獲準投放的地區)、政策限制(有關可宣傳內容的合規要求)、預算是否可用(廣告活動是否仍有可用預算)、投放節奏(廣告活動是否應在當下而非當日其他時段支出預算)、投放位置兼容性(廣告適用於哪些類型的對話),以及廣告商和廣告活動層級的去重(為每位廣告商選取適當數量的廣告,確保不同企業都能公平參與)。

評估相關性及質素

通過資格檢查的候選項會進入評分階段。協調器會呼叫各種評分系統的工具,以支援廣告投放考量,例如語義相關性(廣告是否符合用戶目標?)、預測互動(用戶是否可能觀看、點擊廣告,並轉化為廣告商期望的成果?)、歷史表現(廣告至今向用戶展示時的表現是否良好?)。拍賣前,協調器亦會篩選廣告,以確保其相關性及安全性。這些系統會縮小候選範圍,形成較小的候選集,準備進入拍賣,但仍未決定最終投放的廣告。

進行廣告拍賣

協調器會在對話情境中評估已備妥的候選項,並選出足以進入最終拍賣的廣告候選項。協調器不會直接決定投放哪則廣告,也不會設定價格;它會提名符合情境的候選項,交由拍賣工具評估。

拍賣會執行最終投放機制,包括拍賣准入(達到相關性及價值的最低門檻)、投放節奏(更平均地支出廣告預算)、出價及拍賣特徵計算、按質素調整排名、定價,以及最終選擇。

最終資格檢查

拍賣完成後,廣告仍可能因兩種情況而未能投放;這兩種情況都是 ChatGPT 對話媒介特有的。

  1. 廣告在對話中可能顯得不合適:即使完整性模型(用來判斷何時適合投放廣告的模型)認為對話本身適合展示廣告,而且廣告本身亦符合政策,有時廣告仍可能在特定對話情境中顯得不合適。編排器會阻止展示這些廣告。

  2. 廣告請求可能未能及時送達:如果 ChatGPT 模型已準備好回應,但廣告尚未準備好展示,廣告請求就會逾時,廣告亦不會送達。因此,廣告系統其中一個目標是盡可能快速運作。ChatGPT 模型的回應時間會動態變化,而我們不會延遲聊天回應來等待廣告載入。

如果符合上述所有條件,我們就會將廣告傳送至前端進行呈現。我們將此視為伺服器端廣告傳送,但我們仍可能不會向用戶展示廣告——這是刻意設計的。

最後一步:向用戶展示廣告

在 ChatGPT 這類對話式產品中,伺服器端傳送廣告素材並不保證廣告一定會顯示;廣告亦必須及時送達,才能納入當前回合。廣告素材包括標題、描述、目的地連結及任何行動呼籲。此外,廣告系統亦會傳回由模型生成的引言,這是一段簡短、中立的介紹,説明廣告與對話有何關聯。將引言與廣告素材分開,可以保留廣告商的訊息,同時保持 ChatGPT 的語氣中立。

ChatGPT 前端會以組合形式接收引言和廣告素材。如果它們在 ChatGPT 完成生成回應前送達,前端就會在 ChatGPT 的回應下方顯示廣告,並清楚標示為贊助內容。如果送達得太遲,該回合就不會顯示廣告。這就是伺服器端廣告傳送與面向用戶的廣告曝光之間的分別。

Image 5: Sequence diagram showing an ad winner prepared by the serving system, final checks by ChatGPT, display in the user experience, and acknowledgements that distinguish selection from successful delivery.

勝出廣告的選定與投放是兩個不同事件。只有在 ChatGPT 核准並展示該廣告位置,而且投放獲得確認後,已選定的廣告才算完成投放。

廣告展示後會發生甚麼事

我們的廣告技術堆疊採用傳統記錄及數據管道,主要有三項好處:廣告商可以更輕易地將現有系統整合至我們的技術堆疊;廣告商可以利用報告數據改進策略;我們的團隊亦可找出系統中有待改進之處。除了這些報告及最佳化工具外,我們還部署高質素模型來評估廣告投放並訓練其他廣告模型,從而形成強大的自我改進循環。

詳細的事件拆解有助我們瞭解廣告系統各部分的運作,並逐一加以改進。記錄處理系統亦會記錄細緻的結果,例如:

  • 該回合不符合展示廣告的資格。

  • 廣告工作階段已開始,但沒有發出檢索請求。

  • 檢索沒有傳回任何候選項。

  • 已檢索到候選項,但未能完成資料補全或資格審查。

  • 廣告已投放,之後收到互動。

詳細的事件拆解有助我們逐一改進廣告投放系統的各個部分。改善廣告機會偵測所需的證據,與改善檢索、候選項質素、競價參與或投放可靠性所需的證據各不相同。

Image 6: Flow diagram showing an eligible ChatGPT turn producing product, ads serving, and quality outcomes that pass through privacy-controlled analytics to aggregate measurement and permitted model-improvement data.

投放、廣告服務及品質系統會觀察生命週期中的不同部分。私隱管控下的處理流程會決定哪些資料可用於衡量及模型改進。

高效能模型評估並改進整個技術堆疊

以模型為本的評估,其理念是讓我們推理能力最強的模型觀察並評估系統的結果,再透過訓練經後訓練的 LLM 表現得更好,從而加以改進。例如,如果由最強大的模型收集回饋,並訓練較小型的工作模型盡可能出色地完成工作,我們便可以在協調或檢索任務中使用較小型、效率更高的模型,或推理能力較弱的模型。

人類回饋引導品味方向

我們收集並採取行動回應人類回饋(用戶的點擊和隱藏操作),也會進行用戶問卷調查,並透過 Ads Manager 直接收集廣告商的回饋。在開發過程中,我們亦讓團隊隨時聽取意見,並直接瞭解 ChatGPT 用戶和廣告商的需求。相比模型透過觀察所得的回饋,這些回饋對我們的發展方向影響更大,也是我們能迅速反覆改進、作出正確產品決策的原因之一。模型或許能理解用戶意圖,並以批判性思維提供有價值的成果,但品味由人塑造。

下一步

一年前,我們還沒有廣告系統,只有少數人思考這個問題領域。如今,我們已建立完善的廣告系統,年化收入運行率超過 10 億美元,並由以 LLM 為本的協調器處理廣告流程。Codex 是重要的效能倍增器,讓我們能以前所未有的速度快速建立系統,達成這個重要的使用量里程碑。從一開始,我們便設立團隊和開發工作流程,運用 Codex 迅速建構和擴展系統。我們為 Codex 設置防護措施,確保程式碼能可靠而安全地發布。同時,我們也為 Codex 設置數據基礎設施外掛,大幅縮短收集洞察並將改進落實到系統的循環,包括推出新產品功能、提升品質,以及改善系統效能。

我們的系統以廣告原則⁠為基礎,並結合以 LLM 為本的協調器;兩者讓我們能提供有用的廣告,而不會把每段對話都視為廣告請求。展望未來,我們會繼續試驗更多動態廣告格式,以提升用戶價值(例如讓用戶能透過廣告直接與商家對話)和廣告商價值。這套以 OpenAI 模型為基礎、透過持續回饋循環建立的自我改進架構,將加快我們持續提升相關性和個人化的能力。

作者

Ritendra Datta、Karthik Gopalratnam

來源:OpenAI News · openai.com