GPT
C

CodeQwen1.5-7B

קוד פתוח

Qwenother2024-04-15

  • transformers
  • safetensors
  • qwen2
  • text-generation
  • pretrained

יש כאן גם סקירה על Qwen עצמו.

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

  • 7.3Bפרמטרים
  • 65,536טוקנים בהקשר
  • 13.5 GBמשקל הקבצים
  • 1,377הורדות בחודש

מה זה

מדובר במודל בסיס מסוג decoder-only שאומן על שלושה טריליון טוקנים של קוד, ותומך ב־92 שפות תכנות שונות. הוא מבוסס על ארכיטקטורת Qwen2 וכולל Group Query Attention כדי לאפשר הסקת מסקנות מהירה וחסכונית יותר בזיכרון, דבר משמעותי כשעובדים עם רצפים ארוכים.

היתרון המרכזי שלו מול מודלים אחרים בגודל 7B הוא השילוב בין אימון ייעודי למשימות כמו text-to-SQL ותיקון באגים, לבין יכולת לעבד קונטקסט של 65,536 טוקנים. זה אומר שאפשר להזין לו קבצי קוד שלמים או תיעוד נרחב בלי לחתוך אותם מראש, כל עוד זוכרים שמדובר במודל בסיס שדורש התאמה ולא בצ'אטבוט שמוכן לשיחה.

מתאים ל

  • השלמת קוד בקבצים גדולים

    חלון של 64K טוקנים מאפשר להזין פרויקטים שלמים ולבצע code infilling מדויק.

  • המרת טקסט לשאילתות SQL

    הוא אומן במיוחד על text-to-SQL ומסוגל לקבל סכמות מסדי נתונים מורכבות.

  • בסיס לכוונון פנימי בחברה

    מודל בסיס מעולה בנפח 7B שמתאים ל־finetuning על קוד פרטי בארגון.

איפה זה נופל

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

אותה משפחה

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

שאלות
נפוצות

האם אפשר להשתמש בו ישירות כמו ב־Copilot או בצ'אט?

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

למה מופיעה לי שגיאה כשאני מנסה לטעון אותו עם transformers?

הארכיטקטורה של Qwen2 דורשת גרסה מעודכנת של הספרייה. התקנה של transformers בגרסה 4.37.0 ומעלה פותרת את שגיאת ה־KeyError שמתרחשת בסביבות ישנות.

איך מריצים

כדי להריץ אותו צריך כרטיס מסך עם לפחות 16GB זיכרון בשביל המשקלים עצמם שתופסים כ־13.5GB בפורמט bfloat16, ועוד זיכרון נוסף בשביל ה־KV cache אם מתכוונים לנצל את מלוא חלון ההקשר. חובה להתקין ספריית transformers בגרסה 4.37.0 ומעלה, אחרת תקבלו שגיאת KeyError על ארכיטקטורת qwen2.

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

from transformers import pipeline

pipe = pipeline("text-generation", model="Qwen/CodeQwen1.5-7B")
print(pipe("שלום"))

הרישיון

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

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