GPT
B

bagel-dpo-34b-v0.2

קוד פתוח

jondurbinother2024-01-01

  • transformers
  • safetensors
  • llama
  • text-generation
  • conversational

שילוב בין בסיס Yi-34B לחלון עצום של 200,000 טוקנים ואימון DPO נטול צנזורה כמעט לחלוטין. הוא פונה למי שמחפש מודל שיענה על כל הנחיה בלי להתחמק ומסוגל לקרוא מסמכי ענק.

  • 34Bפרמטרים
  • 200,000טוקנים בהקשר
  • 64.1 GBמשקל הקבצים
  • 8,450הורדות בחודש

מה זה

מדובר בכיוונון עדין על גבי Yi-34B-200K שמשתמש במתודולוגיית bagel, שזה בעצם ערבוב של עשרות מאגרי מידע שונים: החל מפתרון קוד בפייתון ושאילתות SQL, דרך הבנת הנקרא ומתמטיקה, ועד למשחקי תפקידים ותסריטים. המטרה היתה ליצור מודל פחות משעמם שלא נתקע על תבניות קבועות.

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

בנוסף, האימון נעשה במקביל על ארבעה פורמטים שונים של פרומפטים כמו Vicuna, Alpaca, Llama-2 וגרסה מותאמת של ChatML. זה אומר שהוא מגיב טוב למגוון ניסוחים ולא נשבר אם שכחתם סוגר מיוחד בטמפלייט.

מתאים ל

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

    אידאלי לניתוח חולשות וטקסטים זדוניים בזכות שלב ה־DPO שמנטרל סירובים אוטומטיים של המודל.

  • קריאת מסמכים ארוכים

    מתאים להזנת קבצי ענק וקוד בזכות תמיכה מובנית בחלון הקשר של עד 200,000 טוקנים.

  • כתיבה יוצרת ללא מגבלות

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

איפה זה נופל

הסרת הצנזורה היא חרב פיפיות. היוצר השתמש במאגר toxic-dpo שמכיל תוכן קיצוני שנוצר במקור על ידי Llama-2-70b, והכרטיס מודה מפורשות שהדבר עשוי להוביל לתשובות שגובלות בפלילים או בפגיעה ממשית. אסור לחבר אותו לשום שירות לקוחות או מוצר ציבורי בלי שכבת הגנה חיצונית קשיחה משלכם.

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

אותה משפחה

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

שאלות
נפוצות

האם המודל יסרב לבקשות שנויות במחלוקת?

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

איזה פורמט פרומפט צריך לשלוח לו?

הוא גמיש במיוחד. האימון שילב פורמטים של Vicuna, Llama-2, Alpaca ו־ChatML, כך שהוא יבין את רוב המבנים הנפוצים. שימו לב רק שאם אתם בוחרים ב־ChatML, המימוש כאן שונה במעט מהסטנדרט.

אפשר להריץ אותו על כרטיס מסך ביתי אחד?

במשקל המקורי שלו, שמגיע ל־64.1 ג'יגה-בייט, התשובה היא לא. תצטרכו שרת עם שני כרטיסי 48GB כמו A6000, או לחילופין לחפש גרסה שעברה קוונטיזציה שתקטין את צריכת הזיכרון לחומרה צנועה יותר.

איך מריצים

המשקל הכולל של הקבצים מגיע ל־64.1 ג'יגה-בייט בפורמט bfloat16. כדי להריץ אותו בלי קוונטיזציה תצטרכו לפחות שני כרטיסי Nvidia A6000 עם 48GB זיכרון כל אחד, כפי שממליץ היוצר עם אימג' מוכן של Docker ו־Text Generation Inference.

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

from transformers import pipeline

pipe = pipeline("text-generation", model="jondurbin/bagel-dpo-34b-v0.2")
print(pipe("שלום"))

הרישיון

הרישיון מוגדר כ־other ולא כקוד פתוח סטנדרטי מסוג MIT או Apache. מאחר שמדובר בכיוונון של Yi-34B ושימוש בנתונים שחלקם סינתטיים מ־GPT-4, השימוש המסחרי כפוף למגבלות של מודל הבסיס והתנאים של OpenAI, כך שלא הייתי משלב אותו במוצר מסחרי בלי בדיקה משפטית של תנאי השימוש.

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