GPT
B

bge-code-v1

קוד פתוח

BAAIapache-2.02025-05-15

  • sentence-transformers
  • safetensors
  • qwen2
  • feature-extraction
  • sentence-similarity

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

  • 1.5Bפרמטרים
  • 32,768טוקנים בהקשר
  • 5.8 GBמשקל הקבצים
  • 4,537הורדות בחודש

מה זה

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

במבחני ביצועים הוא עוקף מודלים ייעודיים מתחרים. במבחן CoIR הוא השיג ממוצע של 81.77 לעומת 78.53 של Voyage-Code-003 ו־78.20 של CodeXEmbed-7B, למרות שהוא קטן מהם משמעותית. במבחן CodeRAG הוא הגיע לממוצע של 72.8, עם יתרון ברור במשימות מורכבות כמו DS-1000 שבודק ספריות פייתון למדע נתונים, ו־SWE-bench-Lite שמדמה תיקון תקלות מציאותיות מגיטהאב.

מתאים ל

  • חיפוש סמנטי במאגרי קוד

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

  • מערכות RAG לפיתוח תוכנה

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

  • אחזור רב לשוני לקוד

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

איפה זה נופל

למרות ההצלחה במרבית המבחנים, המודל מפגין חולשה במשימות ספציפיות. במבחן Text2SQL הוא קיבל ציון של 64.35, נמוך בהרבה מ־CodeXEmbed-2B שהגיע ל־78.42. אם המטרה שלכם היא להמיר שאלות בטקסט חופשי לשאילתות מסד נתונים, הוא מפגר מאחור. בנוסף, רשימת השפות המוצהרת ממוקדת באנגלית, סינית ושפות נפוצות אחרות, כך שאין שום הבטחה או בדיקה לגבי עברית.

שאלות
נפוצות

האם המודל יבין שאילתות חיפוש בעברית?

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

האם כדאי להשתמש בו לאחזור שאילתות SQL?

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

איך מריצים

המשקל הכולל של הקבצים עומד על 5.8 גיגה בייט בדיוק float32, כך שכל כרטיס מסך מודרני עם 8 עד 12 גיגה זיכרון יריץ אותו בקלות. שימוש ב־fp16 מאיץ את החישובים וחוסך זיכרון במחיר ירידה קלה בביצועים, לפי תיעוד המפתחים. אפשר לטעון אותו ישירות דרך ספריית FlagEmbedding או sentence-transformers.

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

from sentence_transformers import SentenceTransformer

m = SentenceTransformer("BAAI/bge-code-v1")
v = m.encode(["שלום עולם"])

הרישיון

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

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

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