يحتوي هذا المستودع على أمثلة توضح كيف يمكن استخدام pymupdf كخلاص بيانات لـ chatbots المستندة إلى القطع.
ومن الأمثلة على ذلك البرامج النصية التي تبدأ chatbots - إما كبرامج CLI بسيطة في وضع REPL أو واجهة المستخدم الرسومية القائمة على المتصفح. تتبع نصوص chatbot هذا الهيكل العام:
حزمة Python على pypi pymupdf4llm (هناك أيضًا اسم مستعار pdf4llm) قادر على تحويل صفحات pdf إلى سلاسل نصية بتنسيق تخفيض (github متوافق). يتضمن ذلك نصًا قياسيًا ونصًا قائمًا على الجدول في طريقة عرض متسقة ومتكاملة - وهي ميزة مهمة بشكل خاص في إعدادات الخرقة.
$ pip install -U pymupdf4llm
سيقوم هذا الأمر تلقائيًا بتثبيت pymupdf إذا لزم الأمر.
ثم في البرنامج النصي الخاص بك افعل
import pymupdf4llm
md_text = pymupdf4llm . to_markdown ( "input.pdf" )
# now work with the markdown text, e.g. store as a UTF8-encoded file
import pathlib
pathlib . Path ( "output.md" ). write_bytes ( md_text . encode ())
بدلاً من سلسلة اسم الملف على النحو الوارد أعلاه ، يمكن للمرء أيضًا توفير Document
PymupDF. بشكل افتراضي ، ستتم معالجة جميع الصفحات في PDF. إذا رغبت في ذلك ، يمكن استخدام pages=[...]
لتوفير قائمة بأرقام الصفحات القائمة على الصفر للنظر فيها.
إنشاء نص مقلوب الآن يعالج صفحات متعددة العمود .
لإنشاء أجزاء صغيرة من النص - بدلاً من إنشاء سلسلة كبيرة واحدة للوثيقة بأكملها - يمكن استخدام خيار (V0.0.2) الجديد (V0.0.2) page_chunks=True
. ستكون نتيجة .to_markdown("input.pdf", page_chunks=True)
قائمة بقواميس بيثون ، واحدة لكل صفحة.
الجديد أيضًا في الإصدار 0.0.2 هو الاستخراج الاختياري للصور ورسومات المتجهات: استخدام المعلمة write_images=True
. سوف تخزن صور PNG في مجلد المستند ، وسوف يشير نص Markdown بشكل مناسب إليها. تتم تسمية الصور مثل "input.pdf-page_number-index.png"
.
الوثائق
API
على الرغم من أن PDF هو تنسيق المستندات الأكثر أهمية في جميع أنحاء العالم ، إلا أنه من المفيد الإشارة إلى أن جميع الأمثلة والبرامج النصية المساعد تعمل بنفس الطريقة ودون تغيير لجميع أنواع الملفات المدعومة.
لذلك بالنسبة لمستند XPS أو كتابًا إلكترونيًا ، ما عليك سوى توفير اسم الملف على سبيل المثال كـ "input.mobi"
وسيعمل كل شيء آخر كما كان من قبل.
يضيف Pymupdf روابط Python والتجريد إلى MUPDF ، PDF خفيفة الوزن ، XPS ، و Viewer ، العارض ، ومجموعة الأدوات. يتم الحفاظ على كل من PymupDF و MUPDF وتطويره بواسطة Artifex Software ، Inc.
تقع الصفحة الرئيسية لـ Pymupdf على Github.
انضم إلينا على Discord هنا: #pymupdf.
يتوفر PymupDF بموجب اتفاقيات AGPL مفتوحة المصدر واتفاقيات الترخيص التجاري. إذا حددت أنه لا يمكنك تلبية متطلبات AGPL ، فيرجى الاتصال بـ Artifex للحصول على مزيد من المعلومات فيما يتعلق بالترخيص التجاري.