Теперь вы можете спросить Claude о любом тексте, изображениях, диаграммах и таблицах в PDF-файлах, которые вы предоставляете. Некоторые примеры использования:

  • Анализ финансовых отчетов и понимание диаграмм/таблиц
  • Извлечение ключевой информации из юридических документов
  • Помощь в переводе документов
  • Преобразование информации документов в структурированные форматы

Перед началом работы

Проверьте требования к PDF

Claude работает с любым стандартным PDF. Однако вы должны убедиться, что размер вашего запроса соответствует этим требованиям при использовании поддержки PDF:

ТребованиеОграничение
Максимальный размер запроса32МБ
Максимальное количество страниц на запрос100
ФорматСтандартный PDF (без паролей/шифрования)

Обратите внимание, что оба ограничения применяются ко всей полезной нагрузке запроса, включая любое другое содержимое, отправляемое вместе с PDF.

Поскольку поддержка PDF основана на возможностях зрения Claude, она подвержена тем же ограничениям и соображениям, что и другие задачи зрения.

Поддерживаемые платформы и модели

Поддержка PDF в настоящее время поддерживается через прямой доступ к API и Google Vertex AI на:

  • Claude Opus 4 (claude-opus-4-20250514)
  • Claude Sonnet 4 (claude-sonnet-4-20250514)
  • Claude Sonnet 3.7 (claude-3-7-sonnet-20250219)
  • Модели Claude Sonnet 3.5 (claude-3-5-sonnet-20241022, claude-3-5-sonnet-20240620)
  • Claude Haiku 3.5 (claude-3-5-haiku-20241022)

Поддержка PDF теперь доступна на Amazon Bedrock со следующими соображениями:

Поддержка PDF в Amazon Bedrock

При использовании поддержки PDF через Converse API Amazon Bedrock существует два различных режима обработки документов:

Важно: Чтобы получить доступ к полным возможностям визуального понимания PDF Claude в Converse API, вы должны включить цитирование. Без включенного цитирования API возвращается только к базовому извлечению текста. Узнайте больше о работе с цитированием.

Режимы обработки документов

  1. Converse Document Chat (Исходный режим - только извлечение текста)

    • Обеспечивает базовое извлечение текста из PDF
    • Не может анализировать изображения, диаграммы или визуальные макеты в PDF
    • Использует примерно 1,000 токенов для 3-страничного PDF
    • Автоматически используется, когда цитирование не включено
  2. Claude PDF Chat (Новый режим - полное визуальное понимание)

    • Обеспечивает полный визуальный анализ PDF
    • Может понимать и анализировать диаграммы, графики, изображения и визуальные макеты
    • Обрабатывает каждую страницу как текст и изображение для всестороннего понимания
    • Использует примерно 7,000 токенов для 3-страничного PDF
    • Требует включения цитирования в Converse API

Ключевые ограничения

  • Converse API: Визуальный анализ PDF требует включения цитирования. В настоящее время нет возможности использовать визуальный анализ без цитирования (в отличие от InvokeModel API).
  • InvokeModel API: Обеспечивает полный контроль над обработкой PDF без принудительного цитирования.

Распространенные проблемы

Если клиенты сообщают, что Claude не видит изображения или диаграммы в их PDF при использовании Converse API, им, вероятно, нужно включить флаг цитирования. Без него Converse возвращается только к базовому извлечению текста.

Это известное ограничение Converse API, над устранением которого мы работаем. Для приложений, которые требуют визуального анализа PDF без цитирования, рассмотрите возможность использования InvokeModel API вместо этого.

Для файлов, не являющихся PDF, таких как .csv, .xlsx, .docx, .md или .txt файлы, см. Работа с другими форматами файлов.


Обработка PDF с помощью Claude

Отправьте свой первый PDF-запрос

Давайте начнем с простого примера, используя Messages API. Вы можете предоставить PDF Claude тремя способами:

  1. Как ссылку URL на PDF, размещенный онлайн
  2. Как PDF, закодированный в base64, в блоках содержимого document
  3. По file_id из Files API

Вариант 1: PDF-документ на основе URL

Самый простой подход - ссылаться на PDF напрямую из URL:

 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-20250514",
     "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": "Каковы ключевые выводы в этом документе?"
         }]
     }]
 }'

Вариант 2: PDF-документ, закодированный в Base64

Если вам нужно отправить 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

# Создать файл JSON запроса, используя содержимое pdf_base64.txt
jq -n --rawfile PDF_BASE64 pdf_base64.txt '{
    "model": "claude-opus-4-20250514",
    "max_tokens": 1024,
    "messages": [{
        "role": "user",
        "content": [{
            "type": "document",
            "source": {
                "type": "base64",
                "media_type": "application/pdf",
                "data": $PDF_BASE64
            }
        },
        {
            "type": "text",
            "text": "Каковы ключевые выводы в этом документе?"
        }]
    }]
}' > request.json

