Теперь вы можете спросить Claude о любом тексте, изображениях, диаграммах и таблицах в предоставляемых вами PDF. Некоторые примеры использования:
Claude работает с любым стандартным PDF. Однако вы должны убедиться, что размер вашего запроса соответствует этим требованиям при использовании поддержки PDF:
| Требование | Ограничение |
|---|---|
| Максимальный размер запроса | 32МБ |
| Максимальное количество страниц на запрос | 100 |
| Формат | Стандартный PDF (без паролей/шифрования) |
Обратите внимание, что оба ограничения относятся ко всей полезной нагрузке запроса, включая любое другое содержимое, отправляемое вместе с PDF.
Поскольку поддержка PDF основана на возможностях зрения Claude, она подвержена тем же ограничениям и соображениям, что и другие задачи зрения.
Поддержка PDF в настоящее время поддерживается через прямой доступ к API и Google Vertex AI. Все активные модели поддерживают обработку PDF.
Поддержка PDF теперь доступна на Amazon Bedrock со следующими соображениями:
При использовании поддержки PDF через Converse API Amazon Bedrock существует два различных режима обработки документов:
Важно: Для доступа к полным возможностям визуального понимания PDF Claude в Converse API вы должны включить цитирование. Без включенного цитирования API возвращается только к базовому извлечению текста. Узнайте больше о работе с цитированием.
Converse Document Chat (Исходный режим - только извлечение текста)
Claude PDF Chat (Новый режим - полное визуальное понимание)
Если клиенты сообщают, что Claude не видит изображения или диаграммы в их PDF при использовании Converse API, им, вероятно, нужно включить флаг цитирования. Без него Converse возвращается только к базовому извлечению текста.
Это известное ограничение Converse API, над устранением которого мы работаем. Для приложений, требующих визуального анализа PDF без цитирования, рассмотрите возможность использования InvokeModel API вместо этого.
Для файлов, не являющихся PDF, таких как .csv, .xlsx, .docx, .md или .txt файлы, см. Работа с другими форматами файлов.
Давайте начнем с простого примера, используя Messages API. Вы можете предоставить PDF Claude тремя способами:
documentfile_id из Files APIСамый простой подход - ссылаться на PDF напрямую из URL:
Если вам нужно отправить PDF из вашей локальной системы или когда URL недоступен:
Для PDF, которые вы будете использовать повторно, или когда хотите избежать накладных расходов на кодирование, используйте Files API:
Когда вы отправляете PDF Claude, происходят следующие шаги:
Система извлекает содержимое документа.
Claude анализирует как текст, так и изображения для лучшего понимания документа.
Claude отвечает, ссылаясь на содержимое PDF, если это уместно.
Claude может ссылаться как на текстовое, так и на визуальное содержимое при ответе. Вы можете дополнительно улучшить производительность, интегрируя поддержку PDF с:
Количество токенов PDF-файла зависит от общего текста, извлеченного из документа, а также от количества страниц:
Вы можете использовать подсчет токенов для оценки расходов на ваши конкретные PDF.
Следуйте этим лучшим практикам для оптимальных результатов:
Для высокообъемной обработки рассмотрите эти подходы:
Кэшируйте PDF для улучшения производительности при повторных запросах:
Используйте Message Batches 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-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": "Каковы ключевые выводы в этом документе?"
}]
}]
}'# Метод 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-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": "Каковы ключевые выводы в этом документе?"
}]
}]
}' > 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# Сначала загрузите ваш 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": "Каковы ключевые выводы в этом документе?"
}]
}]
}'# Создать файл JSON-запроса, используя содержимое pdf_base64.txt
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": "Какая модель имеет самые высокие показатели предпочтений человека в каждом случае использования?"
}]
}]
}' > 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# Создать файл JSON-запроса, используя содержимое pdf_base64.txt
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": "Какая модель имеет самые высокие показатели предпочтений человека в каждом случае использования?"
}
]
}
]
}
},
{
"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": "Извлеките 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Изучите практические примеры обработки PDF в нашем рецепте поваренной книги.