DoorDash如何利用知識圖譜增強大模型提升搜索召回精度
摘要
DoorDash面對用戶復雜搜索需求,構建了基于大語言模型的混合檢索系統。通過知識圖譜約束LLM輸出,實現精準查詢理解和實體鏈接,顯著提升搜索相關性。該方案在"熱門菜品"功能上取得30%觸發率提升,為企業級搜索系統提供了寶貴經驗。
正文
一、DoorDash搜索挑戰:精確性與靈活性的平衡
在DoorDash平臺上,用戶經常使用包含多重要求的精確搜索查詢。例如,當用戶搜索"vegan chicken sandwich"(素食雞肉三明治)時,傳統基于文檔相似性的檢索系統可能會返回以下結果 :
- 素食三明治
- 素食主義三明治
- 雞肉三明治
- 素食雞肉三明治
在這些結果中,只有最后一項完全符合用戶意圖。對于不同屬性,用戶的偏好可能存在差異——消費者可能接受任何素食三明治作為替代,但會拒絕非素食的雞肉三明治,因為飲食限制往往比其他屬性(如蛋白質選擇)更重要 。
為解決這一挑戰,DoorDash采用了混合檢索架構:將基于關鍵詞的檢索系統與強大的文檔和關鍵詞理解能力相結合,能夠有效執行"僅檢索素食商品"等嚴格規則 。
二、搜索引擎架構:文檔流與查詢流
典型的搜索引擎包含不同階段,可分為兩個主要流程:文檔流和查詢流。在DoorDash中,文檔指的是商品或商店/餐廳,而查詢則是用戶在搜索欄中輸入的搜索詞 。