# Отправить API запрос, используя JSON файл
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 "file=@document.pdf"

# Затем используйте возвращенный 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-opus-4-20250514", 
    "max_tokens": 1024,
    "messages": [{
      "role": "user",
      "content": [{
        "type": "document",
        "source": {
          "type": "file",
          "file_id": "file_abc123"
        }
      },
      {
        "type": "text",
        "text": "Каковы ключевые выводы в этом документе?"
      }]
    }]
  }'

Как работает поддержка PDF

Когда вы отправляете PDF Claude, происходят следующие шаги:

1

Система извлекает содержимое документа.

  • Система преобразует каждую страницу документа в изображение.
  • Текст с каждой страницы извлекается и предоставляется вместе с изображением каждой страницы.
2

Claude анализирует как текст, так и изображения для лучшего понимания документа.

  • Документы предоставляются как комбинация текста и изображений для анализа.
  • Это позволяет пользователям запрашивать информацию о визуальных элементах PDF, таких как диаграммы, схемы и другое нетекстовое содержимое.
3

Claude отвечает, ссылаясь на содержимое PDF, если это уместно.

Claude может ссылаться как на текстовое, так и на визуальное содержимое при ответе. Вы можете дополнительно улучшить производительность, интегрировав поддержку PDF с:

  • Кэширование промптов: Для улучшения производительности при повторном анализе.
  • Пакетная обработка: Для высокообъемной обработки документов.
  • Использование инструментов: Для извлечения конкретной информации из документов для использования в качестве входных данных инструментов.

Оцените ваши расходы

Количество токенов PDF-файла зависит от общего текста, извлеченного из документа, а также от количества страниц:

  • Стоимость текстовых токенов: Каждая страница обычно использует 1,500-3,000 токенов на страницу в зависимости от плотности содержимого. Применяется стандартное ценообразование API без дополнительных сборов за PDF.
  • Стоимость токенов изображений: Поскольку каждая страница преобразуется в изображение, применяются те же расчеты стоимости на основе изображений.

Вы можете использовать подсчет токенов для оценки расходов на ваши конкретные PDF.


Оптимизация обработки PDF

Улучшение производительности

Следуйте этим лучшим практикам для оптимальных результатов:

  • Размещайте PDF перед текстом в ваших запросах
  • Используйте стандартные шрифты
  • Убедитесь, что текст четкий и разборчивый
  • Поворачивайте страницы в правильную вертикальную ориентацию
  • Используйте логические номера страниц (из PDF-просмотрщика) в промптах
  • Разделяйте большие PDF на части при необходимости
  • Включите кэширование промптов для повторного анализа

Масштабирование вашей реализации

Для высокообъемной обработки рассмотрите эти подходы:

Используйте кэширование промптов

Кэшируйте PDF для улучшения производительности при повторных запросах:

# Создать файл JSON запроса, используя содержимое pdf_base64.txt
jq -n --rawfile PDF_BASE64 pdf_base64.txt '{
    "model": "claude-opus-4-20250514",
    "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": "Какая модель имеет самые высокие показатели предпочтений людей в каждом случае использования?"
        }]
    }]
}' > request.json

# Затем сделать API вызов, используя JSON файл
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 для высокообъемных рабочих процессов:

# Создать файл JSON запроса, используя содержимое pdf_base64.txt
jq -n --rawfile PDF_BASE64 pdf_base64.txt '
{
  "requests": [
      {
          "custom_id": "my-first-request",
          "params": {
              "model": "claude-opus-4-20250514",
              "max_tokens": 1024,
              "messages": [
                {
                    "role": "user",
                    "content": [
                        {
                            "type": "document",
                            "source": {
 "type": "base64",
 "media_type": "application/pdf",
 "data": $PDF_BASE64
                            }
                        },
                        {
                            "type": "text",
                            "text": "Какая модель имеет самые высокие показатели предпочтений людей в каждом случае использования?"
                        }
                    ]
                }
              ]
          }
      },
      {
          "custom_id": "my-second-request",
          "params": {
              "model": "claude-opus-4-20250514",
              "max_tokens": 1024,
              "messages": [
                {
                    "role": "user",
                    "content": [
                        {
                            "type": "document",
                            "source": {
 "type": "base64",
 "media_type": "application/pdf",
 "data": $PDF_BASE64
                            }
                        },
                        {
                            "type": "text",
                            "text": "Извлеките 5 ключевых выводов из этого документа."
                        }
                    ]
                }
              ]
          }
      }
  ]
}
' > request.json

# Затем сделать API вызов, используя JSON файл
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

Следующие шаги