حزمة لتحليل PDFs وتحليل محتواها باستخدام LLMS.
هذه الحزمة هي تحسن يعتمد على مفهوم GPTPDF.
يستخدم GPTPDF pymupdf لتحليل PDFs ، وتحديد كل من المناطق النصية وغير النصية. ثم يدمج أو يقوم بتصفية المناطق النصية بناءً على قواعد معينة ، وتدخل النتائج النهائية في نموذج متعدد الوسائط للحلية. هذه الطريقة فعالة بشكل خاص.
بناءً على هذا المفهوم ، قمت ببعض التحسينات البسيطة.
باستخدام نموذج تحليل التخطيط ، يتم تحليل كل صفحة من PDF لتحديد نوع كل منطقة ، والذي يتضمن النص ، العنوان ، الرقم ، توضيح الشكل ، الجدول ، توضيح الجدول ، رأس ، تذييل ، مرجع ، والمعادلة. كما يتم الحصول على إحداثيات كل منطقة.
مثال تحليل تحليل التصميم:
[{'header': ((101, 66, 436, 102), 0)},
{'header': ((1038, 81, 1088, 95), 1)},
{'title': ((106, 215, 947, 284), 2)},
{'text': ((101, 319, 835, 390), 3)},
{'text': ((100, 565, 579, 933), 4)},
{'text': ((100, 967, 573, 1025), 5)},
{'text': ((121, 1055, 276, 1091), 6)},
{'reference': ((101, 1124, 562, 1429), 7)},
{'text': ((610, 565, 1089, 930), 8)},
{'text': ((613, 976, 1006, 1045), 9)},
{'title': ((612, 1114, 726, 1129), 10)},
{'text': ((611, 1165, 1089, 1431), 11)},
{'title': ((1011, 1471, 1084, 1492), 12)}]
تتضمن هذه النتيجة النوع والإحداثيات وترتيب القراءة لكل منطقة. باستخدام هذه النتيجة ، يمكن تعيين قواعد أكثر دقة لتحليل PDF.
أخيرًا ، أدخل صور المناطق المقابلة في نموذج متعدد الوسائط ، مثل GPT-4O أو QWEN-VL ، للحصول على كتل نصية ودية لحلول الخرقة.
| IMG_PATH | يكتب | page_no | اسم الملف | محتوى | فيليب |
|---|---|---|---|---|---|
| {appolute_path} /page_1_title.png | عنوان | 1 | الانتباه هو كل ما تحتاجه | [كتلة النص 1] | {file_absolute_path} |
| {appolute_path} /page_1_text.png | نص | 1 | الانتباه هو كل ما تحتاجه | [كتلة النص 2] | {file_absolute_path} |
| {appolute_path} /page_2_figure.png | شكل | 2 | الانتباه هو كل ما تحتاجه | [كتلة النص 3] | {file_absolute_path} |
| {appolute_path} /page_2_figure_caption.png | الرقم التعليق | 2 | الانتباه هو كل ما تحتاجه | [كتلة النص 4] | {file_absolute_path} |
| {appolute_path} /page_3_table.png | طاولة | 3 | الانتباه هو كل ما تحتاجه | [كتلة النص 5] | {file_absolute_path} |
| {absolute_path} /page_3_table_caption.png | تعليق الجدول | 3 | الانتباه هو كل ما تحتاجه | [كتلة النص 6] | {file_absolute_path} |
| {appolute_path} /page_1_header.png | رأس | 1 | الانتباه هو كل ما تحتاجه | [كتلة النص 7] | {file_absolute_path} |
| {appolute_path} /page_2_footer.png | تذييل | 2 | الانتباه هو كل ما تحتاجه | [كتلة النص 8] | {file_absolute_path} |
| {appolute_path} /page_3_reference.png | مرجع | 3 | الانتباه هو كل ما تحتاجه | [كتلة النص 9] | {file_absolute_path} |
| {appolute_path} /page_1_equation.png | معادلة | 1 | الانتباه هو كل ما تحتاجه | [كتلة النص 10] | {file_absolute_path} |
شاهد المزيد في وظيفة LLM_Parser.py الرئيسية.
pip install llmdocparser
لتثبيت هذا المشروع من المصدر ، اتبع هذه الخطوات:
استنساخ المستودع:
أولاً ، استنساخ المستودع إلى جهازك المحلي. افتح الجهاز الخاص بك وقم بتشغيل الأوامر التالية:
git clone https://github.com/lazyFrogLOL/llmdocparser.git
cd llmdocparserتثبيت التبعيات:
يستخدم هذا المشروع الشعر لإدارة التبعية. تأكد من تثبيت الشعر. إذا لم يكن الأمر كذلك ، فيمكنك اتباع الإرشادات الموجودة في دليل تثبيت الشعر.
بمجرد تثبيت الشعر ، قم بتشغيل الأمر التالي في دليل الجذر للمشروع لتثبيت التبعيات:
poetry install سيؤدي ذلك إلى قراءة ملف pyproject.toml وتثبيت جميع التبعيات المطلوبة للمشروع.
from llmdocparser . llm_parser import get_image_content
content , cost = get_image_content (
llm_type = "azure" ,
pdf_path = "path/to/your/pdf" ,
output_dir = "path/to/output/directory" ,
max_concurrency = 5 ,
azure_deployment = "azure-gpt-4o" ,
azure_endpoint = "your_azure_endpoint" ,
api_key = "your_api_key" ,
api_version = "your_api_version"
)
print ( content )
print ( cost )حدود
llm_type: str
الخيارات هي Azure ، Openai ، DashScope.
pdf_path: str
المسار إلى ملف PDF.
output_dir: str
دليل الإخراج لتخزين جميع الصور المحسورة.
max_concurrency: int
عدد المواضيع العامل في تحليل GPT. تفاصيل الاتصال الدُفعات: دعم الدُفعات
في حالة استخدام Azure ، يجب تمرير معلمات Azure_Deployment و Azure_endpoint ؛ خلاف ذلك ، يجب توفير مفتاح API فقط.
base_url: str
url الخادم المتوافق مع Openai. التفاصيل: خادم Openai المتوافق مع الخادم
باستخدام ورقة "الانتباه هو كل ما تحتاجه" للتحليل ، فإن النموذج الذي تم اختياره هو GPT-4O ، ويكلف على النحو التالي:
Total Tokens: 44063
Prompt Tokens: 33812
Completion Tokens: 10251
Total Cost (USD): $0.322825
متوسط التكلفة لكل صفحة: 0.0215 دولار