載入中

當 Claude 根據您提供的文件回答問題時,使用者可能會以為它只是從訓練數據中提取資訊。但如果 Claude 能夠準確顯示它在哪裡找到特定資訊呢?這就是引用功能的用途所在——這是一項強大的功能,讓 Claude 能夠參考您來源文件中的特定部分,並向使用者準確顯示每一項資訊的來源。

為什麼引用功能很重要

想像一下,您問 Claude 地球大氣層是如何形成的,並得到了詳細的答案。如果沒有引用功能,使用者就無法驗證這些資訊,也無法理解 Claude 實際上是在參考您提供的特定文件。引用功能透過建立一條從 Claude 的回應回溯到您的來源材料的清晰路徑,解決了這個透明度問題。

啟用引用功能

要啟用引用功能,您需要修改文件訊息結構。在您的文件區塊中新增兩個欄位:

python
{
    "type": "document",
    "source": {
        "type": "base64",
        "media_type": "application/pdf",
        "data": file_bytes,
    },
    "title": "earth.pdf",
    "citations": { "enabled": True }
}

title 欄位為您的文件提供一個易讀的名稱,而 citations: {"enabled": True} 則告訴 Claude 要追蹤它在哪裡找到資訊。

了解引用結構

啟用引用功能後,Claude 的回應會變得更加複雜。您得到的不再是簡單的文字,而是包含每項聲明引用資訊的結構化數據。

每個引用都包含幾項關鍵資訊:

  • cited_text - 支持 Claude 陳述的文件中的確切文字
  • document_index - Claude 正在參考哪份文件(當您提供多份文件時很有用)
  • document_title - 您為該文件指定的標題
  • start_page_number - 被引用文字的起始位置
  • end_page_number - 被引用文字的結束位置

使用引用功能建構使用者介面

引用功能的真正威力來自於建構能讓這些資訊易於存取的使用者介面。您可以建立互動元素,讓使用者將滑鼠懸停在引用標記上,即可準確看到資訊的來源。

這創造了一種透明的體驗,使用者可以:

  • 看到 Claude 的答案是基於實際的來源材料
  • 透過查看原始文件來驗證資訊
  • 理解每項被引用資訊周圍的上下文

純文字的引用功能

引用功能不僅限於 PDF 文件。您也可以將其用於純文字來源。在處理文字時,請像這樣修改您的文件結構:

python
{
    "type": "document", 
    "source": {
        "type": "text",
        "media_type": "text/plain",
        "data": article_text,
    },
    "title": "earth_article",
    "citations": { "enabled": True }
}

對於純文字來源,您將得到的不是頁碼,而是字元位置,精確指出 Claude 在文字中的哪個位置找到每一項資訊。

何時使用引用功能

在以下情況中,引用功能特別有價值:

  • 使用者需要驗證資訊的準確性
  • 您正在處理使用者應該能夠參考的權威文件
  • 資訊來源的透明度對您的應用程式至關重要
  • 使用者可能想要探索特定事實周圍更廣泛的上下文

透過實作引用功能,您將 Claude 從一個僅提供答案的「黑盒子」轉變為一個展示其工作過程的透明研究助手。這建立了使用者的信任,並讓他們在需要時能夠更深入地探索您的來源材料。