Claude Platform Docs
  • Messages
  • Agents gérés
  • Administration

Search...
⌘K
Premiers pas
Introduction à ClaudeDémarrage rapide
Développer avec Claude
Aperçu des fonctionnalitésUtilisation de l'API MessagesRaisons d'arrêt et repliRefus et repliCrédit de repli
Capacités du modèle
Réflexion étendueRéflexion adaptativeEffortBudgets de tâches (bêta)Mode rapide (aperçu de recherche)Sorties structuréesCitationsStreaming des messagesTraitement par lotsRésultats de rechercheStreaming des refusPrise en charge multilingueEmbeddings
Outils
AperçuFonctionnement de l'utilisation d'outilsTutoriel : Créer un agent utilisant des outilsDéfinir des outilsGérer les appels d'outilsUtilisation d'outils en parallèleTool Runner (SDK)Utilisation d'outils stricteUtilisation d'outils avec mise en cache des promptsOutils serveurDépannageOutil de recherche webOutil de récupération webOutil d'exécution de codeOutil conseillerOutil de mémoireOutil BashOutil d'utilisation de l'ordinateurOutil d'éditeur de texte
Infrastructure des outils
Référence des outilsGérer le contexte des outilsCombinaisons d'outilsRecherche d'outilsAppel d'outils programmatiqueStreaming d'outils granulaire
Gestion du contexte
Fenêtres de contexteCompactageÉdition du contexteMise en cache des promptsMessages système en cours de conversationCréer un mode d'orchestrationDiagnostics de cache (bêta)Comptage de tokens
Travailler avec des fichiers
API FilesPrise en charge des PDFImages et vision
Compétences
AperçuDémarrage rapideBonnes pratiquesCompétences pour l'entrepriseCompétences dans l'API
MCP
Serveurs MCP distantsConnecteur MCP
Claude sur les plateformes cloud
Amazon BedrockAmazon Bedrock (ancien)Claude Platform sur AWSMicrosoft FoundryVertex AI

Log in
Prise en charge des PDF
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Claude Platform Docs

Solutions

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

Partners

  • Claude on AWS
  • Claude on Google Cloud

Learn

  • Blog
  • 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

Learn

  • Blog
  • Courses
  • Use cases
  • Connectors
  • Customer stories
  • Engineering at Anthropic
  • Events
  • Powered by Claude
  • Service partners
  • Startups program

Help and security

  • Availability
  • Status
  • Support
  • Discord

Terms and policies

  • Privacy policy
  • Responsible disclosure policy
  • Terms of service: Commercial
  • Terms of service: Consumer
  • Usage policy
Messages/Travailler avec des fichiers

Prise en charge des PDF

Traitez des PDF avec Claude. Extrayez du texte, analysez des graphiques et comprenez le contenu visuel de vos documents.


Cette fonctionnalité est éligible à la Zero Data Retention (ZDR). Lorsque votre organisation dispose d'un accord ZDR, les données envoyées via cette fonctionnalité ne sont pas stockées après le retour de la réponse de l'API.

Vous pouvez interroger Claude sur n'importe quel texte, image, graphique ou tableau contenu dans les PDF que vous fournissez. Voici quelques exemples de cas d'utilisation :

  • Analyser des rapports financiers et comprendre des graphiques/tableaux
  • Extraire des informations clés de documents juridiques
  • Aide à la traduction de documents
  • Convertir les informations d'un document en formats structurés

Avant de commencer

Vérifier les exigences relatives aux PDF

Claude fonctionne avec n'importe quel PDF standard. Assurez-vous que la taille de votre requête respecte ces exigences :

ExigenceLimite
Taille maximale de la requête32 Mo (varie selon la plateforme)
Nombre maximal de pages par requête600 (100 pour les modèles avec une fenêtre de contexte de 200k tokens)
FormatPDF standard (sans mot de passe/chiffrement)

Ces deux limites s'appliquent à l'ensemble de la charge utile de la requête, y compris tout autre contenu envoyé avec les PDF. Pour les PDF volumineux, envisagez de les téléverser avec la Files API et de les référencer par file_id afin de réduire la taille des charges utiles de requête.



Les PDF denses (nombreuses pages en petite police, tableaux complexes ou graphiques lourds) peuvent remplir la fenêtre de contexte avant d'atteindre la limite de pages. Les requêtes contenant des PDF volumineux peuvent également échouer avant d'atteindre la limite de pages, même en utilisant la Files API. Essayez de diviser le document en sections ; pour les fichiers volumineux, puisque chaque page est traitée comme une image, le sous-échantillonnage des images intégrées peut également aider.

