Tools
Outil PDF
pdf analyse un ou plusieurs documents PDF et renvoie du texte. Il utilise l’entrée de document native avec les modèles Anthropic et Google, et se rabat sur l’extraction de texte et d’images pour tous les autres fournisseurs.
Disponibilité
L’outil est enregistré uniquement lorsqu’OpenClaw peut résoudre un modèle prenant en charge les PDF pour l’agent. Ordre de résolution :
agents.defaults.pdfModel(modèle principal et modèles de secours explicites)agents.defaults.imageModel(modèle principal et modèles de secours explicites)- Le modèle de session/par défaut résolu de l’agent, si son fournisseur prend en charge l’entrée PDF native (Anthropic, Google) ou dispose déjà d’un modèle de vision configuré
- Les fournisseurs détectés automatiquement qui prennent en charge les images ou la vision et disposent d’une authentification utilisable, en privilégiant d’abord ceux qui prennent en charge les PDF natifs
L’authentification de chaque modèle de secours candidat est vérifiée avant son utilisation. Ainsi, un provider/model configuré n’est pris en compte que si OpenClaw peut authentifier ce fournisseur pour l’agent. Si aucun modèle utilisable ne peut être résolu, l’outil pdf n’est pas exposé.
Référence des entrées
pdfstringChemin ou URL d’un PDF.
pdfsstring[]Chemins ou URL de plusieurs PDF, jusqu’à 10 au total.
promptstringdefault: Analyze this PDF document.Invite d’analyse.
pagesstringFiltre de pages tel que 1-5 ou 1,3,7-9. Non pris en charge en mode fournisseur natif.
passwordstringMot de passe des PDF chiffrés. S’applique à chaque PDF de la requête ; utilisé uniquement en mode de secours par extraction.
modelstringRemplacement facultatif du modèle au format provider/model.
maxBytesMbnumberTaille maximale par PDF en Mo. Utilise par défaut agents.defaults.pdfMaxBytesMb, ou 10 si cette valeur n’est pas définie.
Remarques :
pdfetpdfssont fusionnés et dédupliqués avant le chargement ; au moins l’un des deux est requis.pagesest analysé comme une liste de numéros de pages commençant à 1, dédupliquée, triée et limitée àagents.defaults.pdfMaxPages(20par défaut). Une plage ne correspondant à aucune page dans les limites provoque une erreur avant l’appel du modèle.
Références PDF prises en charge
- Chemin de fichier local (y compris avec développement de
~) - URL
file:// - URL
http://ethttps:// - Références entrantes gérées par OpenClaw, telles que
media://inbound/<id>
Les autres schémas d’URI (par exemple ftp://) renvoient details.error = "unsupported_pdf_reference". Les URL http(s) distantes sont refusées lorsque l’outil s’exécute dans un bac à sable. Lorsque la stratégie de fichiers limités à l’espace de travail est activée, les chemins locaux situés hors des racines autorisées sont refusés ; les références entrantes gérées et les chemins rejoués sous le stockage de médias entrants d’OpenClaw restent autorisés.
Modes d’exécution
Mode fournisseur natif
Utilisé pour les fournisseurs anthropic et google (les seuls fournisseurs déclarant actuellement une prise en charge native des documents PDF). Les octets bruts de chaque PDF sont transmis directement à l’API du fournisseur sous forme de document natif ou de partie PDF intégrée.
Limites :
pagesn’est pas pris en charge ; s’il est défini, l’outil lève l’erreurpages is not supported with native PDF providers.passwordn’est pas pris en charge ; s’il est défini, l’outil lève l’erreurpassword is not supported with native PDF providers. Utilisez un modèle non natif pour les PDF chiffrés.
Mode de secours par extraction
Utilisé pour tous les autres fournisseurs.
- Extrait le texte des pages sélectionnées (jusqu’à
agents.defaults.pdfMaxPages,20par défaut) via le plugindocument-extractintégré, qui utilise le paquetclawpdf(PDFium WebAssembly) pour extraire le texte et les images. - Si le texte extrait comporte moins de
200caractères, restitue les mêmes pages sous forme d’images PNG. Le budget de restitution est de4,000,000pixels au total, partagé entre toutes les pages nécessitant des images (alloué proportionnellement par page restante, et non individuellement par page). Ainsi, les pages contenant déjà suffisamment de texte ne sont pas restituées. - Envoie le texte extrait, les éventuelles images restituées et l’invite au modèle sélectionné.
Détails :
- Les PDF chiffrés sont ouverts avec le paramètre
passwordde premier niveau. - Si le modèle n’accepte pas d’images en entrée et qu’aucun texte ne peut être extrait, l’outil renvoie une erreur.
- Si la restitution des images échoue, OpenClaw les ignore et poursuit avec le texte extrait.
- Si le modèle cible accepte uniquement du texte et que l’extraction a produit des images, OpenClaw ignore les images et envoie uniquement le texte.
Configuration
{ agents: { defaults: { pdfModel: { primary: "anthropic/claude-opus-4-6", fallbacks: ["openai/gpt-5.4-mini"], }, pdfMaxBytesMb: 10, pdfMaxPages: 20, }, },}| Clé | Valeur par défaut | Signification |
|---|---|---|
agents.defaults.pdfModel |
non définie | Modèles PDF principal et de secours explicites ; utilise ensuite imageModel, puis le modèle de session. |
agents.defaults.pdfMaxBytesMb |
10 |
Taille maximale par PDF en Mo. |
agents.defaults.pdfMaxPages |
20 |
Nombre maximal de pages traitées par PDF. |
Consultez la référence de configuration pour obtenir tous les détails sur les champs.
Détails de la sortie
L’outil renvoie le texte dans content[0].text et les métadonnées structurées dans details.
Champs details courants :
model: référence du modèle résolu (provider/model)native:truepour le mode fournisseur natif,falsepour le mode de secoursattempts: tentatives de secours ayant échoué avant la réussite
Champs de chemin :
- Entrée PDF unique :
details.pdf - Entrées PDF multiples :
details.pdfs[]avec des entréespdf - Métadonnées de réécriture du chemin du bac à sable, le cas échéant :
rewrittenFrom
Comportement en cas d’erreur
| Condition | Résultat |
|---|---|
| Aucune entrée PDF | Lève pdf required: provide a path or URL to a PDF document |
| Plus de 10 PDF | details.error = "too_many_pdfs" |
| Schéma de référence non pris en charge | details.error = "unsupported_pdf_reference" |
pages avec un fournisseur natif |
Lève pages is not supported with native PDF providers |
password avec un fournisseur natif |
Lève password is not supported with native PDF providers |
Exemples
PDF unique :
{ "pdf": "/tmp/report.pdf", "prompt": "Summarize this report in 5 bullets"}Plusieurs PDF :
{ "pdfs": ["/tmp/q1.pdf", "/tmp/q2.pdf"], "prompt": "Compare risks and timeline changes across both documents"}Modèle de secours avec filtrage des pages :
{ "pdf": "https://example.com/report.pdf", "pages": "1-3,7", "model": "openai/gpt-5.4-mini", "prompt": "Extract only customer-impacting incidents"}PDF chiffré avec secours par extraction :
{ "pdf": "/tmp/locked.pdf", "password": "example-password", "model": "openai/gpt-5.4-mini", "prompt": "Summarize this contract"}Pages connexes
- Présentation des outils - tous les outils disponibles pour les agents
- Référence de configuration - configuration de
pdfMaxBytesMbetpdfMaxPages