Claude Platform Docs
  • Messages
  • Managed Agents
  • 管理

Search...
⌘K
第一步
Claude 簡介快速入門
使用 Claude 進行建構
功能概覽使用 Messages API停止原因與備援拒絕與備援備援額度
模型能力
擴展思考自適應思考Effort任務預算(測試版)快速模式(研究預覽)結構化輸出引用串流 Messages批次處理搜尋結果串流拒絕多語言支援嵌入
工具
概覽工具使用的運作方式教學:建構使用工具的代理定義工具處理工具呼叫平行工具使用Tool Runner (SDK)嚴格工具使用工具使用與提示快取伺服器工具疑難排解網頁搜尋工具網頁擷取工具程式碼執行工具顧問工具記憶工具Bash 工具電腦使用工具文字編輯器工具
工具基礎架構
工具參考管理工具上下文工具組合工具搜尋程式化工具呼叫細粒度工具串流
上下文管理
上下文視窗壓縮上下文編輯提示快取對話中系統訊息建構協調模式快取診斷(測試版)Token 計數
處理檔案
Files APIPDF 支援圖片與視覺
技能
概覽快速入門最佳實務企業技能API 中的技能
MCP
遠端 MCP 伺服器MCP 連接器
雲端平台上的 Claude
Amazon BedrockAmazon Bedrock(舊版)AWS 上的 Claude PlatformMicrosoft FoundryVertex AI

Log in
PDF 支援
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Claude Platform Docs

Solutions

  • AI agents
  • Code modernization
  • Coding
  • Customer support
  • Education
  • Financial services
  • Government
  • Life sciences

Partners

  • Claude on AWS
  • Claude on Google Cloud

Learn

  • Blog
  • Courses
  • Use cases
  • Connectors
  • Customer stories
  • Engineering at Anthropic
  • Events
  • Powered by Claude
  • Service partners
  • Startups program

Company

  • Anthropic
  • Careers
  • Economic Futures
  • Research
  • News
  • Responsible Scaling Policy
  • Security and compliance
  • Transparency

Learn

  • Blog
  • Courses
  • Use cases
  • Connectors
  • Customer stories
  • Engineering at Anthropic
  • Events
  • Powered by Claude
  • Service partners
  • Startups program

Help and security

  • Availability
  • Status
  • Support
  • Discord

Terms and policies

  • Privacy policy
  • Responsible disclosure policy
  • Terms of service: Commercial
  • Terms of service: Consumer
  • Usage policy
Messages/處理檔案

PDF 支援

使用 Claude 處理 PDF。從您的文件中擷取文字、分析圖表,並理解視覺內容。


此功能符合「Zero Data Retention」(零資料保留),即 ZDR 的資格。當您的組織具有 ZDR 安排時,透過此功能傳送的資料在 API 回應返回後不會被儲存。

您可以向 Claude 詢問您所提供 PDF 中的任何文字、圖片、圖表和表格。以下是一些範例使用案例:

  • 分析財務報告並理解圖表/表格
  • 從法律文件中擷取關鍵資訊
  • 文件翻譯協助
  • 將文件資訊轉換為結構化格式

開始之前

檢查 PDF 需求

Claude 可處理任何標準 PDF。請確保您的請求大小符合以下需求:

需求限制
最大請求大小32 MB(依平台而異)
每個請求的最大頁數600(對於具有 20 萬 token 上下文視窗的模型為 100)
格式標準 PDF(無密碼/加密)

這兩項限制均適用於整個請求酬載,包括與 PDF 一併傳送的任何其他內容。對於大型 PDF,請考慮使用 Files API 上傳並透過 file_id 參照,以保持請求酬載較小。



密集的 PDF(許多小字體頁面、複雜表格或大量圖形)可能在達到頁數限制之前就填滿上下文視窗。即使使用 Files API,包含大型 PDF 的請求也可能在達到頁數限制之前失敗。請嘗試將文件分割成多個區段;對於大型檔案,由於每一頁都會被處理為圖片,降低嵌入圖片的取樣率也會有所幫助。

由於 PDF 支援依賴 Claude 的視覺能力,因此它受到與其他視覺任務相同的限制與考量。

支援的平台與模型

PDF 支援可在 Claude API、AWS 上的 Claude Platform、Amazon Bedrock(請參閱 Amazon Bedrock PDF 支援)、Vertex AI 以及 Microsoft Foundry 上使用。所有現行模型均支援 PDF 處理。

