MarkItDown: حوّل أي شيء إلى Markdown باستخدام أداة بايثون هذه!
MarkItDown هي أداة بايثون متعددة الاستخدامات مصممة لتحويل تنسيقات الملفات المختلفة والمستندات المكتبية إلى Markdown. يتيح ذلك سهولة الفهرسة وتحليل النصوص والتكامل في مهام سير العمل المستندة إلى Markdown. تم تطوير MarkItDown وصيانته كمشروع مفتوح المصدر من قبل Microsoft، وهو يكتسب شعبية مع أكثر من 23.7 ألف نجمة على GitHub. ستتعمق منشور المدونة هذا في الميزات وعملية التثبيت وأمثلة الاستخدام وإرشادات المساهمة في MarkItDown، مما يوفر نظرة عامة شاملة على أداة التحويل القوية هذه.
الميزات الرئيسية والتنسيقات المدعومة
يدعم MarkItDown مجموعة واسعة من أنواع الملفات، مما يجعله حلاً مفضلاً لتحويل أي مستند تقريبًا إلى Markdown. إن قدرته على استخراج المعلومات ذات الصلة وتنسيقها في إخراج Markdown نظيف وقابل للقراءة مفيد للغاية لمنشئي المحتوى ومحللي البيانات وأي شخص يعمل بتنسيقات ملفات متنوعة. فيما يلي التنسيقات الرئيسية المدعومة:
- PDF: يحول مستندات PDF إلى Markdown، مع الحفاظ على النص والتنسيق قدر الإمكان.
- PowerPoint: يستخرج النص من عروض PowerPoint التقديمية ويحوله إلى Markdown.
- Word: يحول مستندات Word (DOC/DOCX) إلى تنسيق Markdown.
- Excel: يستخرج البيانات من جداول بيانات Excel (XLS/XLSX) ويحولها إلى جداول Markdown.
- الصور: يستخرج بيانات EXIF الوصفية وينفذ التعرف الضوئي على الحروف (OCR) لتحويل نص الصورة إلى Markdown.
- الصوت: يستخرج بيانات EXIF الوصفية وينفذ نسخ الكلام لتحويل محتوى الصوت إلى Markdown.
- HTML: يحول مستندات HTML إلى Markdown.
- تنسيقات النصوص: يدعم تنسيقات CSV و JSON و XML.
- ملفات ZIP: يكرر محتويات أرشيفات ZIP، ويحول الملفات الفردية إلى Markdown.
التثبيت والاستخدام
يمكن تثبيت MarkItDown بسهولة باستخدام pip، وهو برنامج تثبيت حزم Python. كما يتم دعم التثبيت من المصدر.
- التثبيت عبر pip:
pip install markitdown - التثبيت من المصدر:
pip install -e .
بمجرد التثبيت، يمكن استخدام MarkItDown من سطر الأوامر أو مباشرة داخل نصوص Python.
استخدام سطر الأوامر
لتحويل ملف من سطر الأوامر، ما عليك سوى تشغيل الأمر markitdown متبوعًا بمسار الملف، وإعادة توجيه الإخراج إلى ملف .md:
markitdown path-to-file.pdf > document.md
يمكنك أيضًا توجيه المحتوى مباشرة إلى الأمر:
cat path-to-file.pdf | markitdown
استخدام Python API
يوفر MarkItDown Python API بسيطًا للتحويل البرمجي.
-
التحويل الأساسي:
from markitdown import MarkItDown md = MarkItDown() result = md.convert("test.xlsx") print(result.text_content) -
استخدام نماذج اللغة الكبيرة (LLMs) لأوصاف الصور: لإنشاء أوصاف للصور باستخدام LLMs، يمكنك دمج عميل LLM مثل OpenAI. هذا مفيد لإثراء محتوى الصورة داخل إخراج Markdown الخاص بك. ستحتاج إلى مفتاح OpenAI API وحزمة
openaiPython المثبتة.from markitdown import MarkItDown from openai import OpenAI client = OpenAI() md = MarkItDown(llm_client=client, llm_model="gpt-4o") result = md.convert("example.jpg") print(result.text_content)
استخدام Docker
يمكن أيضًا تشغيل MarkItDown باستخدام Docker لبيئة متسقة ومعزولة.
- بناء صورة Docker:
docker build -t markitdown:latest . - تشغيل الحاوية:
docker run --rm -i markitdown:latest < ~/your-file.pdf > output.md
المساهمة في MarkItDown
يرحب مشروع MarkItDown بالمساهمات من المجتمع. للمساهمة، يجب عليك الموافقة على اتفاقية ترخيص المساهم (CLA). سيرشدك برنامج CLA خلال العملية عند إرسال طلب سحب. يلتزم المشروع أيضًا بمدونة قواعد سلوك Microsoft مفتوحة المصدر.
تشغيل الاختبارات والتحقق
للتأكد من أن مساهماتك على قدم المساواة، يمكنك تشغيل الاختبارات محليًا.
- باستخدام Hatch:
pip install hatch hatch shell hatch test - باستخدام Devcontainer: أعد فتح المشروع في Devcontainer وقم بتشغيل
hatch test.
يمكن تشغيل عمليات التحقق المسبق باستخدام pre-commit run --all-files قبل إرسال PR.
خاتمة
MarkItDown هي أداة قوية ومتعددة الاستخدامات لتحويل مجموعة واسعة من تنسيقات الملفات إلى Markdown. إن سهولة استخدامه، جنبًا إلى جنب مع دعمه الشامل لأنواع المستندات المختلفة، يجعله رصيدًا لا يقدر بثمن لأي شخص يعمل مع Markdown. سواء كنت بحاجة إلى تحويل ملفات PDF أو مستندات Office أو الصور أو الملفات الصوتية، فإن MarkItDown يوفر حلاً مناسبًا وفعالًا. تشجع طبيعة المشروع مفتوحة المصدر والمجتمع النشط على مزيد من التطوير والتحسين، مما يضمن استمرارية أهميته في المشهد المتطور باستمرار لأدوات تحويل المستندات. تذكر أن الفريق سيكون في عطلة في الفترة من 21 ديسمبر إلى 6 يناير، لذا توقع تأخيرًا في الردود خلال تلك الفترة.
المصدر: microsoft
مقالات ذات صلة
التعليقات
لا توجد تعليقات بعد. كن أول من يعلق!
جاري تحميل التعليقات...