Tools
أداة PDF
pdf يحلّل مستند PDF واحدًا أو أكثر ويُرجع نصًا. ويستخدم إدخال المستندات الأصلي في نماذج Anthropic وGoogle، ويلجأ إلى استخراج النصوص/الصور مع جميع المزوّدين الآخرين.
التوفّر
لا تُسجَّل الأداة إلا عندما يتمكن OpenClaw من تحديد نموذج يدعم PDF للوكيل. ترتيب التحديد:
agents.defaults.pdfModel(النموذج الأساسي/البدائل المحددة صراحةً)agents.defaults.imageModel(النموذج الأساسي/البدائل المحددة صراحةً)- نموذج الجلسة/النموذج الافتراضي المحدد للوكيل، إذا كان مزوّده يدعم إدخال PDF الأصلي (Anthropic وGoogle) أو لديه بالفعل نموذج رؤية مُهيّأ
- المزوّدون المكتشفون تلقائيًا والقادرون على معالجة الصور/الرؤية ولديهم مصادقة صالحة، مع تفضيل المزوّدين الذين يدعمون PDF الأصلي أولًا
تُفحص مصادقة كل نموذج بديل مرشح قبل استخدامه، لذلك لا يُعتدّ بنموذج provider/model مُهيّأ إلا إذا تمكن OpenClaw من مصادقة ذلك المزوّد للوكيل. وإذا تعذّر تحديد أي نموذج صالح للاستخدام، فلن تُتاح أداة pdf.
مرجع الإدخال
pdfstringمسار ملف PDF واحد أو عنوان URL له.
pdfsstring[]مسارات أو عناوين URL لعدة ملفات PDF، بحد أقصى إجمالي قدره 10.
promptstringdefault: Analyze this PDF document.موجّه التحليل.
pagesstringمرشّح صفحات مثل 1-5 أو 1,3,7-9. غير مدعوم في وضع المزوّد الأصلي.
passwordstringكلمة مرور ملفات PDF المشفّرة. تنطبق على كل ملف PDF في الطلب، ولا تُستخدم إلا في وضع الاستخراج الاحتياطي.
modelstringتجاوز اختياري للنموذج بصيغة provider/model.
maxBytesMbnumberالحد الأقصى لحجم كل ملف PDF بالميغابايت. القيمة الافتراضية هي agents.defaults.pdfMaxBytesMb، أو 10 إذا لم تُضبط.
ملاحظات:
- تُدمج
pdfوpdfsوتُزال التكرارات قبل التحميل؛ ويجب توفير واحدة منهما على الأقل. - تُحلّل
pagesبوصفها أرقام صفحات تبدأ من 1، ثم تُزال التكرارات وتُرتّب وتُقيّد بحدagents.defaults.pdfMaxPages(القيمة الافتراضية20). يؤدي النطاق الذي لا يطابق أي صفحات ضمن الحدود إلى خطأ قبل استدعاء النموذج.
مراجع PDF المدعومة
- مسار ملف محلي (بما في ذلك توسيع
~) - عنوان URL من نوع
file:// - عنوان URL من نوع
http://أوhttps:// - المراجع الواردة التي يديرها OpenClaw، مثل
media://inbound/<id>
تُرجع مخططات URI الأخرى (مثل ftp://) القيمة details.error = "unsupported_pdf_reference". وتُرفض عناوين URL البعيدة من نوع http(s) عند تشغيل الأداة داخل بيئة معزولة. وعند تفعيل سياسة الملفات المقصورة على مساحة العمل، تُرفض المسارات المحلية الواقعة خارج الجذور المسموح بها؛ بينما تظل المراجع الواردة المُدارة والمسارات المعاد تشغيلها ضمن مخزن الوسائط الواردة في OpenClaw مسموحًا بها.
أوضاع التنفيذ
وضع المزوّد الأصلي
يُستخدم مع المزوّدين anthropic وgoogle (وهما المزوّدان الوحيدان اللذان يعلنان حاليًا دعم مستندات PDF الأصلية). تُرسل بايتات PDF الخام مباشرةً إلى واجهة API الخاصة بالمزوّد باعتبارها مستندًا أصليًا/جزء PDF مضمّنًا لكل ملف.
القيود:
pagesغير مدعومة؛ وإذا ضُبطت، ترمي الأداة الخطأpages is not supported with native PDF providers.passwordغير مدعومة؛ وإذا ضُبطت، ترمي الأداة الخطأpassword is not supported with native PDF providers. استخدم نموذجًا غير أصلي لملفات PDF المشفّرة.
وضع الاستخراج الاحتياطي
يُستخدم مع جميع المزوّدين الآخرين.
- استخراج النص من الصفحات المحددة (حتى
agents.defaults.pdfMaxPages، والقيمة الافتراضية20) عبر Plugindocument-extractالمضمّن، الذي يستخدم حزمةclawpdf(PDFium WebAssembly) لاستخراج النصوص والصور. - إذا كان النص المستخرج أقصر من
200حرف، تُصيَّر الصفحات نفسها إلى صور PNG. تبلغ ميزانية التصيير الإجمالية4,000,000بكسل، وهي مشتركة بين جميع الصفحات التي تحتاج إلى صور (وتُخصّص تناسبيًا لكل صفحة متبقية، وليس لكل صفحة على حدة)، لذلك تتخطى الصفحات النصية التي تحتوي بالفعل على نص كافٍ عملية التصيير بالكامل. - إرسال النص المستخرج (وأي صور مُصيَّرة) مع الموجّه إلى النموذج المحدد.
التفاصيل:
- تُفتح ملفات PDF المشفّرة باستخدام المَعلم
passwordذي المستوى الأعلى. - إذا كان النموذج لا يدعم إدخال الصور ولا يوجد نص قابل للاستخراج، تُرجع الأداة خطأ.
- إذا فشل تصيير الصور، يتجاهل OpenClaw الصور ويتابع باستخدام النص المستخرج.
- إذا كان النموذج المستهدف نصيًا فقط وأنتج الاستخراج صورًا، يتجاهل OpenClaw الصور ويرسل النص فقط.
الإعداد
{ agents: { defaults: { pdfModel: { primary: "anthropic/claude-opus-4-6", fallbacks: ["openai/gpt-5.4-mini"], }, pdfMaxBytesMb: 10, pdfMaxPages: 20, }, },}| المفتاح | القيمة الافتراضية | المعنى |
|---|---|---|
agents.defaults.pdfModel |
غير مضبوط | نماذج PDF الأساسية/البديلة المحددة صراحةً؛ ويلجأ إلى imageModel، ثم إلى نموذج الجلسة. |
agents.defaults.pdfMaxBytesMb |
10 |
الحد الأقصى لحجم كل ملف PDF بالميغابايت. |
agents.defaults.pdfMaxPages |
20 |
الحد الأقصى لعدد الصفحات التي تُعالج لكل ملف PDF. |
راجع مرجع الإعداد للاطلاع على التفاصيل الكاملة للحقول.
تفاصيل الإخراج
تُرجع الأداة النص في content[0].text والبيانات الوصفية المنظّمة في details.
حقول details الشائعة:
model: مرجع النموذج المحدد (provider/model)native: القيمةtrueلوضع المزوّد الأصلي، وfalseللوضع الاحتياطيattempts: محاولات البدائل التي فشلت قبل النجاح
حقول المسارات:
- إدخال ملف PDF واحد:
details.pdf - إدخال عدة ملفات PDF:
details.pdfs[]مع إدخالاتpdf - البيانات الوصفية لإعادة كتابة المسار في البيئة المعزولة (عند انطباق ذلك):
rewrittenFrom
سلوك الأخطاء
| الحالة | النتيجة |
|---|---|
| عدم وجود إدخال PDF | يرمي pdf required: provide a path or URL to a PDF document |
| أكثر من 10 ملفات PDF | details.error = "too_many_pdfs" |
| مخطط مرجع غير مدعوم | details.error = "unsupported_pdf_reference" |
استخدام pages مع مزوّد أصلي |
يرمي pages is not supported with native PDF providers |
استخدام password مع مزوّد أصلي |
يرمي password is not supported with native PDF providers |
أمثلة
ملف PDF واحد:
{ "pdf": "/tmp/report.pdf", "prompt": "Summarize this report in 5 bullets"}عدة ملفات PDF:
{ "pdfs": ["/tmp/q1.pdf", "/tmp/q2.pdf"], "prompt": "Compare risks and timeline changes across both documents"}نموذج احتياطي مع ترشيح الصفحات:
{ "pdf": "https://example.com/report.pdf", "pages": "1-3,7", "model": "openai/gpt-5.4-mini", "prompt": "Extract only customer-impacting incidents"}ملف PDF مشفّر مع الاستخراج الاحتياطي:
{ "pdf": "/tmp/locked.pdf", "password": "example-password", "model": "openai/gpt-5.4-mini", "prompt": "Summarize this contract"}ذو صلة
- نظرة عامة على الأدوات - جميع أدوات الوكيل المتاحة
- مرجع الإعداد - إعدادا
pdfMaxBytesMbوpdfMaxPages