Native CLI i18n: The TrustGraph CLI has built-in translation support that dynamically loads language strings. You can test and use different languages by simply passing the --lang flag (e.g., --lang es for Spanish, --lang ru for Russian) or by configuring your environment's LANG variable. Automated Docs Translations: This PR introduces autonomously translated Markdown documentation into several target languages, including Spanish, Swahili, Portuguese, Turkish, Hindi, Hebrew, Arabic, Simplified Chinese, and Russian.
27 KiB
| layout | title | parent |
|---|---|---|
| default | جهاز فك ترميز المستندات الشامل | Arabic (Beta) |
جهاز فك ترميز المستندات الشامل
Beta Translation: This document was translated via Machine Learning and as such may not be 100% accurate. All non-English languages are currently classified as Beta.
العنوان
جهاز فك ترميز المستندات الشامل يعمل بواسطة unstructured — استيراد أي تنسيق مستند شائع
من خلال خدمة واحدة مع تتبع كامل وتكامل مع أمين المكتبة، وتسجيل مواقع المصدر كبيانات وصفية لـ "رسم بياني للمعرفة" من أجل التتبع التام.
المشكلة
يحتوي "TrustGraph" حاليًا على جهاز فك ترميز خاص بملفات PDF. دعم تنسيقات إضافية (DOCX, XLSX, HTML, Markdown، نص عادي، PPTX، إلخ) يتطلب إما كتابة جهاز فك ترميز جديد لكل تنسيق أو اعتماد مكتبة استخراج عالمية. لكل تنسيق هيكل مختلف — بعضها يعتمد على الصفحات، وبعضها لا — ويجب أن يسجل سلسلة التتبع أين أصل كل جزء من النص المستخرج في المستند الأصلي.
الحل المقترح
المكتبة: unstructured
استخدم unstructured.partition.auto.partition() التي تكتشف تلقائيًا التنسيق من نوع MIME أو امتداد الملف وتستخرج العناصر المنظمة (العنوان، النص السردي، الجدول، عنصر القائمة، إلخ). تحمل كل عنصر بيانات وصفية بما في ذلك:
page_number(للتنسيقات القائمة على الصفحات مثل PDF، PPTX)element_id(فريد لكل عنصر)coordinates(مربع إحاطة لملفات PDF)text(محتوى النص المستخرج)category(نوع العنصر: العنوان، النص السردي، الجدول، إلخ.)
أنواع العناصر
تستخرج unstructured أنواع العناصر من المستندات. كل عنصر لديه فئة و بيانات وصفية مرتبطة:
عناصر النص:
Title— عناوين الأقسامNarrativeText— فقرات النصListItem— عناصر القوائم المرقمة/المسردةHeader,Footer— رؤوس/تذييلات الصفحاتFigureCaption— تسميات للرسومات/الصورFormula— تعبيرات رياضيةAddress,EmailAddress— معلومات الاتصالCodeSnippet— كتل التعليمات البرمجية (من markdown)
الجداول:
Table— بيانات جدولية منظمة. توفرunstructuredكلاً منelement.text(نص عادي) وelement.metadata.text_as_html(علامة HTML<tableكاملة مع الصفوف والأعمدة والعناوين المحفوظة). بالنسبة للتنسيقات ذات الهيكل الجدول المحدد (DOCX, XLSX, HTML)، يكون الاستخراج موثوقًا للغاية. بالنسبة لملفات PDF، يعتمد اكتشاف الجداول على الاستراتيجيةhi_resمع تحليل التخطيط.
الصور:
Image— صور مضمنة يتم اكتشافها من خلال تحليل التخطيط (يتطلب الاستراتيجيةhi_res). معextract_image_block_to_payload=True، ترجع بيانات الصورة كـ base64 فيelement.metadata.image_base64. النص المستخرج من الصورة متاح فيelement.text.
معالجة الجداول
الجداول هي مخرج أساسي. عندما يواجه جهاز فك الترميز عنصر Table، فإنه يحافظ على هيكل HTML بدلاً من تسويته إلى نص عادي. هذا يوفر لمستخرج LLM (نموذج اللغة الكبير) إدخالًا أفضل بكثير لسحب المعرفة المنظمة من البيانات الجدولية.
يتم تجميع النص الخاص بالصفحة/القسم على النحو التالي:
- عناصر النص: نص عادي، مدمج مع سطور جديدة
- عناصر الجدول: علامة HTML للجدول من
text_as_html، ومحاطة بـ<table>حتى يتمكن نموذج اللغة الكبيرة من التمييز بين الجداول والنص السردي.
على سبيل المثال، صفحة تحتوي على عنوان وفقرة وجدول تنتج:
نظرة عامة مالية
ارتفعت الإيرادات بنسبة 15٪ على أساس سنوي مدفوعة باعتماد المؤسسات.
<table>
<tr><th>الربع</th><th>الإيرادات</th><th>النمو</th></tr>
<tr><td>Q1</td><td>$12M</td><td>12%</td></tr>
<tr><td>Q2</td><td>$14M</td><td>17%</td></tr>
</table>
هذا يحافظ على هيكل الجدول من خلال التقطيع وإلى مسار الاستخراج، حيث يمكن لنموذج اللغة الكبيرة استخراج العلاقات مباشرة من الخلايا المنظمة بدلاً من تخمين محاذاة الأعمدة من المسافات.
معالجة الصور
تتم استخراج الصور وتخزينها في أمين المكتبة كأوراق فرعية مع document_type="image" ومعرف urn:image:{uuid}. إنها تحصل على ثلاثيات تتبع من النوع tg:Image، مرتبطة بصفحتها/قسمها الأصلية عبر prov:wasDerivedFrom. يتم تسجيل البيانات الوصفية للصورة (الإحداثيات والأبعاد و element_id) في التتبع.
من المهم للغاية، لا يتم إخراج الصور كإخراج TextDocument. يتم تخزينها فقط — ولا يتم إرسالها إلى وحدة تقسيم (chunker) أو أي مسار لمعالجة النصوص. هذا مقصود:
- لا يوجد مسار لمعالجة الصور بعد (دمج نموذج الرؤية هو عمل مستقبلي)
- إرسال بيانات صورة base64 أو أجزاء من OCR إلى مسار استخراج النص سينتج عنه ثلاثيات KG (رسم بياني للمعرفة) غير صحيحة.
كما يتم استبعاد الصور من النص المجمع للصفحة/القسم — أي عناصر Image يتم تخطيها بصمت عند ربط عناصر النص لصفحة/قسم. يسجل سلسلة التتبع أن الصور موجودة وأين ظهرت في المستند، بحيث يمكن لنموذج معالجة صور مستقبلي التقاطها دون إعادة استيراد المستند.
عمل مستقبلي
- توجيه الكيانات
tg:Imageإلى نموذج رؤية للوصف أو تفسير المخططات أو استخراج بيانات الرسم البياني. - تخزين أوصاف الصور كمستندات نصية فرعية يتم إدخالها في مسار التقطيع/الاستخراج القياسي.
- ربط المعرفة المستخرجة بالصور المصدر عبر التتبع.
استراتيجيات الأقسام
بالنسبة للتنسيقات القائمة على الصفحات (PDF، PPTX، XLSX)، يتم تجميع العناصر دائمًا حسب الصفحة/الشريحة/الورقة أولاً. بالنسبة للتنسيقات غير القائمة على الصفحات (DOCX، HTML، Markdown، إلخ)، يحتاج جهاز فك الترميز إلى استراتيجية لتقسيم المستند إلى أقسام. هذا قابل للتكوين في وقت التشغيل عبر --section-strategy.
تعتبر كل استراتيجية وظيفة تجميع على قائمة unstructured للعناصر. الإخراج هو قائمة بمجموعات العناصر؛ يظل بقية المسار (تجميع النص وتخزين أمين المكتبة والتتبع وإصدار TextDocument) متطابقًا بغض النظر عن الاستراتيجية.
whole-document (افتراضي)
إخراج المستند بأكمله كقسم واحد. اسمح لوحدة تقسيم المستند (chunker) بمعالجة جميع عمليات التقسيم.
- أبسط نهج، خط أساس جيد
- قد ينتج عنه
TextDocumentكبير جدًا للملفات الكبيرة، ولكن وحدة التقسيم تتعامل مع ذلك - الأفضل عندما تريد أقصى قدر من السياق لكل قسم
heading
التقسيم عند عناصر العناوين (Title). كل قسم هو عنوان وجميع المحتويات حتى العنوان التالي من نفس المستوى أو أعلى. تخلق العناوين المتداخلة أقسامًا متداخلة.
- ينتج وحدات متماسكة من الناحية الموضوعية
- يعمل بشكل جيد مع المستندات المنظمة (التقارير والكتيبات والمواصفات)
- يوفر لـ LLM الاستخراج سياق العنوان جنبًا إلى جنب مع المحتوى
- يرجع إلى
whole-documentإذا لم يتم العثور على أي عناوين
element-type
التقسيم عند حدوث تغيير كبير في نوع العنصر — على وجه التحديد، ابدأ قسمًا جديدًا في الانتقالات بين النص السردي والجداول. تظل العناصر المتتالية من نفس الفئة العامة (نص، نص، نص أو جدول، جدول) مجمعة.
- يحافظ على الجداول كأقسام منفصلة
- جيد للمستندات ذات المحتوى المختلط (التقارير مع الجداول البيانية)
- يتم إعطاء الجداول اهتمام استخراج مخصص
count
تجميع عدد ثابت من العناصر لكل قسم. قابلة للتكوين عبر --section-element-count (افتراضي: 20).
- بسيط وقابل للتنبؤ
- لا يحترم هيكل المستند
- مفيد كحل احتياطي أو للتجريب
size
تجميع العناصر حتى يتم الوصول إلى حد الأحرف، ثم ابدأ قسمًا جديدًا. يحترم حدود العناصر — لا يقسم في منتصف العنصر. قابلة للتكوين عبر --section-max-size (افتراضي: 4000 حرف).
- ينتج أقسامًا ذات أحجام تقريبًا موحدة
- يحترم حدود العناصر (على عكس وحدة التقسيم السفلية)
- حل وسط جيد بين التحكم في الهيكل والحجم
- إذا تجاوز عنصر واحد الحد، فإنه يصبح قسمه الخاص
تفاعل مع التنسيق القائم على الصفحة
بالنسبة للتنسيقات القائمة على الصفحات، يكون تجميع الصفحة هو الأولوية دائمًا. يمكن أن تنطبق استراتيجيات القسم بشكل اختياري داخل صفحة إذا كانت كبيرة جدًا (على سبيل المثال، صفحة PDF تحتوي على جدول ضخم)، ويتم التحكم في ذلك بواسطة
--section-within-pages (افتراضي: false). عندما يكون false، تكون كل صفحة دائمًا قسمًا واحدًا بغض النظر عن الحجم.
اكتشاف التنسيق
يحتاج جهاز فك الترميز إلى معرفة نوع MIME الخاص بالمستند لتمريره إلى partition() الخاصة بـ unstructured. هناك مساران:
- مسار أمين المكتبة (
document_idمضبوط): استرداد بيانات وصفية المستند من أمين المكتبة أولاً — وهذا يعطيناkind(نوع MIME) الذي تم تسجيله في وقت الرفع. ثم استرداد محتوى المستند. مكالمتان لأمين المكتبة، ولكن استرداد البيانات الوصفية خفيف الوزن. - المسار المضمن (التوافق مع الإصدارات السابقة،
dataمضبوط): لا توجد بيانات وصفية متاحة على الرسالة. استخدمpython-magicلاكتشاف التنسيق من بايت المحتوى كحل احتياطي.
لا توجد تغييرات ضرورية في مخطط Document — يقوم أمين المكتبة بالفعل بتخزين نوع MIME.
الهندسة المعمارية
خدمة universal-decoder واحدة تقوم بما يلي:
- تتلقى رسالة
Document(مضمنة أو عبر مرجع أمين المكتبة) - إذا كان مسار أمين المكتبة: استرداد بيانات وصفية المستند (الحصول على نوع MIME)، ثم استرداد المحتوى. إذا كان المسار المضمن: اكتشاف التنسيق من بايت المحتوى.
- تستدعي
partition()لاستخراج العناصر - تجميع العناصر: حسب الصفحة للتنسيقات القائمة على الصفحات، حسب استراتيجية القسم المحددة للتنسيقات غير القائمة على الصفحات
- لكل صفحة/قسم:
- توليد معرف
urn:page:{uuid}أوurn:section:{uuid} - تجميع نص الصفحة: النص العادي، والجداول كـ HTML، الصور يتم تخطيها
- حساب إزاحة الأحرف لكل عنصر داخل نص الصفحة
- حفظ في أمين المكتبة كوثيقة فرعية
- حساب ثلاثيات تتبع مع بيانات وصفية موضعية
- إرسال
TextDocumentإلى وحدة تقسيم (chunker)
- توليد معرف
- لكل عنصر صورة:
- توليد معرف
urn:image:{uuid} - حفظ بيانات الصورة في أمين المكتبة كوثيقة فرعية
- حساب ثلاثيات تتبع (مخزنة فقط، ولا يتم إرسالها إلى وحدة تقسيم)
- توليد معرف
معالجة التنسيقات
| التنسيق | نوع MIME | قائم على الصفحات | ملاحظات |
|---|---|---|---|
| application/pdf | نعم | تجميع حسب الصفحة | |
| DOCX | application/vnd.openxmlformats... | لا | يستخدم استراتيجية القسم |
| PPTX | application/vnd.openxmlformats... | نعم | تجميع حسب الشريحة |
| XLSX/XLS | application/vnd.openxmlformats... | نعم | تجميع حسب ورقة العمل |
| HTML | text/html | لا | يستخدم استراتيجية القسم |
| Markdown | text/markdown | لا | يستخدم استراتيجية القسم |
| Plain | text/plain | لا | يستخدم استراتيجية القسم |
| CSV | text/csv | لا | يستخدم استراتيجية القسم |
| RST | text/x-rst | لا | يستخدم استراتيجية القسم |
| RTF | application/rtf | لا | يستخدم استراتيجية القسم |
| ODT | application/vnd.oasis... | لا | يستخدم استراتيجية القسم |
| TSV | text/tab-separated-values | لا | يستخدم استراتيجية القسم |
بيانات التتبع
تسجل كل صفحة/قسم كيان بيانات وصفية موضعية على شكل ثلاثيات تتبع في الرسم البياني المصدر (GRAPH_SOURCE)، مما يتيح التتبع التام من ثلاثيات KG (رسم بياني للمعرفة) إلى مواضع المستند المصدر.
الحقول الحالية (موجودة بالفعل في provenance/triples.py)
page_number— رقم الصفحة/الورقة/الشريحة (مرقم 1، فقط للتنسيقات القائمة على الصفحات)char_offset— إزاحة الحرف لهذه الصفحة/القسم داخل نص المستند بالكاملchar_length— طول الحرف لنص هذه الصفحة/القسم
حقول جديدة (قم بتوسيع provenance/triples.py)
mime_type— تنسيق المستند الأصلي (على سبيل المثال،application/pdf)element_types— قائمةunstructuredلفئات العناصر الموجودة في هذه الصفحة/القسم (على سبيل المثال، "العنوان،النص السردي،الجدول")table_count— عدد الجداول في هذه الصفحة/القسمimage_count— عدد الصور في هذه الصفحة/القسم
يتطلب هذا بناء جملة جديد لأسماء النطاقات:
TG_SECTION_TYPE = "https://trustgraph.ai/ns/Section"
TG_IMAGE_TYPE = "https://trustgraph.ai/ns/Image"
TG_ELEMENT_TYPES = "https://trustgraph.ai/ns/elementTypes"
TG_TABLE_COUNT = "https://trustgraph.ai/ns/tableCount"
TG_IMAGE_COUNT = "https://trustgraph.ai/ns/imageCount"
مخطط URN للصورة: urn:image:{uuid}
(TG_MIME_TYPE موجود بالفعل.)
نوع الكيان الجديد
بالنسبة للتنسيقات غير القائمة على الصفحات (DOCX، HTML، Markdown، إلخ) حيث يقوم جهاز فك الترميز بإخراج المستند بأكمله كقسم واحد بدلاً من التقسيم حسب الصفحة، يحصل الكيان على نوع جديد:
TG_SECTION_TYPE = "https://trustgraph.ai/ns/Section"
هذا يميز الأقسام عن الصفحات عند الاستعلام عن التتبع:
| الكيان | النوع | متى يتم استخدامه |
|---|---|---|
| Document | tg:Document |
الملف الذي تم رفعه أصلاً |
| Page | tg:Page |
تنسيقات قائمة على الصفحات (PDF، PPTX، XLSX) |
| Section | tg:Section |
تنسيقات غير قائمة على الصفحات (DOCX، HTML، MD، إلخ) |
| Image | tg:Image |
صور مضمنة (مخزنة، وغير معالجة) |
| Chunk | tg:Chunk |
إخراج وحدة تقسيم المستند |
| Subgraph | tg:Subgraph |
إخراج KG |
يتم تعيين النوع بواسطة جهاز فك الترميز بناءً على ما إذا كان يقوم بتجميع حسب الصفحة أم أنه يصدر قسمًا كاملاً للمستند. تكتسب provenance/triples.py معلمة اختيارية section — عندما تكون true، يتم تصنيف الكيان على أنه tg:Section بدلاً من tg:Page.
سلسلة التتبع الكاملة
ثلاثية KG
→ subgraph (تتبع الاستخراج)
→ chunk (char_offset، char_length داخل الصفحة)
→ page/section (page_number، char_offset، char_length داخل المستند، mime_type، element_types)
→ document (الملف الأصلي في أمين المكتبة)
كل رابط هو مجموعة من الثلاثيات في الرسم البياني المسمى GRAPH_SOURCE.
تكوين الخدمة
وسيطات سطر الأوامر:
--strategy استراتيجية التقسيم: auto, hi_res, fast (افتراضي: auto)
--languages قائمة مفصولة بفواصل برموز لغة OCR (افتراضي: eng)
--section-strategy استراتيجية تجميع القسم: whole-document, heading, element-type,
count, size (افتراضي: whole-document)
--section-element-count عدد العناصر لكل قسم (افتراضي: 20)
--section-max-size الحد الأقصى لحجم القسم (بالأحرف) (افتراضي: 4000)
التنفيذ
خدمة universal-decoder واحدة تقوم بما يلي:
- تتلقى رسالة
Document(مضمنة أو عبر مرجع أمين المكتبة) - إذا كان مسار أمين المكتبة: استرداد بيانات وصفية المستند (الحصول على نوع MIME)، ثم استرداد المحتوى. إذا كان المسار المضمن: اكتشاف التنسيق من بايت المحتوى.
- تستدعي
partition()لاستخراج العناصر - تجميع العناصر: حسب الصفحة للتنسيقات القائمة على الصفحات، حسب استراتيجية القسم المحددة للتنسيقات غير القائمة على الصفحات
- لكل صفحة/قسم:
- توليد معرف
urn:page:{uuid}أوurn:section:{uuid} - تجميع نص الصفحة: النص العادي، والجداول كـ HTML، الصور يتم تخطيها
- حساب إزاحة الأحرف لكل عنصر داخل نص الصفحة
- حفظ في أمين المكتبة كوثيقة فرعية
- حساب ثلاثيات تتبع مع بيانات وصفية موضعية
- إرسال
TextDocumentإلى وحدة تقسيم (chunker)
- توليد معرف
- لكل عنصر صورة:
- توليد معرف
urn:image:{uuid} - حفظ بيانات الصورة في أمين المكتبة كوثيقة فرعية
- حساب ثلاثيات تتبع (مخزنة فقط، ولا يتم إرسالها إلى وحدة تقسيم)
- توليد معرف
معالجة التنسيقات
| التنسيق | نوع MIME | قائم على الصفحات | ملاحظات |
|---|---|---|---|
| application/pdf | نعم | تجميع حسب الصفحة | |
| DOCX | application/vnd.openxmlformats... | لا | يستخدم استراتيجية القسم |
| PPTX | application/vnd.openxmlformats... | نعم | تجميع حسب الشريحة |
| XLSX/XLS | application/vnd.openxmlformats... | نعم | تجميع حسب ورقة العمل |
| HTML | text/html | لا | يستخدم استراتيجية القسم |
| Markdown | text/markdown | لا | يستخدم استراتيجية القسم |
| Plain | text/plain | لا | يستخدم استراتيجية القسم |
| CSV | text/csv | لا | يستخدم استراتيجية القسم |
| RST | text/x-rst | لا | يستخدم استراتيجية القسم |
| RTF | application/rtf | لا | يستخدم استراتيجية القسم |
| ODT | application/vnd.oasis... | لا | يستخدم استراتيجية القسم |
| TSV | text/tab-separated-values | لا | يستخدم استراتيجية القسم |
بيانات التتبع
تسجل كل صفحة/قسم كيان بيانات وصفية موضعية على شكل ثلاثيات تتبع في الرسم البياني المصدر (GRAPH_SOURCE)، مما يتيح التتبع التام من ثلاثيات KG (رسم بياني للمعرفة) إلى مواضع المستند المصدر.
الحقول الحالية (موجودة بالفعل في provenance/triples.py)
page_number— رقم الصفحة/الورقة/الشريحة (مرقم 1، فقط للتنسيقات القائمة على الصفحات)char_offset— إزاحة الحرف لهذه الصفحة/القسم داخل نص المستند بالكاملchar_length— طول الحرف لنص هذه الصفحة/القسم
حقول جديدة (قم بتوسيع provenance/triples.py)
mime_type— تنسيق المستند الأصلي (على سبيل المثال،application/pdf)element_types— قائمةunstructuredلفئات العناصر الموجودة في هذه الصفحة/القسم (على سبيل المثال، "العنوان،النص السردي،الجدول")table_count— عدد الجداول في هذه الصفحة/القسمimage_count— عدد الصور في هذه الصفحة/القسم
يتطلب هذا بناء جملة جديد لأسماء النطاقات:
TG_SECTION_TYPE = "https://trustgraph.ai/ns/Section"
TG_IMAGE_TYPE = "https://trustgraph.ai/ns/Image"
TG_ELEMENT_TYPES = "https://trustgraph.ai/ns/elementTypes"
TG_TABLE_COUNT = "https://trustgraph.ai/ns/tableCount"
TG_IMAGE_COUNT = "https://trustgraph.ai/ns/imageCount"
مخطط URN للصورة: urn:image:{uuid}
(TG_MIME_TYPE موجود بالفعل.)
نوع الكيان الجديد
بالنسبة للتنسيقات غير القائمة على الصفحات (DOCX، HTML، Markdown، إلخ) حيث يقوم جهاز فك الترميز بإخراج المستند بأكمله كقسم واحد بدلاً من التقسيم حسب الصفحة، يحصل الكيان على نوع جديد:
TG_SECTION_TYPE = "https://trustgraph.ai/ns/Section"
هذا يميز الأقسام عن الصفحات عند الاستعلام عن التتبع:
| الكيان | النوع | متى يتم استخدامه |
|---|---|---|
| Document | tg:Document |
الملف الذي تم رفعه أصلاً |
| Page | tg:Page |
تنسيقات قائمة على الصفحات (PDF، PPTX، XLSX) |
| Section | tg:Section |
تنسيقات غير قائمة على الصفحات (DOCX، HTML، MD، إلخ) |
| Image | tg:Image |
صور مضمنة (مخزنة، وغير معالجة) |
| Chunk | tg:Chunk |
إخراج وحدة تقسيم المستند |
| Subgraph | tg:Subgraph |
إخراج KG |
يتم تعيين النوع بواسطة جهاز فك الترميز بناءً على ما إذا كان يقوم بتجميع حسب الصفحة أم أنه يصدر قسمًا كاملاً للمستند. تكتسب provenance/triples.py معلمة اختيارية section — عندما تكون true، يتم تصنيف الكيان على أنه tg:Section بدلاً من tg:Page.
سلسلة التتبع الكاملة
ثلاثية KG
→ subgraph (تتبع الاستخراج)
→ chunk (char_offset، char_length داخل الصفحة)
→ page/section (page_number، char_offset، char_length داخل المستند، mime_type، element_types)
→ document (الملف الأصلي في أمين المكتبة)
كل رابط هو مجموعة من الثلاثيات في الرسم البياني المسمى GRAPH_SOURCE.
التثبيت
تأكد من أن لديك Python 3.6+ مثبتًا.
pip install unstructured
الاستخدام
from unstructured.partition.auto import partition
# مثال على ملف PDF
pdf = partition(filename="path/to/your/document.pdf")
# مثال على ملف HTML
html = partition(filename="path/to/your/document.html")
سيقوم هذا بتقسيم المستند إلى عناصر مثل العناوين والنصوص والجداول والصور. يمكنك بعد ذلك معالجة هذه العناصر بشكل منفصل.
الاعتبارات
- الأداء: قد يكون تقسيم المستندات الكبيرة أمرًا مكلفًا من الناحية الحسابية. ضع في اعتبارك استخدام التخزين المؤقت أو المعالجة المتوازية للمستندات الكبيرة جدًا.
- الدقة: دقة التقسيم تعتمد على تنسيق المستند. قد تتطلب بعض المستندات معالجة خاصة للحصول على أفضل النتائج.
المساهمة
إذا كنت ترغب في المساهمة في unstructured، فيرجى إرسال طلب سحب. نحن نقبل المساهمات من جميع أنواع.
الترخيص
unstructured مرخصة بموجب رخصة Apache 2.0.