Поддержка PDF
Обрабатывайте PDF с помощью Claude: извлекайте текст, анализируйте диаграммы и понимайте визуальное содержимое ваших документов.
Вы можете спрашивать Claude о любом тексте, изображениях, диаграммах и таблицах в предоставленных вами PDF. Некоторые примеры использования:
- Анализ финансовых отчётов и понимание диаграмм/таблиц
- Извлечение ключевой информации из юридических документов
- Помощь в переводе документов
- Преобразование информации из документов в структурированные форматы
Прежде чем начать
Проверьте требования к PDF
Claude работает с любым стандартным PDF. Убедитесь, что размер вашего запроса соответствует следующим требованиям:
| Требование | Ограничение |
|---|---|
| Максимальный размер запроса | 32 МБ (зависит от платформы) |
| Максимальное количество страниц в запросе | 600 (100, если контекстное окно запроса меньше 1 млн токенов) |
| Формат | Стандартный PDF (без паролей/шифрования) |
Оба ограничения относятся ко всей полезной нагрузке запроса, включая любое другое содержимое, отправляемое вместе с PDF. Для больших PDF рассмотрите возможность загрузки через Files API и ссылки по file_id, чтобы полезная нагрузка запросов оставалась небольшой.
Поскольку поддержка PDF опирается на возможности зрения Claude, на неё распространяются те же ограничения и соображения, что и на другие задачи, связанные со зрением.
Поддерживаемые платформы и модели
Все активные модели поддерживают обработку PDF. О поддержке PDF через Converse API в Amazon Bedrock см. раздел Поддержка PDF в Amazon Bedrock.
Поддержка PDF в Amazon Bedrock
При использовании поддержки PDF через Converse API, являющийся частью Claude на Amazon Bedrock (Opus 4.6 и более ранние), существуют два различных режима обработки документов:
Режимы обработки документов
-
Converse Document Chat (исходный режим — только извлечение текста)
- Обеспечивает базовое извлечение текста из PDF
- Не может анализировать изображения, диаграммы или визуальную компоновку внутри PDF
- Использует приблизительно 1 000 токенов для 3-страничного PDF
- Используется автоматически, когда цитирование не включено
-
Claude PDF Chat (новый режим — полное визуальное понимание)
- Обеспечивает полный визуальный анализ PDF
- Может понимать и анализировать диаграммы, графики, изображения и визуальную компоновку
- Обрабатывает каждую страницу и как текст, и как изображение для всестороннего понимания
- Использует приблизительно 7 000 токенов для 3-страничного PDF
- Требует включения цитирования в Converse API
Ключевые ограничения
- Converse API: Визуальный анализ PDF требует включения цитирования. В настоящее время нет возможности использовать визуальный анализ без цитирования (в отличие от InvokeModel API).
- InvokeModel API: Предоставляет полный контроль над обработкой PDF без принудительного цитирования.
Распространённые проблемы
Если Claude не видит изображения или диаграммы в ваших PDF при использовании Converse API, вероятно, вам нужно включить флаг цитирования. Без него Converse переключается только на базовое извлечение текста.
Обработка PDF с помощью Claude
Отправьте свой первый запрос с PDF
Начните с простого примера, использующего Messages API. Вы можете предоставить PDF Claude тремя способами:
- В виде URL-ссылки на PDF, размещённый в интернете
- В виде PDF в кодировке base64 в блоках содержимого
document - По
file_idиз Files API
Вариант 1: PDF-документ по URL
Самый простой подход — сослаться на PDF напрямую по URL:
client = anthropic.Anthropic()
message = client.messages.create(
model="claude-opus-5-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)Ответ возвращает анализ Claude в виде текстовых блоков в content, а потребление токенов — в usage:
{
"id": "msg_01Hfp8YuFjQ55VgWbpdHDehB",
"type": "message",
"role": "assistant",
"model": "claude-opus-5-5",
"content": [
{
"type": "text",
"text": "This document is an addendum to the Claude 3 model card, reporting updated evaluation results. The key findings include..."
}
],
"stop_reason": "end_turn",
"usage": {
"input_tokens": 45000,
"output_tokens": 300
}
}Вариант 2: PDF-документ в кодировке base64
Если вам нужно отправить PDF из локальной системы или когда URL недоступен:
import base64
import httpx2
# Сначала загрузите и закодируйте PDF
pdf_url = "https://assets.anthropic.com/m/1cd9d098ac3e6467/original/Claude-3-Model-Card-October-Addendum.pdf"
pdf_data = base64.standard_b64encode(
httpx2.get(pdf_url, follow_redirects=True).content
).decode("utf-8")
# Альтернатива: загрузка из локального файла
# with open("document.pdf", "rb") as f:
# pdf_data = base64.standard_b64encode(f.read()).decode("utf-8")
# Отправка в Claude с использованием кодировки base64
client = anthropic.Anthropic()
message = client.messages.create(
model="claude-opus-5-5",
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("/path/to/document.pdf", "rb") as f:
file_upload = client.files.upload(file=("document.pdf", f, "application/pdf"))
# Используйте загруженный файл в сообщении
message = client.messages.create(
model="claude-opus-5-5",
max_tokens=1024,
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, происходят следующие шаги:
Система извлекает содержимое документа.
- Система преобразует каждую страницу документа в изображение.
- Текст с каждой страницы извлекается и предоставляется вместе с изображением каждой страницы.
Claude анализирует и текст, и изображения, чтобы лучше понять документ.
- Документы предоставляются для анализа в виде комбинации текста и изображений.
- Это позволяет пользователям запрашивать сведения о визуальных элементах PDF, таких как диаграммы, схемы и другое нетекстовое содержимое.
Claude отвечает, при необходимости ссылаясь на содержимое PDF.
При ответе Claude может ссылаться как на текстовое, так и на визуальное содержимое. Вы можете дополнительно повысить производительность, интегрировав поддержку PDF с:
- Использованием кэширования подсказок: для повышения производительности при повторном анализе.
- Обработкой пакетов документов: для обработки больших объёмов документов.
- Использованием инструментов: для извлечения конкретной информации из документов для использования в качестве входных данных инструментов.
Оцените свои затраты
Количество токенов PDF-файла зависит от общего объёма текста, извлечённого из документа, и количества страниц:
- Стоимость текстовых токенов: каждая страница обычно использует 1 500–3 000 токенов в зависимости от плотности содержимого. Применяются стандартные цены API без дополнительной платы за PDF.
- Стоимость токенов изображений: поскольку каждая страница преобразуется в изображение, применяются те же расчёты стоимости на основе изображений.
Вы можете использовать подсчёт токенов для оценки затрат на ваши конкретные PDF.
Оптимизация обработки PDF
Повышение производительности
Следуйте этим рекомендациям для достижения оптимальных результатов:
- Размещайте PDF перед текстом в ваших запросах
- Используйте стандартные шрифты
- Убедитесь, что текст чёткий и разборчивый
- Поворачивайте страницы в правильную вертикальную ориентацию
- Используйте в подсказках логические номера страниц (из программы просмотра PDF)
- При необходимости разделяйте большие PDF на части
- Включайте кэширование подсказок для повторного анализа
Масштабирование вашей реализации
Для обработки больших объёмов рассмотрите следующие подходы:
Использование кэширования подсказок
Кэшируйте PDF с помощью «prompt caching» (кэширование подсказок), чтобы повысить производительность при повторных запросах:
import base64
import httpx2
# Сначала загрузите и закодируйте PDF
pdf_url = "https://assets.anthropic.com/m/1cd9d098ac3e6467/original/Claude-3-Model-Card-October-Addendum.pdf"
pdf_data = base64.standard_b64encode(
httpx2.get(pdf_url, follow_redirects=True).content
).decode("utf-8")
# Создайте сообщение с кэшированным документом
client = anthropic.Anthropic()
message = client.messages.create(
model="claude-opus-5-5",
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": "Which model has the highest human preference win rates across each use-case?",
},
],
}
],
)
print(message.content)Обработка пакетов документов
Используйте Message Batches API для обработки множества PDF в одном запросе:
import base64
import httpx2
# Сначала загрузите и закодируйте PDF
pdf_url = "https://assets.anthropic.com/m/1cd9d098ac3e6467/original/Claude-3-Model-Card-October-Addendum.pdf"
pdf_data = base64.standard_b64encode(
httpx2.get(pdf_url, follow_redirects=True).content
).decode("utf-8")
# Создайте пакет запросов, использующих этот документ
client = anthropic.Anthropic()
message_batch = client.messages.batches.create(
requests=[
{
"custom_id": "my-first-request",
"params": {
"model": "claude-opus-5-5",
"max_tokens": 1024,
"messages": [
{
"role": "user",
"content": [
{
"type": "document",
"source": {
"type": "base64",
"media_type": "application/pdf",
"data": pdf_data,
},
},
{
"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-5-5",
"max_tokens": 1024,
"messages": [
{
"role": "user",
"content": [
{
"type": "document",
"source": {
"type": "base64",
"media_type": "application/pdf",
"data": pdf_data,
},
},
{
"type": "text",
"text": "Extract 5 key insights from this document.",
},
],
}
],
},
},
]
)
print(message_batch)Пакеты обрабатываются асинхронно. Чтобы проверить ход выполнения и получить результаты после завершения обработки, см. Пакетная обработка.
Следующие шаги
Возможности зрения Claude позволяют ему понимать и анализировать изображения, открывая захватывающие возможности для мультимодального взаимодействия.
Изучите практические примеры обработки PDF в рецепте Claude Cookbook.
См. полную документацию API по поддержке PDF.
Compatibility
- Supported platforms
- Claude API
- Claude Platform on AWS
- Amazon Bedrock
- Google Cloud
- Microsoft Foundry
Was this page helpful?