یه مشکل اساسی تو پایپلاینهای RAG، پردازش داکیومنتهای پیچیده مثل PDF هست. ابزارهای عادی متن رو به صورت خطی و بدون ساختار استخراج میکنن که باعث میشه کلی از کانتکست مثل جداول، لیستها و ترتیب خوندن متن از بین بره. اینجاست که مدل جدید و اوپنسورس IBM یعنی Granite-Docling وارد میشه تا این مشکل رو حل کنه.
این مدل یه Vision-Language Model یا VLM خیلی کوچیک با حجم 258M پارامتره که برای فهم کامل ساختار داکیومنتها طراحی شده. کارش اینه که به جای استخراج متن خام، ساختار سند رو با تمام جزئیاتش مثل جداول، فرمولهای ریاضی، بلوکهای کد و لیاوت صفحه حفظ میکنه. این مدل بر اساس معماری Granite 3 و انکودر بصری SigLIP2 ساخته شده و تحت لایسنس Apache 2.0 در دسترسه.
نقطهی قوت اصلی Granite-Docling در فرمت خروجی منحصربهفردش به اسم DocTags هست. این یه زبان نشانهگذاریه که خود IBM توسعه داده تا تمام المانهای صفحه رو به صورت ساختاریافته توصیف کنه. DocTags محتوای متنی رو از ساختار سند جدا میکنه و روابط بین المانها، مثلاً اینکه یک کپشن مربوط به کدوم شکله، رو هم مشخص میکنه. این فرمت برای پردازش توسط LLM ها بهینه شده و میشه بهراحتی اون رو به Markdown، JSON یا HTML تبدیل کرد.
باید بین Granite-Docling و کتابخونهی Docling تفاوت قائل شد. Docling یه کتابخونه پایتون و یه پایپلاین کامله که کل فرآیند تبدیل سند رو مدیریت میکنه. میتونه مدلهای مختلفی رو ارکستر کنه. در مقابل، Granite-Docling یه مدل خاص و تخصصی برای همین کاره که میتونه به عنوان موتور اصلی توی این پایپلاین استفاده بشه. این ترکیب، یه راهکار end-to-end برای آمادهسازی داکیومنتها برای RAG فراهم میکنه.
برای کاربردهای RAG، این رویکرد یه تغییر بازیه. وقتی شما داکیومنت رو با حفظ ساختارش به Markdown تبدیل میکنید، فرآیند chunking خیلی هوشمندانهتر انجام میشه. کتابخونهی Docling یه ابزار به اسم HybridChunker داره که chunk هایی با کانتکست بهتر تولید میکنه. این یعنی امبدینگهای باکیفیتتر، بازیابی دقیقتر و در نهایت، کاهش چشمگیر هذیانگویی یا hallucination در پاسخهای مدل.
به نظر من، ارزش اصلی Granite-Docling در اندازهی کوچیک و تخصص بالای اونه. دیگه لازم نیست برای فهم ساختار سند به سراغ مدلهای غولپیکر چند ده میلیاردی بریم. این مدل نشون میده که با یه معماری درست و دیتاست تمیز، میشه یه مدل کمحجم و کارآمد ساخت که یه مشکل مشخص رو به خوبی حل کنه. فرمت DocTags هم یه ایدهی خیلی خوبه چون یه لایهی میانی استاندارد برای نمایش ساختار داکیومنت ایجاد میکنه که میتونه اساس خیلی از تسکهای downstream باشه. این مدل همچنین قابلیتهای آزمایشی برای زبانهای غیرلاتین مثل چینی، ژاپنی و عربی هم داره که نشوندهندهی مسیر توسعهی آیندهشه.
💻 دمو
🛠 Join @LLMEngineers Community
Post #233
1.78K
- 👍 7
- ❤ 2