Amazon Bedrock PDF 支援

透過 Bedrock 的 Converse API 使用 PDF 支援時,有兩種不同的文件處理模式:



重要: 若要在 Converse API 中存取 Claude 完整的視覺 PDF 理解能力,您必須啟用引用功能。若未啟用引用功能,API 將退回至僅基本文字擷取。深入了解使用引用功能。

文件處理模式

  1. Converse Document Chat(原始模式 - 僅文字擷取)

    • 提供 PDF 的基本文字擷取
    • 無法分析 PDF 中的圖片、圖表或視覺版面配置
    • 3 頁 PDF 約使用 1,000 個 token
    • 未啟用引用功能時自動使用
  2. Claude PDF Chat(新模式 - 完整視覺理解)

    • 提供 PDF 的完整視覺分析
    • 可理解並分析圖表、圖形、圖片和視覺版面配置
    • 將每一頁同時處理為文字和圖片,以達到全面理解
    • 3 頁 PDF 約使用 7,000 個 token
    • 在 Converse API 中需要啟用引用功能

主要限制

  • Converse API:視覺 PDF 分析需要啟用引用功能。目前沒有選項可在不使用引用功能的情況下使用視覺分析(與 InvokeModel API 不同)。
  • InvokeModel API:提供對 PDF 處理的完整控制,無需強制使用引用功能。

常見問題

如果在使用 Converse API 時,Claude 無法看到您 PDF 中的圖片或圖表,您可能需要啟用引用旗標。若未啟用,Converse 將退回至僅基本文字擷取。



這是 Converse API 的已知限制。對於需要視覺 PDF 分析但不需要引用功能的應用程式,請考慮改用 InvokeModel API。



對於非 PDF 檔案,例如 .csv、.xlsx、.docx、.md 或 .txt 檔案,請參閱處理其他檔案格式。


使用 Claude 處理 PDF

傳送您的第一個 PDF 請求

讓我們從使用 Messages API 的簡單範例開始。您可以透過三種方式向 Claude 提供 PDF:

  1. 作為線上託管 PDF 的 URL 參照
  2. 作為 document 內容區塊中的 base64 編碼 PDF
  3. 透過來自 Files API 的 file_id


在 Amazon Bedrock 和 Vertex AI 上,目前僅支援 base64 編碼的來源。

選項 1:基於 URL 的 PDF 文件

最簡單的方法是直接從 URL 參照 PDF:

client = anthropic.Anthropic()
message = client.messages.create(
    model="claude-opus-4-8",
    max_tokens=1024,
    messages=[
        {
            "role": "user",
            "content": [
                {
                    "type": "document",
                    "source": {
                        "type": "url",
                        "url": "https://assets.anthropic.com/m/1cd9d098ac3e6467/original/Claude-3-Model-Card-October-Addendum.pdf",
                    },
                },
                {"type": "text", "text": "What are the key findings in this document?"},
            ],
        }
    ],
)

print(message.content)

選項 2:Base64 編碼的 PDF 文件

如果您需要從本機系統傳送 PDF,或當 URL 不可用時:

import base64
import httpx

# 首先,載入並編碼 PDF
pdf_url = "https://assets.anthropic.com/m/1cd9d098ac3e6467/original/Claude-3-Model-Card-October-Addendum.pdf"
pdf_data = base64.standard_b64encode(httpx.get(pdf_url).content).decode("utf-8")

# 替代方案:從本機檔案載入
# with open("document.pdf", "rb") as f:
#     pdf_data = base64.standard_b64encode(f.read()).decode("utf-8")

# 使用 base64 編碼傳送至 Claude
client = anthropic.Anthropic()
message = client.messages.create(
    model="claude-opus-4-8",
    max_tokens=1024,
    messages=[
        {
            "role": "user",
            "content": [
                {
                    "type": "document",
                    "source": {
                        "type": "base64",
                        "media_type": "application/pdf",
                        "data": pdf_data,
                    },
                },
                {"type": "text", "text": "What are the key findings in this document?"},
            ],
        }
    ],
)

print(message.content)

選項 3:Files API

對於您會重複使用的 PDF,或當您想避免編碼開銷時,請使用 Files API:

client = anthropic.Anthropic()

