GPT
N

nougat-latex-base

קוד פתוח

Normapache-2.02023-10-08

  • transformers
  • pytorch
  • safetensors
  • vision-encoder-decoder
  • image-text-to-text

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

  • 349Mפרמטרים
  • 2.6 GBמשקל הקבצים
  • 2,181הורדות בחודש
  • 83לייקים

מה זה

במקום לקחת מודל OCR כללי ולנסות להוציא ממנו תחביר מתמטי תקין, כאן לקחו את nougat-base ואימנו אותו ספציפית על מאגר im2latex-100k. המטרה מוגדרת מאוד: אתם נותנים לו תמונה של משוואה מתמטית, והוא פולט את הקוד המתאים להטמעה.

בגרסה המקורית של nougat גודל הקלט של התמונה גרם לעיוותים כשחתכו מקטעים קטנים של משוואות. כאן שינו את רזולוציית הקלט והוסיפו ריפוד מותאם, כך שהתמונה שמוזנת תואמת למבנה שעליו המודל התאמן בפועל. במבחנים מול pix2tex הוא מציג דיוק טוקנים של 0.623 לעומת 0.534, ומרחק עריכה מנורמל שנחתך כמעט בחצי, מ־0.103 ל־0.061. בפועל זה אומר פחות שגיאות תחביר ופחות צורך לתקן ידנית סוגריים וסימנים מיוחדים.

מתאים ל

  • המרת גזרי משוואות לקוד

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

  • דיגיטציה של ספרי לימוד

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

  • עיבוד מקדים למאמרים

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

איפה זה נופל

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

שאלות
נפוצות

האם אפשר להעלות אליו עמוד שלם מתוך מאמר מדעי?

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

למה התשובה נחתכת לי כשאני מנסה אותו בדפדפן?

הווידג'ט המקוון של Hugging Face סובל מבאג ידוע במודל הזה וקוטע פלטים ארוכים. המפתח ממליץ במפורש לא להסתמך על הבדיקה בדפדפן, אלא לשבט את המאגר ולהריץ את הקוד ישירות בסביבה שלכם.

איך מריצים

המשקל הכולל של הקבצים עומד על 2.6 גיגה-בייט עם 349 מיליון פרמטרים, כך שלא צריך שרת מפלצתי. כל כרטיס מסך בסיסי עם 6 עד 8 גיגה-בייט זיכרון יחזיק אותו בלי בעיה לצורך הסקת מסקנות, וגם מעבד חזק יריץ אותו בקצב סביר אם אתם לא מעבדים מיליוני עמודים ביום.

המפתח מציין שהתוסף של ה־API ב־Hugging Face נוטה לפעמים לחתוך את התשובות באמצע. עדיף להוריד את הקוד מהמאגר בגיטהאב, להתקין transformers מגרסה 4.34.0 ומעלה, ולהריץ אצלכם מקומית עם אסטרטגיית beam-search כדי לקבל את הדיוק המלא שנמדד בבדיקות.

from transformers import pipeline

pipe = pipeline("image-to-text", model="Norm/nougat-latex-base")
print(pipe("שלום"))

הרישיון

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

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

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