iT邦幫忙

2025 iThome 鐵人賽

DAY 14
0
IT 管理

從 Claude 到 Claude Code,非工程師小白也能掌握的辦公效率神器系列 第 14

【Day14】Contextual Retrieval 情境檢索(& Claude RAG 技術補充)

  • 分享至 

  • xImage
  •  

在最開始,我們直接和 AI 互動,得到了一些基本不錯的產出,但是它並不了解我們。

於是我們開始上傳檔案給它,讓它能有參考的情境來輔助我們。

但隨著上傳的內容越來越多,AI 開始沒辦法完整把所有內容放到它的腦袋中(不管是context window限制或是成本考量)。

於是人們開始研究起了 檢索增強生成(Retrieval-Augmented Generation, RAG)的技術,讓 AI 能從大量的內容中找出相關的內容。

但依舊隨著檔案的增加,AI 開始越來越容易出現「找不到那個正確的檔案或來源」的情況,這也是很多 AI 知識庫系統都會遇到的問題。

而今天的內容,就是來稍微討論一下這個題目,以及 Claude 是如何針對這個問題做解決的?

本日內容來自 Anthropic 的研究報告,建議預先了解 RAG 大概如何運作的即可

先來理解問題:為什麼 AI 會「失憶」?

圖書館管理員的困擾

想像一下,你是一位圖書館管理員,面對一個巨大的圖書館。為了讓讀者更容易找到資料,你做了一個看似聰明的決定:把每本書都撕成一頁一頁的,然後按照主題分類存放。

聽起來不錯對吧?讀者想找「營收成長」的資料,你就把所有提到營收成長的頁面都拿給他們。

但是問題來了!當讀者拿到一張紙條,上面寫著:「公司營收比上季成長了 3%」

他們會開始問:

  • 等等,這是哪家公司?
  • 是哪一年的資料?
  • 上一季的營收是多少?
  • 這 3% 成長算好還是壞?

你看,當我們把完整的資訊撕成片段時,重要的上下文就丟失了。這正是傳統 RAG 系統會面臨的核心問題。

現實中的痛點場景

我們來看幾個你可能遇過的實際情況:

場景一:工作報告查詢

你:「上次會議中 Amy 提到的預算問題是什麼?」
Claude:「我找到一些關於預算的討論,但不確定具體是哪次會議...」

場景二:學習筆記查詢

你:「那個關於資料結構的重要概念是什麼?」
Claude:「找到了資料結構的內容,但有很多不同的概念,你指的是哪一個?」

是不是很熟悉?這就是我們今天要解決的問題!

Contextual Retrieval:給每個資料片段一張身分證

核心概念解析

Claude 的工程師們為此想出了一個解決方案:為每個資料片段添加專屬的背景說明

我們用剛才的例子來說明:

原始片段(就像撕下來的書頁):

「公司營收比上季成長了 3%」

加上 Contextual Retrieval 後(就像給每張書頁貼上標籤):

「這個片段來自 TSMC 公司 2025 年第二季財報,前一季營收為 3.14 億美元。公司營收比上季成長了 3%」

看到差別了嗎?現在這個片段就像有了完整的身分證,包含了所有必要的背景資訊!

技術實現:讓 Claude 自己當秘書

你可能會想:「這聽起來不錯,但要怎麼實現?總不能讓我手動為每個片段寫背景說明吧?」

別擔心,Anthropic 想到了這一點!他們讓 Claude 扮演一個超級細心的秘書角色:

步驟一:把完整文件和單一片段都交給 Claude
步驟二:請 Claude 為這個片段寫一段 50-100 字的背景介紹
步驟三:把這段背景說明貼到原始片段前面

整個過程完全自動化,我們什麼都不用做!

效果:檢索準確度的顯著提升

Anthropic 做了大量的測試,發現得到了蠻大程度的改善

  • 基礎版本:檢索失敗率從 5.7% 降到 3.7%(改善 35%)
  • 完整技術組合:檢索失敗率降到 1.9%(改善 67%)

進階補充:Claude 的檢索技術組成

(這一段內容屬於延伸補充,如果非技術的讀者看不懂可以先不用太糾結)

既然都寫到這邊了,最後就再補充一下 Claude 所使用到的所有檢索技術,以及他們的目的分別是什麼好了:

1. 語義搜尋(Embeddings)

  • 核心功能:理解詞語背後的真正意思,找出概念相關的內容
  • 生活比喻:像個很會「意會」的朋友,你說「減肥」它就知道要找「體重管理」、「健康飲食」相關內容
  • 實際效果:即使用詞不同,也能找到相關資料

2. 精確搜尋(BM25)

  • 核心功能:尋找完全符合關鍵字的內容,特別適合專有名詞和代碼
  • 生活比喻:像個較真的朋友,你要「錯誤代碼 TS-999」它就一個字不差地找給你
  • 實際效果:確保重要的精確資訊不會被遺漏

3. 情境化檢索(Contextual Retrieval)

  • 核心功能:為每個資料片段加上完整背景,解決「內容對但缺乏脈絡」的問題
  • 生活比喻:像個記憶超好的朋友,不只記得內容,還記得這內容的來龍去脈
  • 實際效果:找到的資料都帶有時間、地點、相關人物等關鍵資訊

4. 重新排序(Reranking)

  • 核心功能:從大量初步結果中篩選出最相關的內容
  • 生活比喻:像個很會篩選的朋友,從一堆答案中幫你挑出最有用的那幾個
  • 實際效果:確保最終呈現的都是高品質、高相關性的答案

對 Claude Projects 使用者的意義

為什麼你應該知道這個技術?

還記得我們前面提到的 Claude Projects 的 RAG 模式嗎?Contextual Retrieval 正是讓這個功能變得如此強大的核心技術!

實際使用建議

1. 放心上傳更多內容

以前你可能會擔心:「上傳太多文件會不會讓 Claude 變笨?」
現在你可以放心了!上傳的內容越多,Claude 越聰明。

2. 更精確的命名和組織

雖然技術已經很聰明了,但我們還是可以透過良好的檔案命名來幫助它:

  • ✅ 「TSMC_2025Q2_財報.pdf」
  • ❌ 「文件1.pdf」

3. 善用專案分類

不同類型的內容放在不同的專案中,讓 Contextual Retrieval 能夠更精準地工作。

結語murmur

雖然一開始的定位是提供給非技術人員,但是偶爾還是會遇到這種「要說明背後原理」&「為何有效」的時候,還是不免會稍微硬一點的內容。不知道非技術背景的人閱讀起來如何,會不會覺得太難理解呢?但希望補充這些內容,是更能幫助大家去掌握這個工具在不同情況下的使用概念,從 know-how 到 know-why 的~


上一篇
【Day13】Project Instructions - 小兵立大功的專案指令(& 進階偽命令技巧)
系列文
從 Claude 到 Claude Code,非工程師小白也能掌握的辦公效率神器14
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言