Loading...
    • 开发者指南
    • API 参考
    • MCP
    • 资源
    • 更新日志
    Search...
    ⌘K
    入门
    Claude 简介快速开始
    模型与定价
    模型概览选择模型Claude 4.6 新特性迁移指南模型弃用定价
    使用 Claude 构建
    功能概览使用 Messages API处理停止原因提示词最佳实践
    上下文管理
    上下文窗口压缩上下文编辑
    能力
    提示缓存扩展思考自适应思考推理力度流式消息批量处理引用多语言支持Token 计数嵌入视觉PDF 支持Files API搜索结果结构化输出
    工具
    概览如何实现工具使用细粒度工具流式传输Bash 工具代码执行工具程序化工具调用计算机使用工具文本编辑器工具网页抓取工具网页搜索工具记忆工具工具搜索工具
    Agent Skills
    概览快速开始最佳实践企业级 Skills通过 API 使用 Skills
    Agent SDK
    概览快速开始TypeScript SDKTypeScript V2(预览版)Python SDK迁移指南
    API 中的 MCP
    MCP 连接器远程 MCP 服务器
    第三方平台上的 Claude
    Amazon BedrockMicrosoft FoundryVertex AI
    提示工程
    概览提示词生成器使用提示词模板提示词优化器清晰直接使用示例(多样本提示)让 Claude 思考(思维链)使用 XML 标签赋予 Claude 角色(系统提示词)链式复杂提示长上下文技巧扩展思考技巧
    测试与评估
    定义成功标准开发测试用例使用评估工具降低延迟
    加强安全护栏
    减少幻觉提高输出一致性防范越狱攻击流式拒绝减少提示词泄露保持 Claude 角色设定
    管理与监控
    Admin API 概览数据驻留工作空间用量与成本 APIClaude Code Analytics API零数据留存
    Console
    Log in
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...

    Solutions

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

    Partners

    • Amazon Bedrock
    • Google Cloud's Vertex AI

    Learn

    • Blog
    • Catalog
    • 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
    • Catalog
    • 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
    能力

    PDF 支持

    使用 Claude 处理 PDF。从文档中提取文本、分析图表并理解视觉内容。

    Was this page helpful?

    • 检查 PDF 要求
    • Amazon Bedrock PDF 支持
    • 使用 Claude 处理 PDF
    • 发送您的第一个 PDF 请求
    • PDF 支持的工作原理
    • 优化 PDF 处理

    您现在可以就您提供的 PDF 中的任何文本、图片、图表和表格向 Claude 提问。一些示例用例:

    • 分析财务报告并理解图表/表格
    • 从法律文件中提取关键信息
    • 文档翻译辅助
    • 将文档信息转换为结构化格式

    开始之前

    检查 PDF 要求

    Claude 可以处理任何标准 PDF。但是,在使用 PDF 支持时,您应确保请求大小满足以下要求:

    要求限制
    最大请求大小32MB
    每次请求最大页数100
    格式标准 PDF(无密码/加密)

    请注意,这两个限制都是针对整个请求负载的,包括与 PDF 一起发送的任何其他内容。

    由于 PDF 支持依赖于 Claude 的视觉能力,因此它受到与其他视觉任务相同的限制和注意事项的约束。

    支持的平台和模型

    PDF 支持目前通过直接 API 访问和 Google Vertex AI 提供。所有活跃模型都支持 PDF 处理。

    PDF 支持现已在 Amazon Bedrock 上可用,但需注意以下事项:

    Amazon Bedrock PDF 支持

    通过 Amazon 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:视觉 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

    选项 1:基于 URL 的 PDF 文档

    最简单的方法是直接从 URL 引用 PDF:

    选项 2:Base64 编码的 PDF 文档

    如果您需要从本地系统发送 PDF 或 URL 不可用时:

    选项 3:Files API

    对于您将重复使用的 PDF,或者当您想避免编码开销时,请使用 Files API:

    PDF 支持的工作原理

    当您向 Claude 发送 PDF 时,会执行以下步骤:

    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 以提高重复查询的性能:

    批量处理文档

    使用 Message Batches API 处理大批量工作流:

    后续步骤

    尝试 PDF 示例
    需要在 Converse API 中启用引用功能
     curl https://api.anthropic.com/v1/messages \
       -H "content-type: application/json" \
       -H "x-api-key: $ANTHROPIC_API_KEY" \
       -H "anthropic-version: 2023-06-01" \
       -d '{
         "model": "claude-opus-4-6",
         "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?"
             }]
         }]
     }'
    # Method 1: Fetch and encode a remote PDF
    curl -s "https://assets.anthropic.com/m/1cd9d098ac3e6467/original/Claude-3-Model-Card-October-Addendum.pdf" | base64 | tr -d '\n' > pdf_base64.txt
    
    # Method 2: Encode a local PDF file
    # base64 document.pdf | tr -d '\n' > pdf_base64.txt
    
    # Create a JSON request file using the pdf_base64.txt content
    jq -n --rawfile PDF_BASE64 pdf_base64.txt '{
        "model": "claude-opus-4-6",
        "max_tokens": 1024,
        "messages": [{
            "role": "user",
            "content": [{
                "type": "document",
                "source": {
                    "type": "base64",
                    "media_type": "application/pdf",
                    "data": $PDF_BASE64
                }
            },
            {
                "type": "text",
                "text": "What are the key findings in this document?"
            }]
        }]
    }' > request.json
    
    # Send the API request using the JSON file
    curl https://api.anthropic.com/v1/messages \
      -H "content-type: application/json" \
      -H "x-api-key: $ANTHROPIC_API_KEY" \
      -H "anthropic-version: 2023-06-01" \
      -d @request.json
    # First, upload your PDF to the Files API
    curl -X POST https://api.anthropic.com/v1/files \
      -H "x-api-key: $ANTHROPIC_API_KEY" \
      -H "anthropic-version: 2023-06-01" \
      -H "anthropic-beta: files-api-2025-04-14" \
      -F "[email protected]"
    
    # Then use the returned file_id in your message
    curl https://api.anthropic.com/v1/messages \
      -H "content-type: application/json" \
      -H "x-api-key: $ANTHROPIC_API_KEY" \
      -H "anthropic-version: 2023-06-01" \
      -H "anthropic-beta: files-api-2025-04-14" \
      -d '{
        "model": "claude-opus-4-6", 
        "max_tokens": 1024,
        "messages": [{
          "role": "user",
          "content": [{
            "type": "document",
            "source": {
              "type": "file",
              "file_id": "file_abc123"
            }
          },
          {
            "type": "text",
            "text": "What are the key findings in this document?"
          }]
        }]
      }'
    # 使用 pdf_base64.txt 内容创建 JSON 请求文件
    jq -n --rawfile PDF_BASE64 pdf_base64.txt '{
        "model": "claude-opus-4-6",
        "max_tokens": 1024,
        "messages": [{
            "role": "user",
            "content": [{
                "type": "document",
                "source": {
                    "type": "base64",
                    "media_type": "application/pdf",
                    "data": $PDF_BASE64
                },
                "cache_control": {
                  "type": "ephemeral"
                }
            },
            {
                "type": "text",
                "text": "Which model has the highest human preference win rates across each use-case?"
            }]
        }]
    }' > request.json
    
    # 然后使用 JSON 文件进行 API 调用
    curl https://api.anthropic.com/v1/messages \
      -H "content-type: application/json" \
      -H "x-api-key: $ANTHROPIC_API_KEY" \
      -H "anthropic-version: 2023-06-01" \
      -d @request.json
    # 使用 pdf_base64.txt 内容创建 JSON 请求文件
    jq -n --rawfile PDF_BASE64 pdf_base64.txt '
    {
      "requests": [
          {
              "custom_id": "my-first-request",
              "params": {
                  "model": "claude-opus-4-6",
                  "max_tokens": 1024,
                  "messages": [
                    {
                        "role": "user",
                        "content": [
                            {
                                "type": "document",
                                "source": {
                                    "type": "base64",
                                    "media_type": "application/pdf",
                                    "data": $PDF_BASE64
                                }
                            },
                            {
                                "type": "text",
                                "text": "Which model has the highest human preference win rates across each use-case?"
                            }
                        ]
                    }
                  ]
              }
          },
          {
              "custom_id": "my-second-request",
              "params": {
                  "model": "claude-opus-4-6",
                  "max_tokens": 1024,
                  "messages": [
                    {
                        "role": "user",
                        "content": [
                            {
                                "type": "document",
                                "source": {
                                    "type": "base64",
                                    "media_type": "application/pdf",
                                    "data": $PDF_BASE64
                                }
                            },
                            {
                                "type": "text",
                                "text": "Extract 5 key insights from this document."
                            }
                        ]
                    }
                  ]
              }
          }
      ]
    }
    ' > request.json
    
    # 然后使用 JSON 文件进行 API 调用
    curl https://api.anthropic.com/v1/messages/batches \
      -H "content-type: application/json" \
      -H "x-api-key: $ANTHROPIC_API_KEY" \
      -H "anthropic-version: 2023-06-01" \
      -d @request.json

    在我们的 cookbook 教程中探索 PDF 处理的实际示例。

    查看 API 参考

    查看 PDF 支持的完整 API 文档。