載入中

介紹檢索增強生成

第 34 課2 分鐘

檢索增強生成(Retrieval Augmented Generation,RAG)是一種技術,可協助您在使用 Claude 時處理大型文件。與將整份 800 頁的財務報告塞進單一提示不同,RAG 讓您能夠智慧地找出並僅納入與每個問題最相關的部分。

大型文件的問題

想像您有一份龐大的財務文件,並想向 Claude 詢問有關該文件的具體問題,例如「這家公司有哪些風險因素?」您面臨一個根本性的挑戰:如何將文件中正確的資訊傳遞給 Claude,使其能夠有效地回答您的問題?

選項一:將所有內容納入提示中

第一種方法看似直接——從文件中提取所有文字,並將其與使用者的問題一起直接塞入您的提示中。

這種方法有幾個問題:

  • Claude 能處理的文字量有硬性限制——您的文件可能太長
  • 在非常長的提示下,Claude 的效果會變差
  • 較大的提示會花費更多金錢,且處理時間更長

選項二:將文件拆分成區塊

第二種方法更為精細。您在預處理步驟中將文件拆分成較小的區塊,然後找出並僅納入與每個使用者問題相關的區塊。

運作方式如下:當使用者詢問「這家公司面臨哪些風險?」時,您會在區塊中搜尋,找出關於「風險因素」的區塊,並僅將該部分納入您給 Claude 的提示中。

分塊方法的優點

  • Claude 可以專注於最相關的內容
  • 可擴展至非常大型的文件
  • 可處理多份文件
  • 較小的提示花費較少且執行較快

分塊方法的挑戰

  • 需要預處理步驟來拆分文件
  • 需要搜尋機制來找出「相關」的區塊
  • 納入的區塊可能無法包含 Claude 所需的所有上下文
  • 有許多拆分文字的方式——哪種方法最好?

舉例來說,如果您只納入「風險因素」部分,您可能會錯過「策略展望」部分中關於公司如何應對這些風險的重要上下文。

這就是 RAG

選項二就是檢索增強生成。儘管複雜,RAG 在處理大型文件時提供了顯著的優勢,但它也伴隨著需要仔細考量的技術挑戰。

RAG 的關鍵組成部分包括:

  • 文件預處理與分塊
  • 用於找出相關區塊的搜尋機制
  • 智慧選擇要納入提示中的區塊

在考慮為您的應用程式採用 RAG 時,您需要評估其優點是否能彌補針對您特定使用案例所增加的複雜性。當處理需要精確、具上下文答案的大型文件集合時,這項技術的優勢最為明顯,但它需要比單純將整份文件納入提示中更多的前期工程工作。