如圖1所示,查詢流程的第一步是理解查詢。查詢理解模塊通常包括解析和分割查詢、用有用信息注釋查詢、將其鏈接到特定概念和/或糾正拼寫錯誤等步驟。在DoorDash的案例中,還包括更具體的步驟,如預測查詢的垂直意圖——判斷搜索是針對零售/雜貨商品還是餐廳/食品商品 。
同樣,在文檔處理方面,DoorDash有關鍵階段來注釋和處理文檔,添加有用的元數據信息,然后將這些文檔攝取到搜索索引中并使其可用于檢索。這些信息不僅用于搜索用例,還用于其他產品界面,如過濾器和分析工具 。
三、知識圖譜賦能文檔與查詢理解
DoorDash的文檔處理部分依賴于為食品商品和零售產品商品構建的知識圖譜。這些圖譜允許定義不同實體之間的關系,從而更好地理解文檔 。
這意味著商店和商品包含豐富的元數據——標簽和屬性——幫助更好地理解目錄。例如,對于零售商品"Non-Dairy Milk & Cookies Vanilla Frozen Dessert - 8 oz",可以擁有描述有價值信息的元數據,包括 :
- 飲食偏好:"Dairy-free"(無乳制品)
- 口味:"Vanilla"(香草)
- 產品類別:"Ice cream"(冰淇淋)
- 數量:"8 oz"(8盎司)
查詢可以被分割,然后鏈接到知識圖譜中可用的概念。例如,像"small no-milk vanilla ice cream"這樣的查詢可以被分割成以下塊 :
["small", "no-milk", "vanilla ice cream"]然后可以將每個片段鏈接到作為先前產品元數據一部分的屬性。但是,根據片段的粒度,可能很難將其中一些片段鏈接到精確的屬性;對于"vanilla ice cream",需要鏈接到兩個不同的字段:菜品類型"ice cream"和口味屬性"vanilla"。解決方案應該是上下文感知的,以允許適當的分割和實體鏈接 。
四、LLM驅動的查詢理解
4.1 查詢分割
傳統上,查詢分割依賴于點互信息(PMI)或n-gram分析等方法來確定查詢中哪些詞可能形成有意義的詞段。如果查詢相對簡單,這些方法可能有效。但當處理包含多個重疊實體的復雜查詢或具有高度歧義的查詢時,它們就開始顯得不足 。
例如,在查詢"turkey sandwich with cranberry sauce"中——"cranberry sauce"是一個單獨的商品還是"sandwich"的屬性?缺乏上下文,傳統方法可能難以捕獲這些詞段之間的關系 。
然而,在給定正確信息的情況下,大多數現代LLM都能理解復雜查詢并提供準確的分割,考慮不同上下文中詞語關系 。
LLM的一個問題是它們容易產生幻覺。DoorDash需要開發受控詞匯來創建既真實又對檢索系統有價值的有意義分割。幸運的是,知識圖譜工作已經提供了本體,使其能夠訪問多個可以指導這一過程的分類法 。
與其將搜索查詢分解為任意段落,DoorDash提示模型識別有意義的段落并在分類法下對其進行分類。盡管分割過程中的幻覺率很低——不到1%——他們還受益于輸出在檢索系統有價值類別中的即時分類 。
DoorDash擁有餐廳商品分類法,定義菜系、菜品類型、餐食類型和飲食偏好等的層次關系。同樣,零售商品分類法包括品牌、飲食偏好和產品類別 。
以前面的查詢為例:"small no-milk vanilla ice cream"。與其簡單地要求模型找到有意義的詞段,DoorDash提示它提供結構化輸出,將每個有意義的詞段映射到分類類別之一 :
{
Quantity: "small",
Dietary_Preference: "no-milk",
Flavor: "vanilla",
Product_Category: "ice cream"
}評估顯示,這種方法導致更準確的分割,可能是因為結構化類別為模型提供了關于可能關系的額外上下文 。
4.2 實體鏈接
一旦查詢被分割,就需要將這些片段映射到知識圖譜中可用的概念。由于知識圖譜已作為文檔理解工作的一部分被攝取到搜索索引中,可以使許多豐富屬性可用于檢索。像"no-milk"這樣的片段應該鏈接到"dairy-free"概念,以確保檢索包含此屬性的候選集,而不將其限制為商品名稱或描述中的精確字符串匹配,這可能會影響召回率 。
LLM在這項任務中也非常有用。但是,正如在查詢分割部分提到的,它們有時會生成事實上不正確或幻覺的輸出。在實體鏈接的上下文中,這可能意味著將查詢片段映射到知識圖譜中不存在的概念或完全錯誤標記 。
為了緩解這種情況,DoorDash采用了約束模型輸出的技術,僅包括受控詞匯內的概念——換句話說,分類概念。通過近似最近鄰(ANN)技術檢索的策劃候選標簽列表提供給LLM,減少這些類型的錯誤。這種方法確保模型從已經是知識圖譜一部分的概念中選擇,保持映射的一致性和準確性 。
考慮之前的查詢片段"no-milk",ANN檢索系統可能提供候選實體如"dairy-free"或"vegan"。然后LLM只需要根據上下文選擇最合適的概念,確保最終映射準確且在知識圖譜內 。
為此,DoorDash利用檢索增強生成(RAG)。過程通常如下 :
- 對于每個搜索查詢和知識圖譜分類概念(候選標簽),生成嵌入向量
- 使用ANN檢索系統,為每個搜索查詢檢索最接近的100個分類概念或候選標簽
- 提示LLM將查詢鏈接到特定分類中的相應實體,如菜品類型、飲食偏好、菜系等
此過程最終為每個查詢生成一組鏈接的分類概念,可以直接用于從搜索索引檢索商品。整體過程如圖所示 。

