GPT
S

sqlcoder-34b-alpha

קוד פתוח

defogcc-by-4.02023-11-14

  • transformers
  • pytorch
  • llama
  • text-generation
  • en

מודל קוד פתוח שממיר שאלות באנגלית לשאילתות SQL מורכבות. הוא נבנה במיוחד למשימה הזו ועוקף במבחני החברה אפילו את הגרסאות של GPT-4.

  • 16,384טוקנים בהקשר
  • 62.9 GBמשקל הקבצים
  • 84הורדות בחודש
  • 177לייקים

מה זה

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

לפי המבחנים של defog במסגרת ההערכה שלהם, הוא מגיע ל־84 אחוזי דיוק מול סכמות חדשות לגמרי שלא הופיעו באימון. זה מציב אותו מעל GPT-4 Turbo שנמדד שם על 82.5 אחוזים, ומשמעותית מעל מודלים פתוחים קטנים יותר. החוזק העיקרי שלו נרשם בשאילתות שמכילות קיבוץ ומיון נתונים, שבהן הוא מגרד את ה־90 אחוז ומעלה.

מתאים ל

  • המרת שאלות ל־SQL פנימי

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

  • ניתוח דאטה מקומי ומאובטח

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

  • סיוע לפיתוח ובניית שאילתות

    עזרה למפתחים בכתיבת שאילתות מורכבות של קיבוץ ומיון, תחומים שבהם המודל מפגין מעל 88 אחוזי דיוק.

איפה זה נופל

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

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

שאלות
נפוצות

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

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

מה צריך כדי להריץ אותו במחשב מקומי?

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

איך מריצים

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

אם אתם על חומרה צנועה יותר, אפשר לרדת לקוונטיזציה של 4 ביט או 8 ביט. במצב כזה הוא נכנס על כרטיסים צרכניים עם 20 גיגה זיכרון ומעלה כמו RTX 3090, RTX 4090 או מעבדי סדרת M2 של אפל. אם אין לכם את החומרה הזו זמינה או שאתם צריכים רק שאילתות בודדות פה ושם, כנראה יהיה זול ופשוט יותר לפנות ל־API חיצוני.

from transformers import pipeline

pipe = pipeline("text-generation", model="defog/sqlcoder-34b-alpha")
print(pipe("שלום"))

הרישיון

הקוד בריפו מוגדר תחת רישיון Apache 2, אבל משקלי המודל עצמם שוחררו תחת רישיון CC BY-SA 4.0, למרות שמטא-דאטה בעמוד מציין CC BY 4.0. המשמעות בפועל היא שמותר להשתמש בו לצרכים מסחריים, אבל אם אתם מאמנים אותו מחדש או משנים את המשקלים, אתם מחויבים לפרסם את התוצאה תחת אותו רישיון פתוח בדיוק.

  • שימוש מסחרי
  • שינוי הקוד
  • חובת ייחוס

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