# 上傳 PDF 檔案
with open("document.pdf", "rb") as f:
    file_upload = client.beta.files.upload(file=("document.pdf", f, "application/pdf"))

# 在訊息中使用已上傳的檔案
message = client.beta.messages.create(
    model="claude-opus-4-8",
    max_tokens=1024,
    betas=["files-api-2025-04-14"],
    messages=[
        {
            "role": "user",
            "content": [
                {
                    "type": "document",
                    "source": {"type": "file", "file_id": file_upload.id},
                },
                {"type": "text", "text": "What are the key findings in this document?"},
            ],
        }
    ],
)

print(message.content)

PDF 支援的運作方式

當您將 PDF 傳送給 Claude 時,會發生以下步驟:

  1. 1

    系統擷取文件的內容。

    • 系統將文件的每一頁轉換為圖片。
    • 從每一頁擷取文字,並與每一頁的圖片一併提供。
  2. 2

    Claude 同時分析文字和圖片,以更好地理解文件。

    • 文件以文字和圖片的組合形式提供以進行分析。
    • 這讓使用者能夠詢問有關 PDF 視覺元素的見解,例如圖表、圖解和其他非文字內容。
  3. 3

    Claude 回應,並在相關時參照 PDF 的內容。

    Claude 在回應時可以同時參照文字和視覺內容。您可以透過將 PDF 支援與以下功能整合來進一步提升效能:

    • 提示快取:提升重複分析的效能。
    • 批次處理:用於大量文件處理。
    • 工具使用:從文件中擷取特定資訊以作為工具輸入。

估算您的成本

PDF 檔案的 token 數量取決於從文件中擷取的總文字量以及頁數:

  • 文字 token 成本:每頁通常使用 1,500-3,000 個 token,視內容密度而定。適用標準 API 定價,無額外 PDF 費用。
  • 圖片 token 成本:由於每一頁都會轉換為圖片,因此適用相同的基於圖片的成本計算。

您可以使用 token 計數來估算您特定 PDF 的成本。


最佳化 PDF 處理

提升效能

請遵循以下最佳實務以獲得最佳結果:

  • 在您的請求中將 PDF 放在文字之前
  • 使用標準字型
  • 確保文字清晰易讀
  • 將頁面旋轉至正確的直立方向
  • 在提示中使用邏輯頁碼(來自 PDF 檢視器)
  • 需要時將大型 PDF 分割成區塊
  • 為重複分析啟用提示快取

擴展您的實作

對於大量處理,請考慮以下方法:

使用提示快取

快取 PDF 以提升重複查詢的效能:

client = anthropic.Anthropic()
# ...
message = client.messages.create(
    model="claude-opus-4-8",
    max_tokens=1024,
    messages=[
        {
            "role": "user",
            "content": [
                {
                    "type": "document",
                    "source": {
                        "type": "base64",
                        "media_type": "application/pdf",
                        "data": pdf_data,
                    },
                    "cache_control": {"type": "ephemeral"},
                },
                {"type": "text", "text": "Analyze this document."},
            ],
        }
    ],
)

處理文件批次

使用 Message Batches API 處理大量工作流程:

client = anthropic.Anthropic()
# ...
message_batch = client.messages.batches.create(
    requests=[
        {
            "custom_id": "doc1",
            "params": {
                "model": "claude-opus-4-8",
                "max_tokens": 1024,
                "messages": [
                    {
                        "role": "user",
                        "content": [
                            {
                                "type": "document",
                                "source": {
                                    "type": "base64",
                                    "media_type": "application/pdf",
                                    "data": pdf_data,
                                },
                            },
                            {"type": "text", "text": "Summarize this document."},
                        ],
                    }
                ],
            },
        }
    ]
)

後續步驟


嘗試 PDF 範例


在 cookbook 範例中探索 PDF 處理的實用範例。


檢視 API 參考

查看 PDF 支援的完整 API 文件。

Was this page helpful?

  • 開始之前
  • 檢查 PDF 需求
  • 支援的平台與模型
  • Amazon Bedrock PDF 支援
  • 使用 Claude 處理 PDF
  • 傳送您的第一個 PDF 請求
  • PDF 支援的運作方式
  • 估算您的成本
  • 最佳化 PDF 處理
  • 提升效能
  • 擴展您的實作
  • 後續步驟