GPT
D

distil-medium.en

קוד פתוח

distil-whispermit2023-10-24

  • transformers
  • pytorch
  • jax
  • tensorboard
  • onnx

גרסה מזוקקת ומהירה של Whisper לאנגלית בלבד, שרצה פי 6.8 מהר יותר מגרסאות ה־large. היא מתאימה למי שצריך תמלול מדויק בלי לשלם בזמן עיבוד ובמשאבים כבדים.

  • 394Mפרמטרים
  • 12.9 GBמשקל הקבצים
  • 5,733הורדות בחודש
  • 127לייקים

מה זה

המודל פותח כדי לפתור את צוואר הבקבוק המרכזי בתמלול עם Whisper, שהוא זמן הריצה של המפענח (decoder). בזמן שהמקודד רץ פעם אחת על כל קטע קול, המפענח חוזר על עצמו עבור כל מילה שנפלטת. החוקרים לקחו את הארכיטקטורה של whisper-medium.en, הקפיאו את המקודד המקורי, והשאירו במפענח רק שתי שכבות מתוך הטווח המקורי.

התוצאה היא 394 מיליון פרמטרים שמציגים מהירות גבוהה פי 6.8 בהשוואה ל־large-v2, עם ירידה מינימלית בדיוק. בבדיקות של קטעים קצרים שיעור שגיאות המילים (WER) עומד על 11.1, ובקטעים ארוכים על 12.4, פער של כאחוז בודד מול מודלי המקור הגדולים, תוך צמצום משמעותי של תופעת ההזיות בזכות סינון הנתונים באימון.

מתאים ל

  • תמלול פודקאסטים באנגלית

    אלגוריתם החיתוך מריץ קבצים ארוכים במהירות גבוהה פי תשעה מהאלגוריתם הרגיל של OpenAI.

  • עוזר פענוח ל־Whisper

    מתאים לשימוש בשיטת speculative decoding לקבלת תוצאות זהות למודל הגדול בחצי מזמן הריצה.

  • תמלול מקומי ב־Whisper.cpp

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

איפה זה נופל

החיסרון הברור והמיידי הוא השפה: המודל מוגבל לאנגלית בלבד, ואי אפשר להשתמש בו לעברית או לשפות אחרות. מעבר לזה, כדי לתמלל קטעים ארוכים מ־30 שניות חייבים להגדיר אלגוריתם חיתוך (chunking) באורך 15 שניות, אחרת פוגעים בדיוק או במהירות העיבוד. למרות שהדיוק קרוב לגרסאות הגדולות, שיעור השגיאות שלו עדיין גבוה יותר מזה של distil-large-v3, ולכן תמלול טכני מורכב עלול לדרוש בדיקה ידנית מוקפדת.

שאלות
נפוצות

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

לא. המודל אומן אך ורק על השפה האנגלית ומיועד להחלפה של דגמי whisper.en. הוא לא יזהה עברית או שפות נוספות.

במה הוא שונה מגרסת distil-small.en הקטנה יותר?

הוא גדול יותר עם 394 מיליון פרמטרים לעומת 166 מיליון, אבל משיג דיוק גבוה יותר (11.1 WER לעומת 12.1 בקטעים קצרים) ובפועל אפילו מהיר ממנו ביחס לזמן שיהוי.

איך מריצים

ההפעלה מתבצעת ישירות דרך ספריית transformers מגרסה 4.35 ומעלה, בסביבת פייתון רגילה עם תמיכה ב־pipeline לתמלול. לקבלת ביצועים מקסימליים אפשר להפעיל את Flash-Attention 2 או להמיר את המודל ל־BetterTransformer של Optimum. למי שרוצה להריץ מקומית על מחשב אישי או מעבדי מק, קיימים משקלים ייעודיים ל־Whisper.cpp שרצים מעולה על מעבדי Apple Silicon, לצד אינטגרציה מלאה ל־Rust דרך ספריית Candle ו־Transformers.js לדפדפן.

במשקל של 394 מיליון פרמטרים, כרטיס מסך בסיסי עם 4 עד 8 גיגה זיכרון מריץ אותו בקלות. אם אתם מעבדים היקפים קטנים מאוד של אודיו פעם בכמה ימים, עדיף להשתמש ב־API מנוהל של צד שלישי במקום לתחזק שרת, אבל לתהליכים קבועים של נפחי תמלול באנגלית, הרצה עצמית כאן זולה ופשוטה מאוד.

from transformers import pipeline

pipe = pipeline("automatic-speech-recognition", model="distil-whisper/distil-medium.en")
print(pipe("שלום"))

הרישיון

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

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

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