Ahora puedes preguntarle a Claude sobre cualquier texto, imágenes, gráficos y tablas en los PDFs que proporciones. Algunos casos de uso de ejemplo:
Claude funciona con cualquier PDF estándar. Sin embargo, debes asegurarte de que el tamaño de tu solicitud cumpla con estos requisitos al usar el soporte para PDF:
| Requisito | Límite |
|---|---|
| Tamaño máximo de solicitud | 32MB |
| Páginas máximas por solicitud | 100 |
| Formato | PDF estándar (sin contraseñas/encriptación) |
Ten en cuenta que ambos límites se aplican a toda la carga útil de la solicitud, incluyendo cualquier otro contenido enviado junto con los PDFs.
Dado que el soporte para PDF depende de las capacidades de visión de Claude, está sujeto a las mismas limitaciones y consideraciones que otras tareas de visión.
El soporte para PDF está actualmente disponible a través del acceso directo a la API y Google Vertex AI. Todos los modelos activos admiten el procesamiento de PDF.
El soporte para PDF ahora está disponible en Amazon Bedrock con las siguientes consideraciones:
Al usar el soporte para PDF a través de la API Converse de Amazon Bedrock, hay dos modos distintos de procesamiento de documentos:
Importante: Para acceder a las capacidades completas de comprensión visual de PDF de Claude en la API Converse, debes habilitar las citas. Sin las citas habilitadas, la API recurre únicamente a la extracción básica de texto. Aprende más sobre trabajar con citas.
Chat de Documentos Converse (Modo original - Solo extracción de texto)
Chat de PDF Claude (Modo nuevo - Comprensión visual completa)
Si los clientes reportan que Claude no está viendo imágenes o gráficos en sus PDFs al usar la API Converse, probablemente necesiten habilitar la bandera de citas. Sin ella, Converse recurre únicamente a la extracción básica de texto.
Esta es una restricción conocida con la API Converse que estamos trabajando para abordar. Para aplicaciones que requieren análisis visual de PDF sin citas, considera usar la API InvokeModel en su lugar.
Para archivos que no son PDF como .csv, .xlsx, .docx, .md, o .txt, consulta Trabajar con otros formatos de archivo.
Comencemos con un ejemplo simple usando la API Messages. Puedes proporcionar PDFs a Claude de tres maneras:
documentfile_id de la API FilesEl enfoque más simple es referenciar un PDF directamente desde una URL:
Si necesitas enviar PDFs desde tu sistema local o cuando una URL no está disponible:
Para PDFs que usarás repetidamente, o cuando quieras evitar la sobrecarga de codificación, usa la API Files:
Cuando envías un PDF a Claude, ocurren los siguientes pasos:
El sistema extrae el contenido del documento.
Claude analiza tanto el texto como las imágenes para comprender mejor el documento.
Claude responde, haciendo referencia al contenido del PDF si es relevante.
Claude puede referenciar tanto contenido textual como visual cuando responde. Puedes mejorar aún más el rendimiento integrando el soporte para PDF con:
El recuento de tokens de un archivo PDF depende del texto total extraído del documento así como del número de páginas:
Puedes usar conteo de tokens para estimar costos para tus PDFs específicos.
Sigue estas mejores prácticas para obtener resultados óptimos:
Para procesamiento de alto volumen, considera estos enfoques:
Almacena en caché los PDFs para mejorar el rendimiento en consultas repetidas:
Usa la API Message Batches para flujos de trabajo de alto volumen:
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": "¿Cuáles son los hallazgos clave en este documento?"
}]
}]
}'# Método 1: Obtener y codificar un PDF remoto
curl -s "https://assets.anthropic.com/m/1cd9d098ac3e6467/original/Claude-3-Model-Card-October-Addendum.pdf" | base64 | tr -d '\n' > pdf_base64.txt
# Método 2: Codificar un archivo PDF local
# base64 document.pdf | tr -d '\n' > pdf_base64.txt
# Crear un archivo de solicitud JSON usando el contenido de 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": "¿Cuáles son los hallazgos clave en este documento?"
}]
}]
}' > request.json
# Enviar la solicitud de API usando el archivo 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# Primero, sube tu PDF a la API Files
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]"
# Luego usa el file_id devuelto en tu mensaje
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": "¿Cuáles son los hallazgos clave en este documento?"
}]
}]
}'# Crear un archivo de solicitud JSON usando el contenido de 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": "¿Qué modelo tiene las tasas de preferencia humana más altas en cada caso de uso?"
}]
}]
}' > request.json
# Luego hacer la llamada a la API usando el archivo 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# Crear un archivo de solicitud JSON usando el contenido de 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": "¿Qué modelo tiene las tasas de preferencia humana más altas en cada caso de uso?"
}
]
}
]
}
},
{
"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": "Extrae 5 ideas clave de este documento."
}
]
}
]
}
}
]
}
' > request.json
# Luego hacer la llamada a la API usando el archivo 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.jsonExplora ejemplos prácticos de procesamiento de PDF en nuestra receta de cookbook.