設(shè)計(jì)指南:四種核心工作模式詳解與應(yīng)用實(shí)踐)
前言在模塊化RAGRetrieval-Augmented Generation設(shè)計(jì)中各種操作模式通過模塊化的方式協(xié)同工作形成了一個(gè)名為RAG流的工作流程。這個(gè)RAG流可以被視為由多個(gè)子函數(shù)組成的圖形結(jié)構(gòu)。通過控制邏輯這些子函數(shù)會(huì)按預(yù)定的順序執(zhí)行同時(shí)也能根據(jù)需求進(jìn)行條件判斷、分支或循環(huán)。這種模塊化特性讓RAG系統(tǒng)能夠靈活應(yīng)對(duì)不同的應(yīng)用場(chǎng)景并且提升了系統(tǒng)的設(shè)計(jì)效率和擴(kuò)展性。在分析現(xiàn)有的RAG方法時(shí)我們可以看到模塊化的結(jié)構(gòu)使得RAG系統(tǒng)可以在處理復(fù)雜任務(wù)時(shí)更具適應(yīng)性。本章將詳細(xì)介紹幾種常見的RAG模式包括線性模式在這個(gè)模式下各個(gè)模塊按順序依次執(zhí)行每個(gè)步驟的輸出作為下一個(gè)步驟的輸入適用于順序性較強(qiáng)的任務(wù)。條件模式根據(jù)特定的條件選擇性地執(zhí)行不同的模塊操作。這個(gè)模式能夠處理具有分支或選擇性的任務(wù)。分支模式與條件模式類似但它更多地用于任務(wù)中涉及多個(gè)并行處理路徑的場(chǎng)景。循環(huán)模式當(dāng)某些操作需要重復(fù)執(zhí)行時(shí)循環(huán)模式便會(huì)派上用場(chǎng)。它適合那些需要反復(fù)處理相似任務(wù)的應(yīng)用。通過這些模式的結(jié)合RAG系統(tǒng)不僅能夠高效地處理多樣化的任務(wù)需求還可以在面對(duì)復(fù)雜任務(wù)時(shí)保持靈活性與擴(kuò)展性。1 線性模式在RAG系統(tǒng)中線性模式是最簡(jiǎn)單且最常見的工作流模式。其核心流程包括幾個(gè)主要模塊預(yù)檢索Pre-Retrieval、檢索、后檢索Post-Retrieval和生成模塊。這些模塊按順序依次進(jìn)行處理如圖示。值得注意的是當(dāng)預(yù)檢索和檢索后處理模塊缺失時(shí)線性模式會(huì)簡(jiǎn)化為一種稱為樸素檢索增強(qiáng)生成Naive RAG的基本范式僅包含檢索和生成過程。為了提升生成的質(zhì)量常見的線性RAG流通過以下幾個(gè)步驟優(yōu)化預(yù)檢索階段這一階段引入了查詢變換模塊通常采用查詢重寫或者隱式文檔擴(kuò)展HyDE等操作符。通過這些變換查詢能夠更好地適應(yīng)檢索需求提高檢索的相關(guān)性。檢索階段在這一階段系統(tǒng)通過檢索工具如BM25從外部知識(shí)庫中獲取與重寫后的查詢高度相關(guān)的文檔或上下文信息。后檢索階段檢索結(jié)果進(jìn)一步優(yōu)化通常通過排序模塊對(duì)檢索的結(jié)果進(jìn)行調(diào)整使得最終選出的文檔最能滿足生成需求。生成模塊最終通過生成模型例如GPT或T5等處理優(yōu)化后的文檔上下文產(chǎn)生高質(zhì)量的回答或生成內(nèi)容。一個(gè)典型的線性RAG流模式是“重寫-檢索-閱讀Rewrite-Retrieve-ReadRRR”方法。該方法在預(yù)檢索階段引入了一個(gè)查詢重寫模塊。這個(gè)模塊基于T5-large模型的微調(diào)版本并通過強(qiáng)化學(xué)習(xí)框架進(jìn)行優(yōu)化將查詢重寫過程建模為馬爾可夫決策過程MDP。在這個(gè)過程中查詢重寫模塊的輸出質(zhì)量被視為獎(jiǎng)勵(lì)信號(hào)強(qiáng)化學(xué)習(xí)算法通過策略梯度方法來調(diào)整和優(yōu)化生成的查詢從而確保查詢更符合檢索任務(wù)的需求。這種方式提升了檢索的效率并進(jìn)一步改善了生成結(jié)果的效果。在檢索階段RRR方法使用了稀疏編碼模型如BM25進(jìn)行檢索從外部知識(shí)庫中獲取與重寫后的查詢相關(guān)的文檔進(jìn)一步增強(qiáng)了系統(tǒng)生成內(nèi)容的準(zhǔn)確性和可靠性。通過這樣的設(shè)計(jì)線性模式的RAG流不僅提高了生成質(zhì)量還能在實(shí)際應(yīng)用中實(shí)現(xiàn)高效的知識(shí)提取和生成。2 條件模式條件模式是一種靈活的RAG流模式其核心特點(diǎn)是在不同的條件下選擇不同的工作流以便針對(duì)特定場(chǎng)景進(jìn)行優(yōu)化。這種模式的關(guān)鍵在于一個(gè)路由模塊Routing Module該模塊根據(jù)輸入問題的特性動(dòng)態(tài)選擇接下來的處理流程如下圖所示。具體來說當(dāng)系統(tǒng)接收到不同類型的問題時(shí)它會(huì)根據(jù)預(yù)設(shè)的條件或規(guī)則決定如何處理。例如對(duì)于涉及嚴(yán)肅議題、政治話題或娛樂內(nèi)容等不同類型的問題系統(tǒng)會(huì)自動(dòng)切換到不同的處理流程。這種動(dòng)態(tài)路由機(jī)制顯著提升了系統(tǒng)處理多樣化任務(wù)的能力使得系統(tǒng)能夠靈活應(yīng)對(duì)各種復(fù)雜場(chǎng)景。條件模式的分支流主要體現(xiàn)在以下幾個(gè)方面檢索來源系統(tǒng)會(huì)根據(jù)問題的性質(zhì)選擇不同的檢索來源。例如對(duì)于嚴(yán)肅問題系統(tǒng)可能會(huì)選擇更可靠的、權(quán)威性的來源而對(duì)于娛樂性問題則可能選擇更多元或創(chuàng)意性的資料。流程選擇針對(duì)不同任務(wù)的需求條件模式可能會(huì)調(diào)整流程的細(xì)節(jié)控制模塊的順序、執(zhí)行的操作甚至是否進(jìn)行一些后處理。模型配置不同類型的問題可能需要不同的模型配置。比如嚴(yán)肅問題可能使用更精確、保守的模型而娛樂類問題則可能使用更具創(chuàng)意性和生成自由度的模型。提示設(shè)計(jì)根據(jù)任務(wù)的性質(zhì)系統(tǒng)的提示設(shè)計(jì)Prompt Design也會(huì)有所不同。對(duì)于嚴(yán)肅問題提示可能會(huì)更為規(guī)范和嚴(yán)格而對(duì)于娛樂類問題提示可能會(huì)更具開放性和靈活性。舉個(gè)例子對(duì)于嚴(yán)肅性較高的問題如法律、健康、政治等系統(tǒng)可能會(huì)選擇更加可靠的檢索來源并對(duì)生成的內(nèi)容設(shè)置嚴(yán)格的約束確保信息的準(zhǔn)確性和權(quán)威性。而對(duì)于娛樂類的問題如電影、游戲、搞笑等系統(tǒng)則可以容忍更多的創(chuàng)意和不拘一格的生成提供富有娛樂性和趣味性的回答。通過這種方式條件模式能夠根據(jù)任務(wù)的需求動(dòng)態(tài)調(diào)整RAG各個(gè)組件確保生成的回答既符合場(chǎng)景需求又保持高相關(guān)性和準(zhǔn)確性。這種靈活性使得條件模式在處理多樣化、復(fù)雜性高的任務(wù)時(shí)具有顯著的優(yōu)勢(shì)能夠有效提升系統(tǒng)的適應(yīng)能力和輸出質(zhì)量。3 分支模式分支模式是RAGRetrieval-Augmented Generation系統(tǒng)中一種增加結(jié)果多樣性和魯棒性的重要設(shè)計(jì)方式。它通過并行運(yùn)行多個(gè)分支來生成多樣化的結(jié)果從而提升系統(tǒng)的性能和準(zhǔn)確性。具體來說分支模式在某個(gè)模塊中生成多個(gè)并行的分支每個(gè)分支可以獨(dú)立執(zhí)行相同或不同的RAG流程。這些分支通常由多個(gè)處理模塊組成每個(gè)模塊生成各自的結(jié)果。然后這些分支的結(jié)果會(huì)通過一個(gè)聚合函數(shù)合并成一個(gè)中間輸出結(jié)果。值得注意的是合并后的結(jié)果不一定意味著流程的結(jié)束它們還可以傳遞到后續(xù)模塊如驗(yàn)證模塊進(jìn)行進(jìn)一步處理。整體流程從生成多個(gè)分支、獨(dú)立處理、到結(jié)果聚合形成了一個(gè)完整的流水線。與條件模式不同分支模式的特點(diǎn)在于同時(shí)并行運(yùn)行多個(gè)分支而不是從多個(gè)選項(xiàng)中選擇一個(gè)分支。這使得分支模式能夠同時(shí)從多個(gè)角度進(jìn)行處理生成更加豐富和多樣化的結(jié)果。分支模式的結(jié)構(gòu)類型根據(jù)任務(wù)需求分支模式可以設(shè)計(jì)為不同的結(jié)構(gòu)通常分為兩種類型預(yù)檢索分支模式Pre-Retrieval Branching這種模式通過生成多個(gè)子查詢并并行檢索旨在提高檢索的全面性和生成結(jié)果的多樣性。具體流程是首先通過查詢擴(kuò)展模塊將初始查詢擴(kuò)展為多個(gè)子查詢。每個(gè)子查詢?nèi)缓笸ㄟ^檢索模塊獲取相關(guān)文檔形成文檔集合。這些文檔和相應(yīng)的子查詢一同送入生成模塊產(chǎn)生多個(gè)答案集合。最終所有生成的答案通過融合模塊進(jìn)行整合形成最終的結(jié)果。這種模式的優(yōu)勢(shì)在于它能夠從多個(gè)角度挖掘潛在信息增強(qiáng)生成結(jié)果的覆蓋度和準(zhǔn)確性。它特別適用于需要廣泛搜索和多角度生成的任務(wù)。后檢索分支模式Post-Retrieval Branching該模式從單一查詢開始首先通過檢索模塊獲取多個(gè)文檔塊。然后每個(gè)文檔塊被獨(dú)立送入生成模塊進(jìn)行處理生成對(duì)應(yīng)的結(jié)果集合。這些結(jié)果最終會(huì)通過合并模塊整合形成最終輸出。與預(yù)檢索分支模式不同后檢索分支模式的特點(diǎn)在于它通過單一查詢進(jìn)行檢索而并行生成則集中在對(duì)不同文檔塊的獨(dú)立處理上。這個(gè)模式非常適合那些需要從同一查詢結(jié)果中挖掘多角度信息的場(chǎng)景能更好地利用檢索到的內(nèi)容提升生成結(jié)果的多樣性和質(zhì)量。分支模式的優(yōu)勢(shì)通過并行執(zhí)行多個(gè)分支分支模式能夠從多個(gè)角度生成和整合信息極大地提升了系統(tǒng)的生成能力和結(jié)果質(zhì)量。它特別適合于處理復(fù)雜場(chǎng)景和多任務(wù)需求可以為不同的應(yīng)用場(chǎng)景提供更加多樣和精準(zhǔn)的答案。因此分支模式在多任務(wù)處理和復(fù)雜場(chǎng)景中具有顯著的優(yōu)勢(shì)。4 循環(huán)模式循環(huán)模式是RAGRetrieval-Augmented Generation系統(tǒng)中一種重要的設(shè)計(jì)方式其核心特點(diǎn)是檢索與生成步驟之間的相互依賴性。通過引入一個(gè)調(diào)度模塊來控制流程循環(huán)模式確保系統(tǒng)可以根據(jù)任務(wù)需求在不同模塊之間重復(fù)執(zhí)行某些操作。這使得循環(huán)模式可以不斷優(yōu)化流程中的步驟提升任務(wù)的最終效果。循環(huán)模式的基本原理循環(huán)模式可以抽象為一個(gè)有向圖圖中的節(jié)點(diǎn)代表系統(tǒng)中的各個(gè)模塊邊則表示模塊之間的控制流或數(shù)據(jù)流。當(dāng)某個(gè)模塊的輸出能夠返回到之前的模塊時(shí)系統(tǒng)就形成了一個(gè)循環(huán)結(jié)構(gòu)。這樣的設(shè)計(jì)讓系統(tǒng)可以根據(jù)需要在某些步驟之間來回循環(huán)以不斷優(yōu)化結(jié)果直到達(dá)到理想的效果。判斷模塊在循環(huán)模式中判斷模塊Judge Module起到了關(guān)鍵作用。它用于決定系統(tǒng)是否需要返回到前一個(gè)模塊或者是否繼續(xù)向下執(zhí)行。例如在每一次生成或檢索之后判斷模塊可以根據(jù)當(dāng)前的輸出結(jié)果、歷史數(shù)據(jù)、查詢和檢索到的文檔來決定是否繼續(xù)迭代。如果決定返回流程就會(huì)進(jìn)行循環(huán)如果決定不返回流程則繼續(xù)向前執(zhí)行。這樣系統(tǒng)能夠根據(jù)當(dāng)前任務(wù)的情況動(dòng)態(tài)調(diào)整整個(gè)流程。循環(huán)模式的類型循環(huán)模式可以進(jìn)一步細(xì)分為三種類型迭代型循環(huán)模式、遞歸型循環(huán)模式和自適應(yīng)型主動(dòng)型循環(huán)模式。每種模式都適用于不同的場(chǎng)景提供了靈活的處理方式。迭代型循環(huán)模式迭代型循環(huán)模式通過多次執(zhí)行檢索和生成操作在每次迭代中逐步優(yōu)化結(jié)果。如下圖所示在每一步迭代中系統(tǒng)根據(jù)當(dāng)前的查詢和之前的輸出結(jié)果來檢索相關(guān)文檔然后使用這些文檔生成新的輸出。迭代過程通常會(huì)設(shè)置一個(gè)最大迭代次數(shù)的限制以避免出現(xiàn)無限循環(huán)。在每次迭代后判斷模塊會(huì)根據(jù)當(dāng)前的生成結(jié)果、歷史輸出、查詢和檢索到的文檔來決定是否繼續(xù)迭代。迭代型模式非常適合那些需要逐步收集信息并動(dòng)態(tài)調(diào)整的任務(wù)能夠逐漸完善對(duì)復(fù)雜問題的回答。遞歸型循環(huán)模式遞歸型循環(huán)模式則是一種具有明顯依賴性和層次性的檢索方式如圖所示。每一步操作都依賴于前一步的輸出并通過不斷深化檢索過程逐步獲取更深入的信息。遞歸型模式通常遵循類似樹狀結(jié)構(gòu)的模式每次檢索會(huì)基于改寫后的查詢進(jìn)一步展開以精確定位所需的知識(shí)。遞歸型檢索具有明確的退出機(jī)制以確保在達(dá)到終止條件時(shí)流程停止從而避免無限遞歸。此模式適用于需要分步推理或逐層分析的任務(wù)能夠深入挖掘相關(guān)信息并生成高質(zhì)量的回答。自適應(yīng)型主動(dòng)型循環(huán)模式自適應(yīng)型循環(huán)模式是一種超越傳統(tǒng)被動(dòng)檢索的方式得益于大語言模型強(qiáng)大的能力。如圖9.16所示自適應(yīng)型模式的核心思想是通過智能體的方式動(dòng)態(tài)調(diào)整檢索流程主動(dòng)決定何時(shí)進(jìn)行檢索何時(shí)終止流程并生成最終結(jié)果。這種模式與傳統(tǒng)的固定流程不同具有更高的靈活性和智能性。它能夠?qū)崟r(shí)根據(jù)任務(wù)的需求調(diào)整策略判斷最佳的執(zhí)行路徑。自適應(yīng)型檢索通常通過兩種方法來進(jìn)一步細(xì)分一是基于提示的方法通過設(shè)計(jì)動(dòng)態(tài)提示來引導(dǎo)模型的檢索二是基于指令微調(diào)的方法通過微調(diào)模型來實(shí)現(xiàn)更精準(zhǔn)的檢索控制。自適應(yīng)型模式特別適用于復(fù)雜任務(wù)或動(dòng)態(tài)信息需求的場(chǎng)景能夠提升檢索效率和生成質(zhì)量。循環(huán)模式的優(yōu)勢(shì)通過引入循環(huán)結(jié)構(gòu)循環(huán)模式能夠讓系統(tǒng)在檢索與生成的過程中不斷優(yōu)化逐步提升任務(wù)的完成效果。無論是迭代型的逐步改進(jìn)還是遞歸型的深度推理或是自適應(yīng)型的智能控制循環(huán)模式都為RAG系統(tǒng)提供了強(qiáng)大的靈活性和處理能力能夠在面對(duì)復(fù)雜問題時(shí)進(jìn)行更精確的調(diào)整和優(yōu)化從而提升生成結(jié)果的質(zhì)量和準(zhǔn)確性。最后為什么要學(xué)AI大模型當(dāng)下??智能市場(chǎng)迎來了爆發(fā)期并逐漸進(jìn)?以??通?智能AGI為主導(dǎo)的新時(shí)代。企業(yè)紛紛官宣“ AI ”戰(zhàn)略為新興技術(shù)?才創(chuàng)造豐富的就業(yè)機(jī)會(huì)?才缺?將達(dá) 400 萬DeepSeek問世以來生成式AI和大模型技術(shù)爆發(fā)式增長(zhǎng)讓很多崗位重新成了炙手可熱的新星崗位薪資遠(yuǎn)超很多后端崗位在程序員中穩(wěn)居前列。與此同時(shí)AI與各行各業(yè)深度融合飛速發(fā)展成為炙手可熱的新風(fēng)口企業(yè)非常需要了解AI、懂AI、會(huì)用AI的員工紛紛開出高薪招聘AI大模型相關(guān)崗位。最近很多程序員朋友都已經(jīng)學(xué)習(xí)或者準(zhǔn)備學(xué)習(xí) AI 大模型后臺(tái)也經(jīng)常會(huì)有小伙伴咨詢學(xué)習(xí)路線和學(xué)習(xí)資料我特別拜托北京清華大學(xué)學(xué)士和美國加州理工學(xué)院博士學(xué)位的魯為民老師給大家這里給大家準(zhǔn)備了一份涵蓋了AI大模型入門學(xué)習(xí)思維導(dǎo)圖、精品AI大模型學(xué)習(xí)書籍手冊(cè)、視頻教程、實(shí)戰(zhàn)學(xué)習(xí)等錄播視頻全系列的學(xué)習(xí)資料這些學(xué)習(xí)資料不僅深入淺出而且非常實(shí)用讓大家系統(tǒng)而高效地掌握AI大模型的各個(gè)知識(shí)點(diǎn)。這份完整版的大模型 AI 學(xué)習(xí)資料已經(jīng)上傳CSDN朋友們?nèi)绻枰梢晕⑿艗呙柘路紺SDN官方認(rèn)證二維碼免費(fèi)領(lǐng)取【保證100%免費(fèi)】AI大模型系統(tǒng)學(xué)習(xí)路線在面對(duì)AI大模型開發(fā)領(lǐng)域的復(fù)雜與深入精準(zhǔn)學(xué)習(xí)顯得尤為重要。一份系統(tǒng)的技術(shù)路線圖不僅能夠幫助開發(fā)者清晰地了解從入門到精通所需掌握的知識(shí)點(diǎn)還能提供一條高效、有序的學(xué)習(xí)路徑。但知道是一回事做又是另一回事初學(xué)者最常遇到的問題主要是理論知識(shí)缺乏、資源和工具的限制、模型理解和調(diào)試的復(fù)雜性在這基礎(chǔ)上找到高質(zhì)量的學(xué)習(xí)資源不浪費(fèi)時(shí)間、不走彎路又是重中之重。AI大模型入門到實(shí)戰(zhàn)的視頻教程項(xiàng)目包看視頻學(xué)習(xí)是一種高效、直觀、靈活且富有吸引力的學(xué)習(xí)方式可以更直觀地展示過程能有效提升學(xué)習(xí)興趣和理解力是現(xiàn)在獲取知識(shí)的重要途徑光學(xué)理論是沒用的要學(xué)會(huì)跟著一起敲要?jiǎng)邮謱?shí)操才能將自己的所學(xué)運(yùn)用到實(shí)際當(dāng)中去這時(shí)候可以搞點(diǎn)實(shí)戰(zhàn)案例來學(xué)習(xí)。海量AI大模型必讀的經(jīng)典書籍PDF閱讀AI大模型經(jīng)典書籍可以幫助讀者提高技術(shù)水平開拓視野掌握核心技術(shù)提高解決問題的能力同時(shí)也可以借鑒他人的經(jīng)驗(yàn)。對(duì)于想要深入學(xué)習(xí)AI大模型開發(fā)的讀者來說閱讀經(jīng)典書籍是非常有必要的。600AI大模型報(bào)告實(shí)時(shí)更新這套包含640份報(bào)告的合集涵蓋了AI大模型的理論研究、技術(shù)實(shí)現(xiàn)、行業(yè)應(yīng)用等多個(gè)方面。無論您是科研人員、工程師還是對(duì)AI大模型感興趣的愛好者這套報(bào)告合集都將為您提供寶貴的信息和啟示。AI大模型面試真題答案解析我們學(xué)習(xí)AI大模型必然是想找到高薪的工作下面這些面試題都是總結(jié)當(dāng)前最新、最熱、最高頻的面試題并且每道題都有詳細(xì)的答案面試前刷完這套面試題資料小小offer不在話下這份完整版的大模型 AI 學(xué)習(xí)資料已經(jīng)上傳CSDN朋友們?nèi)绻枰梢晕⑿艗呙柘路紺SDN官方認(rèn)證二維碼免費(fèi)領(lǐng)取【保證100%免費(fèi)】