GPT
C

colqwen2-v1.0

קוד פתוח

vidoreapache-2.02024-11-03

  • colpali
  • safetensors
  • vidore-experimental
  • vidore
  • sentence-transformers

הוא מאנדקס דפי מסמכים ישירות מתמונות לפי המבנה החזותי שלהם בלי לחלץ טקסט בנפרד. זה פתרון למי שמחפש שליפת מידע מדויקת מקבצי PDF מורכבים.

  • 86.5 MBמשקל הקבצים
  • 465,539הורדות בחודש
  • 121לייקים

מה זה

מדובר במודל אחזור ויזואלי שמבוסס על Qwen2-VL-2B ומשתמש בגישת Late Interaction בסגנון ColBERT. במקום להסתמך על OCR כדי להוציא טקסט ואז לקוות שהטבלאות והגרפים לא נשברו בדרך, הוא מייצר ייצוג מרובה וקטורים ישירות מטקסט ומתמונות של עמודי המסמך. ארכיטקטורת הבסיס מקבלת רזולוציה דינמית ולא דוחסת תמונות בכוח, כשהגבול העליון מוגדר לעד 768 פאצ'ים של תמונה לדף.

האימון שלו נשען על 127,460 צמדי שאילתה ועמוד, מתוכם 63 אחוזים ממאגרי מידע אקדמיים פתוחים ועוד 37 אחוזים שנוצרו מסריקת מסמכי PDF מהרשת עם שאלות סינתטיות שנבנו על ידי Claude 3 Sonnet. ההבדל הגדול בינו לבין מודלי וקטור יחיד רגילים הוא היכולת לשמור על הקשר ויזואלי מדויק של פריסת הדף בלי לאבד פרטים שמופיעים רק בתוך תרשימים.

מתאים ל

  • אחזור דוחות וטבלאות

    שליפת עמודים עם נתונים מתוך קובצי PDF שבהם מבנה הטבלה הולך לאיבוד בחילוץ טקסט רגיל.

  • חיפוש במצגות ותרשימים

    התאמת שאילתת טקסט ישירות לגרפים ותמונות מורכבות בעמוד בלי לעבור דרך שכבת OCR.

  • מנוע חיפוש רב וקטורי

    בניית אינדקס מסמכים מבוסס ColBERT ששומר על רמת פירוט גבוהה לכל אזור בדף בנפרד.

איפה זה נופל

דאטה האימון שלו היה כולו באנגלית בלבד במטרה לבחון הכללה לשפות אחרות. אם אתם בונים מערכת למסמכים בעברית, קחו בחשבון שהוא לא אומן עליהם ישירות ואין ערובה לשליפה מדויקת. הוא מתמקד בעיקר במסמכי PDF ועלול להתקשות עם סוגי מסמכים אחרים.

מעבר לזה, המודל מחזיר מספר רב של וקטורים לכל עמוד במקום וקטור יחיד. רוב מסדי הנתונים הווקטוריים הסטנדרטיים לא תומכים בארכיטקטורה הזו מהקופסה, וזה דורש עבודת פיתוח והתאמה כדי להרים אינדקס כזה בפרודקשן.

אותה משפחה

colqwen2 יצא ב־2 גרסאות שיש להן עמוד כאן. אלה האחרות, לפי כמה מורידים אותן.

שאלות
נפוצות

האם אפשר להשתמש במודל הזה למסמכים בעברית?

דאטה האימון הרשמי נבנה באנגלית בלבד. מודל הבסיס כולל שפות נוספות מהאימון המקדים שלו, אבל החוקרים לא אימנו אותו על עברית במפורש ולכן חייבים לבדוק את הביצועים בפועל לפני שמסתמכים עליו.

איך אפשר להקטין את נפח האחסון של האינדקס?

בשימוש דרך Sentence Transformers אפשר להגדיר סינון שמשאיר רק את הטוקנים של התמונה באמצעות זיהוי הטוקן הייעודי. המהלך הזה מקצץ בערך בחצי את גודל האינדקס שנשמר על הדיסק.

האם יש הבדלים בתוצאות לפי גרסת הספרייה שמריצים?

כן. בגרסאות colpali-engine מ־0.3.13 הוסרה הקידומת של השאילתה שהמודל אומן איתה במקור. המימוש של Sentence Transformers שומר על הפורמט המקורי, ולכן יש הבדלים קלים בווקטורים שנוצרים בין הספריות.

איך מריצים

המשקל של הקבצים כאן קטן מאוד, 86.5 מגה בייט בלבד, כי מדובר במתאמי LoRA שיושבים על מודל הבסיס בגודל שני מיליארד פרמטרים. כדי להריץ את זה בפועל צריך לטעון את הבסיס יחד עם המתאמים באמצעות ספריית colpali-engine מגרסה 0.3.4 ומעלה או דרך Sentence Transformers מגרסה 6.0.0 ומעלה עם תמיכה בתמונות, לצד ספריית transformers בגרסה חדשה מ־4.46.1.

באימון השתמשו בפורמט bfloat16 על שמונה מעבדים גרפיים במקביל עם אופטימייזר מסוג paged_adamw_8bit. בגלל שמדובר באחזור מרובה וקטורים, אפשר לסנן רק את הטוקנים של התמונה כדי לחתוך בחצי את נפח האינדקס שנשמר, אבל עדיין תצטרכו תשתית שיודעת לטפל בשליפה מסוג Late Interaction ולא מאגר וקטורי פשוט.

pip install -U huggingface_hub
hf download vidore/colqwen2-v1.0

הרישיון

מודל הבסיס מופץ ברישיון Apache 2.0 והמתאמים שלו תחת רישיון MIT. שניהם רישיונות קוד פתוח מתירניים שמאפשרים שימוש מסחרי מלא, שינוי והפצה, כל עוד אתם שומרים על הודעות זכויות היוצרים של היוצרים המקוריים.

  • שימוש מסחרי
  • שינוי הקוד
  • הפצה מחדש
  • שימוש בפטנטים

הרישיון המלא בעמוד המודל ↗