RAG 或 Fine Tume - 為您的用例選擇正確方法的權(quán)威指南
序幕
隨著對(duì)大型語(yǔ)言模型 (LLMs) 的興趣激增,許多開(kāi)發(fā)人員和組織正忙于構(gòu)建應(yīng)用程序,以利用他們的力量。但是,當(dāng)預(yù)訓(xùn)練LLMs的開(kāi)箱即用沒(méi)有按預(yù)期或希望執(zhí)行時(shí),關(guān)于如何提高LLM應(yīng)用程序性能的問(wèn)題就來(lái)了。最終,我們到了問(wèn)自己的地步:我們應(yīng)該使用檢索增強(qiáng)生成(RAG)還是模型微調(diào)來(lái)改善結(jié)果?
在深入研究之前,讓我們揭開(kāi)這兩種方法的神秘面紗:
RAG:這種方法將檢索(或搜索)的能力集成到文本生成中LLM。它結(jié)合了一個(gè)檢索器系統(tǒng)和一個(gè) LLM,前者從大型語(yǔ)料庫(kù)中獲取相關(guān)文檔片段,后者使用這些片段中的信息生成答案。從本質(zhì)上講,RAG 幫助模型“查找”外部信息以改善其響應(yīng)。
微調(diào):這是采用預(yù)訓(xùn)練LLM并在較小的特定數(shù)據(jù)集上進(jìn)一步訓(xùn)練它的過(guò)程,以使其適應(yīng)特定任務(wù)或提高其性能。通過(guò)微調(diào),我們根據(jù)數(shù)據(jù)調(diào)整模型的權(quán)重,使其更符合我們應(yīng)用程序的獨(dú)特需求。
RAG 和微調(diào)都是提高基于應(yīng)用程序性能LLM的強(qiáng)大工具,但它們涉及優(yōu)化過(guò)程的不同方面,這在選擇一個(gè)而不是另一個(gè)時(shí)至關(guān)重要。
以前,我經(jīng)常建議組織在深入研究微調(diào)之前先試驗(yàn) RAG。這是基于我的看法,即兩種方法都取得了相似的結(jié)果,但在復(fù)雜性、成本和質(zhì)量方面有所不同。我甚至曾經(jīng)用如下圖來(lái)說(shuō)明這一點(diǎn):
在此圖中,復(fù)雜性、成本和質(zhì)量等各種因素沿單個(gè)維度表示。收獲是什么?RAG 更簡(jiǎn)單、更便宜,但其質(zhì)量可能不匹配。我的建議通常是:從RAG開(kāi)始,衡量其性能,如果發(fā)現(xiàn)不足,則轉(zhuǎn)向微調(diào)。
然而,我的觀點(diǎn)從那以后發(fā)生了變化。我認(rèn)為,將 RAG 和微調(diào)視為實(shí)現(xiàn)相同結(jié)果的兩種技術(shù)過(guò)于簡(jiǎn)單化,只是其中一種比另一種更便宜且更簡(jiǎn)單。它們從根本上是不同的 — 它們不是_共線性的,_而是_正交_的 — 并且滿足LLM應(yīng)用程序的不同要求。
為了更清楚地說(shuō)明這一點(diǎn),考慮一個(gè)簡(jiǎn)單的現(xiàn)實(shí)世界類(lèi)比:當(dāng)被問(wèn)到“我應(yīng)該用刀子還是勺子吃飯嗎?”時(shí),最合乎邏輯的反問(wèn)題是:“嗯,你在吃什么?我問(wèn)了朋友和家人這個(gè)問(wèn)題,每個(gè)人都本能地回答了這個(gè)反問(wèn)題,表明他們不認(rèn)為刀和勺子是可以互換的,或者一個(gè)是另一個(gè)的劣質(zhì)變體。
這是關(guān)于什么的?
在這篇博文中,我們將深入探討區(qū)分 RAG 和在各個(gè)維度上進(jìn)行微調(diào)的細(xì)微差別,在我看來(lái),這對(duì)于確定特定任務(wù)的最佳技術(shù)至關(guān)重要。此外,我們將研究一些最受歡迎的LLM應(yīng)用程序用例,并使用第一部分中建立的維度來(lái)確定哪種技術(shù)可能最適合哪種用例。在這篇博文的最后一部分,我們將確定在構(gòu)建LLM應(yīng)用程序時(shí)應(yīng)考慮的其他方面。其中每一個(gè)都可能需要有自己的博客文章,因此我們只能在本文的范圍內(nèi)簡(jiǎn)要介紹它們。
你為什么要關(guān)心?
選擇正確的技術(shù)來(lái)適應(yīng)大型語(yǔ)言模型可以對(duì) NLP 應(yīng)用程序的成功產(chǎn)生重大影響。選擇錯(cuò)誤的方法可能導(dǎo)致:
- 特定任務(wù)的模型性能不佳,導(dǎo)致輸出不準(zhǔn)確。
- 如果該技術(shù)未針對(duì)您的用例進(jìn)行優(yōu)化,則會(huì)增加模型訓(xùn)練和推理的計(jì)算成本。
- 如果您以后需要轉(zhuǎn)向不同的技術(shù),則需要額外的開(kāi)發(fā)和迭代時(shí)間。
- 在部署應(yīng)用程序并將其呈現(xiàn)在用戶面前時(shí)出現(xiàn)延遲。
- 如果選擇過(guò)于復(fù)雜的適應(yīng)方法,則缺乏模型可解釋性。
- 由于大小或計(jì)算限制,難以將模型部署到生產(chǎn)環(huán)境。
RAG 和微調(diào)之間的細(xì)微差別涉及模型架構(gòu)、數(shù)據(jù)要求、計(jì)算復(fù)雜性等。忽視這些細(xì)節(jié)可能會(huì)破壞您的項(xiàng)目時(shí)間表和預(yù)算。
這篇博文旨在通過(guò)清楚地列出每種技術(shù)何時(shí)是有利的,從而防止浪費(fèi)精力。有了這些見(jiàn)解,您就可以從第一天起就采用正確的適應(yīng)方法。詳細(xì)的比較將使您能夠做出最佳的技術(shù)選擇,以實(shí)現(xiàn)您的業(yè)務(wù)和 AI 目標(biāo)。這份為工作選擇正確工具的指南將使您的項(xiàng)目為成功做好準(zhǔn)備。
所以,讓我們開(kāi)始吧!
提高性能的關(guān)鍵考慮因素
在我們選擇 RAG 與 Fintuning 之前,我們應(yīng)該從某些維度評(píng)估我們LLM項(xiàng)目的需求,并問(wèn)自己幾個(gè)問(wèn)題。
我們的用例是否需要訪問(wèn)外部數(shù)據(jù)源?
在微調(diào)或使用 LLM RAG 之間做出選擇時(shí),一個(gè)關(guān)鍵的考慮因素是應(yīng)用程序是否需要訪問(wèn)外部數(shù)據(jù)源。如果答案是肯定的,RAG 可能是更好的選擇。
顧名思義,RAG 系統(tǒng)旨在通過(guò)在生成響應(yīng)之前從知識(shí)源檢索相關(guān)信息來(lái)增強(qiáng) LLM的能力。這使得這種技術(shù)非常適合需要查詢數(shù)據(jù)庫(kù)、文檔或其他結(jié)構(gòu)化/非結(jié)構(gòu)化數(shù)據(jù)存儲(chǔ)庫(kù)的應(yīng)用程序。檢索器和發(fā)電機(jī)組件可以進(jìn)行優(yōu)化,以利用這些外部源。
相比之下,雖然可以進(jìn)行微調(diào)LLM以學(xué)習(xí)一些外部知識(shí),但這樣做需要來(lái)自目標(biāo)領(lǐng)域的大量標(biāo)記的問(wèn)答對(duì)數(shù)據(jù)集。此數(shù)據(jù)集必須隨著基礎(chǔ)數(shù)據(jù)的變化而更新,因此對(duì)于頻繁更改的數(shù)據(jù)源來(lái)說(shuō),這是不切實(shí)際的。微調(diào)過(guò)程也沒(méi)有明確地對(duì)查詢外部知識(shí)所涉及的檢索和推理步驟進(jìn)行建模。
因此,總而言之,如果我們的應(yīng)用程序需要利用外部數(shù)據(jù)源,那么使用 RAG 系統(tǒng)可能比僅通過(guò)微調(diào)來(lái)“融入”所需的知識(shí)更有效且可擴(kuò)展。
我們是否需要修改模型的行為、寫(xiě)作風(fēng)格或特定領(lǐng)域的知識(shí)?
另一個(gè)需要考慮的非常重要的方面是,我們需要模型在多大程度上調(diào)整其行為、編寫(xiě)風(fēng)格,或者為特定領(lǐng)域的應(yīng)用程序定制其響應(yīng)。
微調(diào)的出色之處在于它能夠使 LLM的行為適應(yīng)特定的細(xì)微差別、語(yǔ)氣或術(shù)語(yǔ)。如果我們希望模型聽(tīng)起來(lái)更像醫(yī)療專(zhuān)業(yè)人士,以詩(shī)意的風(fēng)格寫(xiě)作,或使用特定行業(yè)的行話,那么對(duì)特定領(lǐng)域的數(shù)據(jù)進(jìn)行微調(diào)可以讓我們實(shí)現(xiàn)這些定制。這種影響模型行為的能力對(duì)于與特定風(fēng)格或領(lǐng)域?qū)I(yè)知識(shí)保持一致至關(guān)重要的應(yīng)用程序至關(guān)重要。
RAG雖然在整合外部知識(shí)方面很強(qiáng)大,但主要側(cè)重于信息檢索,并且不會(huì)根據(jù)檢索到的信息本質(zhì)上調(diào)整其語(yǔ)言風(fēng)格或領(lǐng)域特異性。它將從外部數(shù)據(jù)源中提取相關(guān)內(nèi)容,但可能無(wú)法展示微調(diào)模型可以提供的定制細(xì)微差別或領(lǐng)域?qū)I(yè)知識(shí)。
因此,如果我們的應(yīng)用程序需要專(zhuān)門(mén)的寫(xiě)作風(fēng)格或與特定領(lǐng)域的白話和慣例進(jìn)行深度對(duì)齊,那么微調(diào)提供了實(shí)現(xiàn)這種對(duì)齊的更直接的途徑。它提供了真正與特定受眾或?qū)I(yè)領(lǐng)域產(chǎn)生共鳴所需的深度和定制,確保生成的內(nèi)容感覺(jué)真實(shí)且消息靈通。
快速回顧
在決定使用哪種方法來(lái)提高LLM應(yīng)用程序性能時(shí),這兩個(gè)方面是迄今為止要考慮的最重要的方面。有趣的是,在我看來(lái),它們是正交的,可以獨(dú)立使用(也可以組合使用)。
圖片由作者提供
但是,在深入研究用例之前,在選擇方法之前,我們應(yīng)該考慮幾個(gè)更關(guān)鍵的方面:
抑制幻覺(jué)有多重要?
一個(gè)LLMs缺點(diǎn)是他們傾向于產(chǎn)生幻覺(jué)——編造沒(méi)有現(xiàn)實(shí)依據(jù)的事實(shí)或細(xì)節(jié)。在準(zhǔn)確性和真實(shí)性至關(guān)重要的應(yīng)用中,這可能會(huì)帶來(lái)很大的問(wèn)題。
微調(diào)可以通過(guò)將模型建立在特定領(lǐng)域的訓(xùn)練數(shù)據(jù)中來(lái)在一定程度上幫助減少幻覺(jué)。但是,當(dāng)面對(duì)不熟悉的輸入時(shí),模型仍可能做出響應(yīng)。需要對(duì)新數(shù)據(jù)進(jìn)行重新培訓(xùn),以不斷減少虛假捏造。
相比之下,RAG 系統(tǒng)本質(zhì)上不太容易產(chǎn)生幻覺(jué),因?yàn)樗鼈儗⒚總€(gè)反應(yīng)都建立在檢索到的證據(jù)中。在生成器構(gòu)建答案之前,檢索器從外部知識(shí)源中識(shí)別相關(guān)事實(shí)。此檢索步驟充當(dāng)事實(shí)檢查機(jī)制,降低了模型的混淆能力。生成器被約束為合成由檢索到的上下文支持的響應(yīng)。
因此,在抑制謊言和富有想象力的捏造至關(guān)重要的應(yīng)用中,RAG 系統(tǒng)提供了內(nèi)置機(jī)制來(lái)最大限度地減少幻覺(jué)。在生成響應(yīng)之前檢索支持證據(jù)使 RAG 在確保事實(shí)準(zhǔn)確和真實(shí)的輸出方面具有優(yōu)勢(shì)。
有多少標(biāo)記的訓(xùn)練數(shù)據(jù)可用?
在決定 RAG 和微調(diào)時(shí),要考慮的一個(gè)關(guān)鍵因素是可供我們使用的特定于領(lǐng)域或任務(wù)的標(biāo)記訓(xùn)練數(shù)據(jù)的數(shù)量。
微調(diào)以LLM適應(yīng)特定任務(wù)或領(lǐng)域在很大程度上取決于可用標(biāo)記數(shù)據(jù)的質(zhì)量和數(shù)量。豐富的數(shù)據(jù)集可以幫助模型深入了解特定領(lǐng)域的細(xì)微差別、復(fù)雜性和獨(dú)特模式,使其能夠生成更準(zhǔn)確且與上下文相關(guān)的響應(yīng)。但是,如果我們使用的是有限的數(shù)據(jù)集,那么微調(diào)帶來(lái)的改進(jìn)可能是微不足道的。在某些情況下,數(shù)據(jù)集不足甚至可能導(dǎo)致過(guò)度擬合,即模型在訓(xùn)練數(shù)據(jù)上表現(xiàn)良好,但在處理看不見(jiàn)或真實(shí)世界的輸入時(shí)遇到困難。
相反,RAG 系統(tǒng)獨(dú)立于訓(xùn)練數(shù)據(jù),因?yàn)樗鼈兝猛獠恐R(shí)源來(lái)檢索相關(guān)信息。即使我們沒(méi)有廣泛的標(biāo)記數(shù)據(jù)集,RAG 系統(tǒng)仍然可以通過(guò)訪問(wèn)和整合來(lái)自其外部數(shù)據(jù)源的見(jiàn)解來(lái)勝任執(zhí)行。檢索和生成的結(jié)合確保了系統(tǒng)保持知情,即使在特定領(lǐng)域的訓(xùn)練數(shù)據(jù)稀疏的情況下也是如此。
從本質(zhì)上講,如果我們有大量的標(biāo)記數(shù)據(jù)來(lái)捕捉領(lǐng)域的復(fù)雜性,那么微調(diào)可以提供更定制和更精細(xì)的模型行為。但是,在此類(lèi)數(shù)據(jù)有限的情況下,RAG 系統(tǒng)提供了一種強(qiáng)大的替代方案,可確保應(yīng)用程序通過(guò)其檢索功能保持?jǐn)?shù)據(jù)知情和上下文感知。
數(shù)據(jù)的靜態(tài)/動(dòng)態(tài)程度如何?
在 RAG 和微調(diào)之間進(jìn)行選擇時(shí)要考慮的另一個(gè)基本方面是數(shù)據(jù)的動(dòng)態(tài)性質(zhì)。數(shù)據(jù)更新的頻率如何,模型保持最新的必要性有多大?
LLM對(duì)特定數(shù)據(jù)集進(jìn)行微調(diào)意味著模型的知識(shí)在訓(xùn)練時(shí)成為該數(shù)據(jù)的靜態(tài)快照。如果數(shù)據(jù)頻繁更新、更改或擴(kuò)展,這可能會(huì)迅速使模型過(guò)時(shí)。為了在如此動(dòng)態(tài)的環(huán)境中保持最新?tīng)顟B(tài)LLM,我們必須經(jīng)常對(duì)其進(jìn)行重新訓(xùn)練,這一過(guò)程既耗時(shí)又耗費(fèi)資源。此外,每次迭代都需要仔細(xì)監(jiān)視,以確保更新后的模型在不同場(chǎng)景中仍然表現(xiàn)良好,并且在理解上不會(huì)產(chǎn)生新的偏差或差距。
相比之下,RAG 系統(tǒng)在具有動(dòng)態(tài)數(shù)據(jù)的環(huán)境中具有固有的優(yōu)勢(shì)。他們的檢索機(jī)制不斷查詢外部資源,確保他們?yōu)樯身憫?yīng)而提取的信息是最新的。隨著外部知識(shí)庫(kù)或數(shù)據(jù)庫(kù)的更新,RAG 系統(tǒng)會(huì)無(wú)縫集成這些更改,從而保持其相關(guān)性,而無(wú)需頻繁地重新訓(xùn)練模型。
總而言之,如果我們正在努力應(yīng)對(duì)快速發(fā)展的數(shù)據(jù)環(huán)境,RAG 提供的敏捷性是傳統(tǒng)微調(diào)難以比擬的。通過(guò)始終與最新數(shù)據(jù)保持連接,RAG 確保生成的響應(yīng)與當(dāng)前信息狀態(tài)保持一致,使其成為動(dòng)態(tài)數(shù)據(jù)場(chǎng)景的理想選擇。
我們的LLM應(yīng)用程序需要有多透明/可解釋?zhuān)?/h2>
最后一個(gè)要考慮的方面是我們需要深入了解模型決策過(guò)程的程度。
微調(diào) LLM雖然功能強(qiáng)大,但運(yùn)行起來(lái)就像一個(gè)黑匣子,使其響應(yīng)背后的推理更加不透明。隨著模型將數(shù)據(jù)集中的信息內(nèi)化,辨別每個(gè)響應(yīng)背后的確切來(lái)源或推理變得具有挑戰(zhàn)性。這可能會(huì)使開(kāi)發(fā)人員或用戶難以信任模型的輸出,尤其是在關(guān)鍵應(yīng)用中,在這些應(yīng)用中,理解答案背后的“為什么”至關(guān)重要。
另一方面,RAG 系統(tǒng)提供的透明度水平通常在僅經(jīng)過(guò)微調(diào)的模型中找不到。鑒于 RAG 的兩步性質(zhì)——檢索和生成——用戶可以窺探該過(guò)程。檢索組件允許檢查哪些外部文檔或數(shù)據(jù)點(diǎn)被選為相關(guān)文檔或數(shù)據(jù)點(diǎn)。這提供了一個(gè)有形的證據(jù)或參考線索,可以對(duì)其進(jìn)行評(píng)估,以了解建立響應(yīng)的基礎(chǔ)。在需要高度問(wèn)責(zé)制的應(yīng)用程序中,或者當(dāng)需要驗(yàn)證所生成內(nèi)容的準(zhǔn)確性時(shí),將模型的答案追溯到特定數(shù)據(jù)源的能力可能非常寶貴。
從本質(zhì)上講,如果透明度和解釋模型響應(yīng)基礎(chǔ)的能力是優(yōu)先事項(xiàng),那么 RAG 提供了明顯的優(yōu)勢(shì)。通過(guò)將響應(yīng)生成分解為不同的階段并允許深入了解其數(shù)據(jù)檢索,RAG 可以提高對(duì)其輸出的信任和理解。
總結(jié)
在考慮這些維度時(shí),在 RAG 和微調(diào)之間進(jìn)行選擇變得更加直觀。如果我們需要傾向于獲取外部知識(shí)和重視透明度,RAG 是我們的首選。另一方面,如果我們正在處理穩(wěn)定的標(biāo)記數(shù)據(jù),并旨在使模型更接近地適應(yīng)特定需求,那么微調(diào)是更好的選擇。
在下一節(jié)中,我們將了解如何根據(jù)這些標(biāo)準(zhǔn)評(píng)估熱門(mén)LLM用例。
使用案例
讓我們看一下一些流行的用例,以及如何使用上述框架來(lái)選擇正確的方法:
摘要(在專(zhuān)業(yè)領(lǐng)域和/或特定風(fēng)格中)
1. 需要外部知識(shí)嗎?對(duì)于以前述摘要的樣式進(jìn)行匯總的任務(wù),主要數(shù)據(jù)源將是前述摘要本身。如果這些摘要包含在靜態(tài)數(shù)據(jù)集中,則幾乎不需要連續(xù)的外部數(shù)據(jù)檢索。但是,如果有一個(gè)經(jīng)常更新的摘要?jiǎng)討B(tài)數(shù)據(jù)庫(kù),并且目標(biāo)是不斷使樣式與最新條目保持一致,那么 RAG 在這里可能很有用。
2. 需要進(jìn)行模型適配嗎?這個(gè)用例的核心圍繞著適應(yīng)一個(gè)專(zhuān)門(mén)的領(lǐng)域或和/或特定的寫(xiě)作風(fēng)格。微調(diào)特別擅長(zhǎng)捕捉風(fēng)格上的細(xì)微差別、音調(diào)變化和特定領(lǐng)域的詞匯,使其成為此維度的最佳選擇。
3. 減少幻覺(jué)至關(guān)重要嗎?幻覺(jué)在大多數(shù)LLM應(yīng)用中都是有問(wèn)題的,包括總結(jié)。但是,在此用例中,要摘要的文本通常作為上下文提供。與其他用例相比,這使得幻覺(jué)不那么令人擔(dān)憂。源文本限制了模型,減少了富有想象力的捏造。因此,雖然事實(shí)的準(zhǔn)確性總是可取的,但考慮到上下文基礎(chǔ),抑制幻覺(jué)對(duì)于總結(jié)來(lái)說(shuō)優(yōu)先級(jí)較低。
4. 訓(xùn)練數(shù)據(jù)可用?如果有大量的先前摘要以模型可以從中學(xué)習(xí)的方式進(jìn)行標(biāo)記或結(jié)構(gòu)化,那么微調(diào)將成為一個(gè)非常有吸引力的選擇。另一方面,如果數(shù)據(jù)集有限,并且我們依靠外部數(shù)據(jù)庫(kù)進(jìn)行風(fēng)格調(diào)整,RAG 可以發(fā)揮作用,盡管它的主要優(yōu)勢(shì)不是風(fēng)格適應(yīng)。
5. 數(shù)據(jù)的動(dòng)態(tài)性如何?如果先前摘要的數(shù)據(jù)庫(kù)是靜態(tài)的或不經(jīng)常更新,則微調(diào)模型的知識(shí)可能會(huì)在更長(zhǎng)的時(shí)間內(nèi)保持相關(guān)性。但是,如果摘要經(jīng)常更新,并且模型需要不斷與最新的樣式更改保持一致,則 RAG 可能由于其動(dòng)態(tài)數(shù)據(jù)檢索功能而具有優(yōu)勢(shì)。
6. 需要透明度/可解釋性?這里的主要目標(biāo)是風(fēng)格對(duì)齊,因此特定摘要樣式背后的“為什么”可能不如其他用例那么重要。也就是說(shuō),如果需要追溯并了解哪些先前的摘要影響了特定輸出,RAG 提供了更多的透明度。不過(guò),這可能是此用例的次要問(wèn)題。
建議:對(duì)于此用例,**微調(diào)**似乎是更合適的選擇。主要目標(biāo)是風(fēng)格對(duì)齊,這是微調(diào)大放異彩的維度。假設(shè)有相當(dāng)數(shù)量的先前摘要可供訓(xùn)練,那么微調(diào)將LLM允許對(duì)所需的樣式進(jìn)行深度調(diào)整,捕獲領(lǐng)域的細(xì)微差別和復(fù)雜性。但是,如果摘要數(shù)據(jù)庫(kù)具有極強(qiáng)的動(dòng)態(tài)性,并且追溯影響具有價(jià)值,則可以考慮采用混合方法或傾向于RAG。
關(guān)于組織知識(shí)(即外部數(shù)據(jù))的問(wèn)答系統(tǒng)
1. 需要外部知識(shí)嗎?依賴于組織知識(shí)庫(kù)的問(wèn)答系統(tǒng)本質(zhì)上需要訪問(wèn)外部數(shù)據(jù),在本例中為組織的內(nèi)部數(shù)據(jù)庫(kù)和文檔存儲(chǔ)。該系統(tǒng)的有效性取決于它是否能夠利用這些來(lái)源并從中檢索相關(guān)信息以回答問(wèn)題。鑒于此,RAG 是此維度更合適的選擇,因?yàn)樗荚谕ㄟ^(guò)從知識(shí)源檢索相關(guān)數(shù)據(jù)來(lái)增強(qiáng)LLM功能。
2. 需要進(jìn)行模型適配嗎?根據(jù)組織及其領(lǐng)域的不同,可能需要模型與特定的術(shù)語(yǔ)、語(yǔ)氣或約定保持一致。雖然 RAG 主要關(guān)注信息檢索,但微調(diào)可以幫助調(diào)整LLM其對(duì)公司內(nèi)部語(yǔ)言或其領(lǐng)域的細(xì)微差別的響應(yīng)。因此,對(duì)于這個(gè)維度,根據(jù)具體要求,微調(diào)可能會(huì)起作用。
3. 減少幻覺(jué)至關(guān)重要嗎?在此用例中,幻覺(jué)是一個(gè)主要問(wèn)題,因?yàn)?LLMs的知識(shí)截止。如果模型無(wú)法根據(jù)它所訓(xùn)練的數(shù)據(jù)回答問(wèn)題,它幾乎肯定會(huì)恢復(fù)為(部分或全部)編造一個(gè)看似合理但不正確的答案。
4. 訓(xùn)練數(shù)據(jù)可用?如果組織有一個(gè)結(jié)構(gòu)化和標(biāo)記的以前回答過(guò)的問(wèn)題的數(shù)據(jù)集,這可以支持微調(diào)方法。但是,并非所有內(nèi)部數(shù)據(jù)庫(kù)都出于培訓(xùn)目的進(jìn)行了標(biāo)記或結(jié)構(gòu)化。在數(shù)據(jù)沒(méi)有整齊地標(biāo)記的情況下,或者主要關(guān)注點(diǎn)是檢索準(zhǔn)確且相關(guān)的答案,RAG 能夠在不需要大量標(biāo)記數(shù)據(jù)集的情況下訪問(wèn)外部數(shù)據(jù)源,這使其成為一個(gè)引人注目的選擇。
5. 數(shù)據(jù)的動(dòng)態(tài)性如何?組織中的內(nèi)部數(shù)據(jù)庫(kù)和文檔存儲(chǔ)可能是高度動(dòng)態(tài)的,經(jīng)常更新、更改或添加。如果這種活力是組織知識(shí)庫(kù)的特征,那么RAG提供了一個(gè)明顯的優(yōu)勢(shì)。它不斷查詢外部資源,確保其答案基于最新的可用數(shù)據(jù)。微調(diào)需要定期進(jìn)行再培訓(xùn)以跟上這些變化,這可能是不切實(shí)際的。
6. 需要透明度/可解釋性?對(duì)于內(nèi)部應(yīng)用程序,尤其是在金融、醫(yī)療保健或法律等領(lǐng)域,了解答案背后的原因或來(lái)源至關(guān)重要。由于 RAG 提供了檢索和生成的兩步過(guò)程,因此它本質(zhì)上可以更清楚地了解哪些文檔或數(shù)據(jù)點(diǎn)影響了特定答案。這種可追溯性對(duì)于可能需要驗(yàn)證或進(jìn)一步調(diào)查某些答案來(lái)源的內(nèi)部利益相關(guān)者來(lái)說(shuō)是無(wú)價(jià)的。
建議:對(duì)于這種用例**,RAG 系統(tǒng)**似乎是更合適的選擇。鑒于需要?jiǎng)討B(tài)訪問(wèn)組織不斷發(fā)展的內(nèi)部數(shù)據(jù)庫(kù),以及回答過(guò)程中的透明度的潛在要求,RAG 提供的功能非常適合這些需求。但是,如果非常強(qiáng)調(diào)定制模型的語(yǔ)言風(fēng)格或適應(yīng)特定領(lǐng)域的細(xì)微差別,則可以考慮納入微調(diào)元素。
客戶支持自動(dòng)化(即自動(dòng)聊天機(jī)器人或幫助臺(tái)解決方案,提供對(duì)客戶查詢的即時(shí)響應(yīng))
1. 需要外部知識(shí)嗎? 客戶支持通常需要訪問(wèn)外部數(shù)據(jù),尤其是在處理產(chǎn)品詳細(xì)信息、帳戶特定信息或故障排除數(shù)據(jù)庫(kù)時(shí)。雖然許多查詢可以通過(guò)一般知識(shí)來(lái)解決,但有些可能需要從公司數(shù)據(jù)庫(kù)或產(chǎn)品常見(jiàn)問(wèn)題解答中提取數(shù)據(jù)。在這方面,RAG從外部來(lái)源檢索相關(guān)信息的能力將是有益的。但是,值得注意的是,許多客戶支持交互也基于預(yù)定義的腳本或知識(shí),這些可以通過(guò)微調(diào)模型有效地解決。
2. 需要進(jìn)行模型適配嗎?客戶互動(dòng)需要一定的語(yǔ)氣、禮貌和清晰度,并且可能還需要公司特定的術(shù)語(yǔ)。微調(diào)對(duì)于確保LLM適應(yīng)公司的聲音、品牌和特定術(shù)語(yǔ)特別有用,從而確保一致且與品牌一致的客戶體驗(yàn)。
3. 減少幻覺(jué)至關(guān)重要嗎?對(duì)于客戶支持聊天機(jī)器人來(lái)說(shuō),避免虛假信息對(duì)于維持用戶信任至關(guān)重要。僅微調(diào)就會(huì)使模型在面對(duì)不熟悉的查詢時(shí)容易產(chǎn)生幻覺(jué)。相比之下,RAG 系統(tǒng)通過(guò)在檢索到的證據(jù)中建立響應(yīng)來(lái)抑制捏造。這種對(duì)來(lái)源事實(shí)的依賴使 RAG 聊天機(jī)器人能夠最大限度地減少有害的謊言,并在準(zhǔn)確性至關(guān)重要的情況下為用戶提供可靠的信息。
4. 訓(xùn)練數(shù)據(jù)可用?如果一家公司有客戶互動(dòng)的歷史,那么這些數(shù)據(jù)對(duì)于微調(diào)來(lái)說(shuō)是非常寶貴的??梢允褂靡郧翱蛻舨樵兗捌浣鉀Q方案的豐富數(shù)據(jù)集來(lái)訓(xùn)練模型,以便將來(lái)處理類(lèi)似的交互。如果此類(lèi)數(shù)據(jù)有限,RAG 可以通過(guò)從產(chǎn)品文檔等外部來(lái)源檢索答案來(lái)提供回退。
5. 數(shù)據(jù)的動(dòng)態(tài)性如何?客戶支持可能需要解決有關(guān)新產(chǎn)品、更新的政策或更改的服務(wù)條款的查詢。在產(chǎn)品陣容、軟件版本或公司策略頻繁更新的情況下,RAG 從最新文檔或數(shù)據(jù)庫(kù)動(dòng)態(tài)拉取的能力是有利的。另一方面,對(duì)于更靜態(tài)的知識(shí)領(lǐng)域,微調(diào)就足夠了。
6. 需要透明度/可解釋性?雖然透明度在某些領(lǐng)域是必不可少的,但在客戶支持中,主要關(guān)注點(diǎn)是準(zhǔn)確、快速和禮貌的響應(yīng)。但是,對(duì)于內(nèi)部監(jiān)控、質(zhì)量保證或解決客戶糾紛,對(duì)答案來(lái)源的可追溯性可能是有益的。在這種情況下,RAG 的檢索機(jī)制提供了額外的透明度層。
建議:對(duì)于客戶支持自動(dòng)化,**混合方法**可能是最佳選擇。微調(diào)可以確保聊天機(jī)器人與公司的品牌、語(yǔ)氣和一般知識(shí)保持一致,處理大多數(shù)典型的客戶查詢。然后,RAG 可以作為一個(gè)補(bǔ)充系統(tǒng),介入進(jìn)行更動(dòng)態(tài)或具體的查詢,確保聊天機(jī)器人可以從最新的公司文檔或數(shù)據(jù)庫(kù)中提取,從而最大限度地減少幻覺(jué)。通過(guò)集成這兩種方法,公司可以提供全面、及時(shí)和品牌一致的客戶支持體驗(yàn)。
圖片由作者提供
需要考慮的其他方面
如上所述,在決定 RAG 和微調(diào)(或兩者兼而有之)之間時(shí),還應(yīng)考慮其他因素。我們不可能深入研究它們,因?yàn)樗鼈兌际嵌喾矫娴模⑶覜](méi)有像上述某些方面那樣的明確答案(例如,如果沒(méi)有訓(xùn)練數(shù)據(jù),則根本不可能進(jìn)行微調(diào))。但這并不意味著我們應(yīng)該忽視它們:
可擴(kuò)展性
隨著組織的發(fā)展和需求的變化,所討論的方法的可擴(kuò)展性如何?鑒于 RAG 系統(tǒng)的模塊化特性,它可能會(huì)提供更直接的可擴(kuò)展性,尤其是在知識(shí)庫(kù)增長(zhǎng)的情況下。另一方面,頻繁地微調(diào)模型以適應(yīng)不斷擴(kuò)展的數(shù)據(jù)集可能對(duì)計(jì)算要求很高。
延遲和實(shí)時(shí)要求
如果應(yīng)用程序需要實(shí)時(shí)或近乎實(shí)時(shí)的響應(yīng),請(qǐng)考慮每種方法引入的延遲。RAG 系統(tǒng)涉及在生成響應(yīng)之前檢索數(shù)據(jù),與基于內(nèi)部知識(shí)生成響應(yīng)的微調(diào)LLM系統(tǒng)相比,可能會(huì)引入更多延遲。
維護(hù)和支持
從長(zhǎng)遠(yuǎn)考慮。哪個(gè)系統(tǒng)更符合組織提供一致維護(hù)和支持的能力?RAG 可能需要維護(hù)數(shù)據(jù)庫(kù)和檢索機(jī)制,而微調(diào)則需要一致的重新培訓(xùn)工作,尤其是在數(shù)據(jù)或需求發(fā)生變化的情況下。
堅(jiān)固性和可靠性
每種方法對(duì)不同類(lèi)型輸入的魯棒性如何?雖然 RAG 系統(tǒng)可以從外部知識(shí)源中提取,并可能處理一系列廣泛的問(wèn)題,但經(jīng)過(guò)良好微調(diào)的模型可能會(huì)在某些領(lǐng)域提供更高的一致性。
道德和隱私問(wèn)題
存儲(chǔ)和檢索外部數(shù)據(jù)庫(kù)可能會(huì)引發(fā)隱私問(wèn)題,尤其是在數(shù)據(jù)敏感的情況下。另一方面,一個(gè)微調(diào)的模型雖然不查詢實(shí)時(shí)數(shù)據(jù)庫(kù),但仍可能根據(jù)其訓(xùn)練數(shù)據(jù)產(chǎn)生輸出,這可能會(huì)產(chǎn)生其自身的道德影響。
與現(xiàn)有系統(tǒng)集成
組織可能已經(jīng)擁有某些基礎(chǔ)設(shè)施。RAG 的兼容性或與現(xiàn)有系統(tǒng)的微調(diào)(無(wú)論是數(shù)據(jù)庫(kù)、云基礎(chǔ)設(shè)施還是用戶界面)都會(huì)影響選擇。
用戶體驗(yàn)
考慮最終用戶及其需求。如果他們需要詳細(xì)的、有參考支持的答案,RAG 可能更可取。如果他們重視速度和特定領(lǐng)域的專(zhuān)業(yè)知識(shí),那么微調(diào)的模型可能更合適。
成本
微調(diào)可能會(huì)變得昂貴,尤其是對(duì)于非常大的模型。但在過(guò)去的幾個(gè)月里,由于采用了QLoRA等參數(shù)高效技術(shù),成本大幅下降。設(shè)置 RAG 可能是一項(xiàng)巨大的初始投資——包括集成、數(shù)據(jù)庫(kù)訪問(wèn),甚至可能是許可費(fèi)——但隨后還需要考慮定期維護(hù)外部知識(shí)庫(kù)。
復(fù)雜性
微調(diào)可能會(huì)很快變得復(fù)雜。雖然許多提供商現(xiàn)在提供一鍵式微調(diào),我們只需要提供訓(xùn)練數(shù)據(jù),但跟蹤模型版本并確保新模型仍然全面表現(xiàn)良好是具有挑戰(zhàn)性的。另一方面,RAG 也會(huì)很快變得復(fù)雜。需要設(shè)置多個(gè)組件,確保數(shù)據(jù)庫(kù)保持新鮮,并確保各個(gè)部分(如檢索和生成)恰到好處地組合在一起。
結(jié)論
正如我們所探討的,在 RAG 和微調(diào)之間進(jìn)行選擇需要對(duì)LLM應(yīng)用程序的獨(dú)特需求和優(yōu)先級(jí)進(jìn)行細(xì)致入微的評(píng)估。沒(méi)有一個(gè)放之四海而皆準(zhǔn)的解決方案;成功在于使優(yōu)化方法與任務(wù)的特定要求保持一致。通過(guò)評(píng)估關(guān)鍵標(biāo)準(zhǔn)(對(duì)外部數(shù)據(jù)的需求、調(diào)整模型行為、訓(xùn)練數(shù)據(jù)可用性、數(shù)據(jù)動(dòng)態(tài)、結(jié)果透明度等),組織可以就最佳前進(jìn)路徑做出明智的決策。在某些情況下,同時(shí)利用 RAG 和微調(diào)的混合方法可能是最佳的。
關(guān)鍵是要避免假設(shè)一種方法普遍優(yōu)越。像任何工具一樣,它們的適用性取決于手頭的工作。方法和目標(biāo)的錯(cuò)位可能會(huì)阻礙進(jìn)展,而正確的方法可以加速進(jìn)展。當(dāng)一個(gè)組織評(píng)估提升LLM應(yīng)用程序的選項(xiàng)時(shí),它必須抵制過(guò)度簡(jiǎn)化,而不是將 RAG 和微調(diào)視為可以互換的,并選擇使模型能夠?qū)崿F(xiàn)其與用例需求相符的功能的工具。這些方法解鎖的可能性是驚人的,但僅憑可能性是不夠的——執(zhí)行就是一切。工具就在這里,現(xiàn)在讓我們把它們付諸實(shí)踐。
本文轉(zhuǎn)載自 ??AI大模型世界??,作者:海科·霍茨
