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