Loading...
    • 开发者指南
    • API 参考
    • MCP
    • 资源
    • 发布说明
    Search...
    ⌘K

    第一步

    Claude 简介快速开始

    模型与定价

    模型概览选择模型Claude 4.5 的新功能迁移到 Claude 4.5模型弃用定价

    使用 Claude 构建

    功能概览使用 Messages API上下文窗口提示词最佳实践

    功能

    提示词缓存上下文编辑扩展思考流式消息批处理引用多语言支持Token 计数嵌入向量视觉PDF 支持Files API搜索结果Google Sheets 插件

    工具

    概述如何实现工具使用令牌高效的工具使用细粒度工具流式传输Bash 工具代码执行工具计算机使用工具文本编辑器工具Web fetch 工具网络搜索工具记忆工具

    代理技能

    概述在 API 中开始使用 Agent Skills技能创作最佳实践通过 API 使用 Agent Skills

    Agent SDK

    概览TypeScript SDKPython SDK

    指南

    流式输入处理权限会话管理托管 Agent SDK修改系统提示词SDK 中的 MCP自定义工具SDK 中的子代理SDK 中的斜杠命令SDK 中的代理技能跟踪成本和使用情况待办事项列表SDK 中的插件

    API 中的 MCP

    MCP 连接器远程 MCP 服务器

    Claude 在第三方平台上

    Amazon BedrockVertex AI

    提示词工程

    概述提示词生成器使用提示模板提示词改进器保持清晰和直接使用示例(多示例提示)让 Claude 思考(思维链)使用XML标签给Claude分配角色(系统提示)预填充 Claude 的响应链式复杂提示长文本技巧扩展思考技巧

    测试与评估

    定义成功标准开发测试用例使用评估工具减少延迟

    加强防护措施

    减少幻觉提高输出一致性缓解越狱handle-streaming-refusals减少提示词泄露保持Claude的角色特征

    管理和监控

    Admin API 概述使用量和成本 APIClaude Code 分析 API
    Console
    功能

    PDF 支持

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

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

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

    开始之前

    检查 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 文档聊天(原始模式 - 仅文本提取)

      • 提供 PDF 的基本文本提取
      • 无法分析 PDF 中的图像、图表或视觉布局
      • 3 页 PDF 大约使用 1,000 个令牌
      • 当未启用引用时自动使用
    2. Claude PDF 聊天(新模式 - 完整视觉理解)

      • 提供 PDF 的完整视觉分析
      • 可以理解和分析图表、图形、图像和视觉布局
      • 将每页作为文本和图像处理以进行全面理解
      • 3 页 PDF 大约使用 7,000 个令牌
      • 需要在 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

    选项 1:基于 URL 的 PDF 文档

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

    Shell
     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-sonnet-4-5",
         "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?"
             }]
         }]
     }'
    Python
    import anthropic
    
    client = anthropic.Anthropic()
    message = client.messages.create(
        model="claude-sonnet-4-5",
        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)
    TypeScript
    import Anthropic from '@anthropic-ai/sdk';
    
    const anthropic = new Anthropic();
    
    async function main() {
      const response = await anthropic.messages.create({
        model: 'claude-sonnet-4-5',
        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?',
              },
            ],
          },
        ],
      });
      
      console.log(response);
    }
    
    main();
    Java
    import java.util.List;
    
    import com.anthropic.client.AnthropicClient;
    import com.anthropic.client.okhttp.AnthropicOkHttpClient;
    import com.anthropic.models.messages.MessageCreateParams;
    import com.anthropic.models.messages.*;
    
    public class PdfExample {
        public static void main(String[] args) {
            AnthropicClient client = AnthropicOkHttpClient.fromEnv();
    
            // Create document block with URL
            DocumentBlockParam documentParam = DocumentBlockParam.builder()
                    .urlPdfSource("https://assets.anthropic.com/m/1cd9d098ac3e6467/original/Claude-3-Model-Card-October-Addendum.pdf")
                    .build();
    
            // Create a message with document and text content blocks
            MessageCreateParams params = MessageCreateParams.builder()
                    .model(Model.CLAUDE_OPUS_4_20250514)
                    .maxTokens(1024)
                    .addUserMessageOfBlockParams(
                            List.of(
    ContentBlockParam.ofDocument(documentParam),
    ContentBlockParam.ofText(
    TextBlockParam.builder()
    .text("What are the key findings in this document?")
    .build()
    )
                            )
                    )
                    .build();
    
            Message message = client.messages().create(params);
            System.out.println(message.content());
        }
    }

    选项 2:Base64 编码的 PDF 文档

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

    # 方法 1:获取并编码远程 PDF
    curl -s "https://assets.anthropic.com/m/1cd9d098ac3e6467/original/Claude-3-Model-Card-October-Addendum.pdf" | base64 | tr -d '\n' > pdf_base64.txt
    
    # 方法 2:编码本地 PDF 文件
    # base64 document.pdf | tr -d '\n' > pdf_base64.txt
    
    # 使用 pdf_base64.txt 内容创建 JSON 请求文件
    jq -n --rawfile PDF_BASE64 pdf_base64.txt '{
        "model": "claude-sonnet-4-5",
        "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
    
    # 使用 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

    选项 3:Files API

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

    # 首先,将您的 PDF 上传到 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]"
    
    # 然后在您的消息中使用返回的 file_id
    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-sonnet-4-5", 
        "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 支持的工作原理

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

    1. 1

      系统提取文档的内容。

      • 系统将文档的每一页转换为图像。
      • 从每一页提取文本,并与每页的图像一起提供。
    2. 2

      Claude 分析文本和图像以更好地理解文档。

      • 文档作为文本和图像的组合提供以进行分析。
      • 这允许用户询问 PDF 视觉元素的见解,如图表、图形和其他非文本内容。
    3. 3

      Claude 响应,如果相关则引用 PDF 的内容。

      Claude 在响应时可以引用文本和视觉内容。您可以通过将 PDF 支持与以下功能集成来进一步提高性能:

      • 提示缓存:提高重复分析的性能。
      • 批处理:用于大量文档处理。
      • 工具使用:从文档中提取特定信息以用作工具输入。

    估算您的成本

    PDF 文件的令牌计数取决于从文档中提取的总文本以及页数:

    • 文本令牌成本:每页通常使用 1,500-3,000 个令牌,具体取决于内容密度。适用标准 API 定价,无额外 PDF 费用。
    • 图像令牌成本:由于每页都转换为图像,因此适用相同的基于图像的成本计算。

    您可以使用令牌计数来估算特定 PDF 的成本。


    优化 PDF 处理

    提高性能

    遵循这些最佳实践以获得最佳结果:

    • 在请求中将 PDF 放在文本之前
    • 使用标准字体
    • 确保文本清晰易读
    • 将页面旋转到正确的直立方向
    • 在提示中使用逻辑页码(来自 PDF 查看器)
    • 需要时将大型 PDF 分割成块
    • 为重复分析启用提示缓存

    扩展您的实现

    对于大量处理,请考虑以下方法:

    使用提示缓存

    缓存 PDF 以提高重复查询的性能:

    # 使用 pdf_base64.txt 内容创建 JSON 请求文件
    jq -n --rawfile PDF_BASE64 pdf_base64.txt '{
        "model": "claude-sonnet-4-5",
        "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

    处理文档批次

    使用 Message Batches API 进行大量工作流程:

    # 使用 pdf_base64.txt 内容创建 JSON 请求文件
    jq -n --rawfile PDF_BASE64 pdf_base64.txt '
    {
      "requests": [
          {
              "custom_id": "my-first-request",
              "params": {
                  "model": "claude-sonnet-4-5",
                  "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-sonnet-4-5",
                  "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

    下一步

    尝试 PDF 示例

    在我们的食谱中探索 PDF 处理的实际示例。

    查看 API 参考

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

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

    Products

    • Claude
    • Claude Code
    • Max plan
    • Team plan
    • Enterprise plan
    • Download app
    • Pricing
    • Log in

    Features

    • Claude and Slack
    • Claude in Excel

    Models

    • Opus
    • Sonnet
    • Haiku

    Solutions

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

    Claude Developer Platform

    • Overview
    • Developer docs
    • Pricing
    • Amazon Bedrock
    • Google Cloud’s Vertex AI
    • Console login

    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

    Help and security

    • Availability
    • Status
    • Support center

    Terms and policies

    • Privacy policy
    • Responsible disclosure policy
    • Terms of service: Commercial
    • Terms of service: Consumer
    • Usage policy

    Products

    • Claude
    • Claude Code
    • Max plan
    • Team plan
    • Enterprise plan
    • Download app
    • Pricing
    • Log in

    Features

    • Claude and Slack
    • Claude in Excel

    Models

    • Opus
    • Sonnet
    • Haiku

    Solutions

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

    Claude Developer Platform

    • Overview
    • Developer docs
    • Pricing
    • Amazon Bedrock
    • Google Cloud’s Vertex AI
    • Console login

    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

    Help and security

    • Availability
    • Status
    • Support center

    Terms and policies

    • Privacy policy
    • Responsible disclosure policy
    • Terms of service: Commercial
    • Terms of service: Consumer
    • Usage policy
    © 2025 ANTHROPIC PBC