Étant donné que la prise en charge des PDF repose sur les capacités de vision de Claude, elle est soumise aux mêmes limitations et considérations que les autres tâches de vision.

Plateformes et modèles pris en charge

La prise en charge des PDF est disponible sur l'API Claude, Claude Platform sur AWS, Amazon Bedrock (voir Prise en charge des PDF sur Amazon Bedrock), Vertex AI et Microsoft Foundry. Tous les modèles actifs prennent en charge le traitement des PDF.

Prise en charge des PDF sur Amazon Bedrock

Lorsque vous utilisez la prise en charge des PDF via l'API Converse de Bedrock, il existe deux modes distincts de traitement des documents :



Important : Pour accéder aux capacités complètes de compréhension visuelle des PDF de Claude dans l'API Converse, vous devez activer les citations. Sans citations activées, l'API se rabat sur l'extraction de texte basique uniquement. En savoir plus sur l'utilisation des citations.

Modes de traitement des documents

  1. Converse Document Chat (Mode original - Extraction de texte uniquement)

    • Fournit une extraction de texte basique à partir des PDF
    • Ne peut pas analyser les images, graphiques ou mises en page visuelles dans les PDF
    • Utilise environ 1 000 tokens pour un PDF de 3 pages
    • Utilisé automatiquement lorsque les citations ne sont pas activées
  2. Claude PDF Chat (Nouveau mode - Compréhension visuelle complète)

    • Fournit une analyse visuelle complète des PDF
    • Peut comprendre et analyser les graphiques, diagrammes, images et mises en page visuelles
    • Traite chaque page à la fois comme texte et comme image pour une compréhension exhaustive
    • Utilise environ 7 000 tokens pour un PDF de 3 pages
    • Nécessite l'activation des citations dans l'API Converse