經過這個過程,"small no-milk vanilla ice cream"的最終查詢理解信號將與目錄中描述為"Non-Dairy Milk & Cookies Vanilla Frozen Dessert - 8oz"的文檔或商品的許多屬性匹配 :
{
Dietary_Preference: "Dairy-Free",
Flavor: "Vanilla",
Product_Category: "Ice cream"
}這使得通過實施特定的檢索邏輯更容易控制要檢索的內容,例如使所有飲食限制成為MUST條件,并允許不太嚴格屬性(如口味)作為SHOULD條件的靈活性 。
五、評估與質量控制
在查詢理解管道中保持高精度至關重要,特別是在處理飲食偏好等重要屬性時。為確保這一點,DoorDash開發了后處理步驟,防止最終輸出中的潛在幻覺,并確保分割查詢及其鏈接實體的有效性。在這些后處理步驟之后,對每批處理的查詢進行手動審核以衡量系統質量 。
注釋者審查統計上顯著的輸出樣本,以驗證查詢片段是否正確識別并準確鏈接到知識圖譜中的適當實體。這種手動評估幫助檢測和糾正系統性錯誤,完善提示和過程,并保持高精度 。
六、記憶與泛化的權衡
在搜索系統中,記憶和泛化之間存在根本權衡 。記憶導向的方法(如批量處理固定查詢集)可以實現非常高的精度,但難以處理長尾新查詢且維護成本高。泛化方法(包括輕量級啟發式、BM25等統計方法或嵌入檢索等更復雜方法)能夠很好地泛化到新的查詢-文檔對,但可能無法達到專門針對特定查詢優化的方法的精度水平 。
通過將這里概述的方法與其他能很好泛化到新查詢-文檔對的方法相結合——包括輕量級啟發式、BM25等統計方法或嵌入檢索等更復雜方法——可以利用多重優勢在保持適應性的同時實現更高精度 。
七、系統集成:新查詢理解信號的整合
查詢理解系統的有效性還取決于它與搜索管道其他組件(特別是排序器)的集成程度。排序器負責根據與查詢的相關性對檢索到的文檔——商品或商店——進行排序 。
引入新的查詢理解信號后,需要使排序器能夠使用這些信號。隨著排序器掌握新信號以及檢索改進引入的消費者參與新模式,相關性和業務指標上升,這在在線測試中得到反映 。
通過將排序器的能力與查詢理解系統的精度相結合,能夠提供更準確和相關的搜索結果。這種協同作用對于滿足用戶不斷發展的復雜需求至關重要 。
八、實際應用與成效
DoorDash的熱門菜品輪播如圖所示,依賴此檢索管道來顯示反映特定菜品意圖查詢的相關結果 。

當消費者搜索"a?aí bowl"(阿薩伊碗)等內容時,他們表明正在尋找特定菜品。通過在搜索結果頁面中直接提供該特定菜品,他們可以快速比較許多商店的不同選項 。
實施新的查詢理解和檢索改進后,DoorDash觀察到熱門菜品輪播觸發率的大幅增加——能夠檢索到更多商品。具體而言,觀察到比基線增加近30%,這也意味著搜索結果與消費者意圖更加一致,使他們更容易下單 。
觸發率的增加應該為消費者帶來更相關的結果。當準確分割查詢并將其鏈接到知識圖譜時,可以檢索更廣泛和更精確的菜品商品集來填充這些輪播。更高的觸發率加上高質量結果意味著提高了整體相關性。這通過整頁相關性(WPR)指標顯示,該指標旨在從用戶角度衡量不同查詢片段和意圖的搜索結果的整體相關性。該方法使菜品意圖查詢的WPR增加了2%以上,表明用戶總體上看到了更相關的菜品 。
在線測試還顯示,相關性的增加與參與度和轉化率的增加相一致。觀察到當日轉化率上升,證實減少摩擦可以幫助消費者決定訂購哪些商品 。
此外,由于改進的檢索系統帶來了新的和更多樣化的參與,可以用更全面的數據集重新訓練排序器。新的排序器版本進一步提高了相關性——如WPR增加1.6%所示——使消費者更容易發現和訂購他們想要的菜品,從而產生更高的訂單量并增加市場價值 。
九、未來展望
既然已經驗證了LLM如何很好地集成到DoorDash系統中,就揭示了一個巨大的可能性探索景觀 。
基于大語言模型的搜索理解技術不僅在電商和餐飲平臺有重要應用,在企業級搜索、智能問答系統和知識管理等領域同樣具有廣闊前景 。
對于科研院所和企業而言,這種結合知識圖譜約束的LLM應用模式提供了可復制的技術路徑:
- 構建領域知識圖譜:建立受控詞匯和本體結構
- RAG技術應用:通過檢索增強生成減少幻覺
- 混合檢索架構:平衡精確性與泛化能力
- 持續評估優化:建立人工審核和質量控制機制
這些技術創新為提升企業級搜索和知識發現能力提供了重要參考。
結語
DoorDash通過將用于查詢理解的大語言模型與我們的知識圖譜和靈活的檢索方法相結合,我們現在能夠處理更復雜和細致入微的用戶查詢,同時在高度動態的環境中釋放新的體驗。我們很興奮能夠繼續嘗試新興技術,與我們的合作伙伴一起為消費者創造令人愉悅的體驗。
本文轉載自???????知識圖譜科技???????,作者:Wolfgang

