Limitations principales

  • API Converse : L'analyse visuelle des PDF nécessite l'activation des citations. Il n'existe actuellement aucune option pour utiliser l'analyse visuelle sans citations (contrairement à l'API InvokeModel).
  • API InvokeModel : Offre un contrôle total sur le traitement des PDF sans citations forcées.

Problèmes courants

Si Claude ne voit pas les images ou les graphiques dans vos PDF lors de l'utilisation de l'API Converse, vous devez probablement activer l'indicateur de citations. Sans celui-ci, Converse se rabat sur l'extraction de texte basique uniquement.



Il s'agit d'une contrainte connue de l'API Converse. Pour les applications qui nécessitent une analyse visuelle des PDF sans citations, envisagez d'utiliser l'API InvokeModel à la place.



Pour les fichiers autres que PDF comme les fichiers .csv, .xlsx, .docx, .md ou .txt, consultez Travailler avec d'autres formats de fichiers.


Traiter des PDF avec Claude

Envoyer votre première requête PDF

Commençons par un exemple simple utilisant l'API Messages. Vous pouvez fournir des PDF à Claude de trois manières :

  1. Sous forme de référence URL vers un PDF hébergé en ligne
  2. Sous forme de PDF encodé en base64 dans des blocs de contenu document
  3. Par un file_id provenant de la Files API


Sur Amazon Bedrock et Vertex AI, seules les sources encodées en base64 sont actuellement disponibles.

Option 1 : Document PDF basé sur une URL

L'approche la plus simple consiste à référencer un PDF directement depuis une URL :

client = anthropic.Anthropic()
message = client.messages.create(
    model="claude-opus-4-8",
    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)

Option 2 : Document PDF encodé en base64

Si vous devez envoyer des PDF depuis votre système local ou lorsqu'une URL n'est pas disponible :

import base64
import httpx

# D'abord, chargez et encodez le PDF
pdf_url = "https://assets.anthropic.com/m/1cd9d098ac3e6467/original/Claude-3-Model-Card-October-Addendum.pdf"
pdf_data = base64.standard_b64encode(httpx.get(pdf_url).content).decode("utf-8")

# Alternative : charger depuis un fichier local
# with open("document.pdf", "rb") as f:
#     pdf_data = base64.standard_b64encode(f.read()).decode("utf-8")

# Envoyez à Claude en utilisant l'encodage base64
client = anthropic.Anthropic()
message = client.messages.create(
    model="claude-opus-4-8",
    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)

Option 3 : Files API

Pour les PDF que vous utiliserez de manière répétée, ou lorsque vous souhaitez éviter la surcharge liée à l'encodage, utilisez la Files API :

client = anthropic.Anthropic()

# Téléverser le fichier PDF
with open("document.pdf", "rb") as f:
    file_upload = client.beta.files.upload(file=("document.pdf", f, "application/pdf"))

# Utiliser le fichier téléversé dans un message
message = client.beta.messages.create(
    model="claude-opus-4-8",
    max_tokens=1024,
    betas=["files-api-2025-04-14"],
    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)

Fonctionnement de la prise en charge des PDF

Lorsque vous envoyez un PDF à Claude, les étapes suivantes se produisent :

  1. 1

    Le système extrait le contenu du document.

    • Le système convertit chaque page du document en image.
    • Le texte de chaque page est extrait et fourni avec l'image de chaque page.
  2. 2

    Claude analyse à la fois le texte et les images pour mieux comprendre le document.

    • Les documents sont fournis sous forme de combinaison de texte et d'images pour l'analyse.
    • Cela permet aux utilisateurs de demander des informations sur les éléments visuels d'un PDF, tels que les graphiques, les diagrammes et autres contenus non textuels.
  3. 3

    Claude répond en référençant le contenu du PDF si pertinent.

    Claude peut référencer à la fois le contenu textuel et visuel lorsqu'il répond. Vous pouvez améliorer davantage les performances en intégrant la prise en charge des PDF avec :

    • La mise en cache des prompts : Pour améliorer les performances lors d'analyses répétées.
    • Le traitement par lots : Pour le traitement de documents à grand volume.
    • L'utilisation d'outils : Pour extraire des informations spécifiques des documents afin de les utiliser comme entrées d'outils.

Estimer vos coûts

Le nombre de tokens d'un fichier PDF dépend du texte total extrait du document ainsi que du nombre de pages :

  • Coûts des tokens de texte : Chaque page utilise généralement entre 1 500 et 3 000 tokens selon la densité du contenu. La tarification standard de l'API s'applique sans frais supplémentaires pour les PDF.
  • Coûts des tokens d'image : Puisque chaque page est convertie en image, les mêmes calculs de coûts basés sur les images sont appliqués.

Vous pouvez utiliser le comptage de tokens pour estimer les coûts de vos PDF spécifiques.


Optimiser le traitement des PDF

Améliorer les performances

Suivez ces bonnes pratiques pour obtenir des résultats optimaux :

  • Placez les PDF avant le texte dans vos requêtes
  • Utilisez des polices standard
  • Assurez-vous que le texte est clair et lisible
  • Faites pivoter les pages dans la bonne orientation verticale
  • Utilisez des numéros de page logiques (depuis le visualiseur PDF) dans les prompts
  • Divisez les PDF volumineux en segments si nécessaire
  • Activez la mise en cache des prompts pour les analyses répétées

Faire évoluer votre implémentation

Pour le traitement à grand volume, envisagez ces approches :

Utiliser la mise en cache des prompts

Mettez en cache les PDF pour améliorer les performances sur les requêtes répétées :

client = anthropic.Anthropic()
# ...
message = client.messages.create(
    model="claude-opus-4-8",
    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": "Analyze this document."},
            ],
        }
    ],
)

Traiter des lots de documents

Utilisez l'API Message Batches pour les flux de travail à grand volume :

client = anthropic.Anthropic()
# ...
message_batch = client.messages.batches.create(
    requests=[
        {
            "custom_id": "doc1",
            "params": {
                "model": "claude-opus-4-8",
                "max_tokens": 1024,
                "messages": [
                    {
                        "role": "user",
                        "content": [
                            {
                                "type": "document",
                                "source": {
                                    "type": "base64",
                                    "media_type": "application/pdf",
                                    "data": pdf_data,
                                },
                            },
                            {"type": "text", "text": "Summarize this document."},
                        ],
                    }
                ],
            },
        }
    ]
)

Prochaines étapes


Essayer des exemples PDF


Explorez des exemples pratiques de traitement de PDF dans la recette du cookbook.


Consulter la référence API

Consultez la documentation complète de l'API pour la prise en charge des PDF.

Was this page helpful?

  • Avant de commencer
  • Vérifier les exigences relatives aux PDF
  • Plateformes et modèles pris en charge
  • Prise en charge des PDF sur Amazon Bedrock
  • Traiter des PDF avec Claude
  • Envoyer votre première requête PDF
  • Fonctionnement de la prise en charge des PDF
  • Estimer vos coûts
  • Optimiser le traitement des PDF
  • Améliorer les performances
  • Faire évoluer votre implémentation
  • Prochaines étapes