GPT
N

NexusRaven-13B

קוד פתוח

Nexusflowllama22023-09-28

  • transformers
  • pytorch
  • llama
  • text-generation
  • text-generation-inference

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

  • 16,384טוקנים בהקשר
  • 24.2 GBמשקל הקבצים
  • 83הורדות בחודש
  • 106לייקים

מה זה

במקום לנסות לכתוב שירים או לנהל שיחות חולין, המודל הזה אומן לעבד חתימות של פונקציות בפייתון יחד עם דוקסטרינג, ולפלוט קריאה מדויקת להרצה. הבסיס שלו הוא CodeLlama-13b-Instruct, אבל הצוות ב־Nexusflow אימן אותו ללא דאטה שנלקח ממודלים קנייניים סגורים, כך שאין כאן חשש משימוש בפלטים של OpenAI.

במדדים שהמפתחים מציגים סביב כלי אבטחת מידע כמו VirusTotal וחיפושי CVE, הוא מגיע ל־95 אחוזי הצלחה לעומת 64 אחוזים שהציג GPT-4 באותו ניסוי. מול פונקציות חדשות לגמרי שלא הופיעו באימון, הוא מיישר קו עם היכולות של GPT-3.5 בהפעלה ללא דוגמאות מוקדמות.

מתאים ל

  • סוכני תוכנה ואוטומציות

    חיבור קוד קיים לפעולות API חיצוניות דרך ספריות כמו LangChain בלי להוציא מידע מחוץ לרשת המקומית.

  • הפעלת כלי אבטחה ברשת

    תרגום פקודות בשפה טבעית לשאילתות מדויקות עבור כלי מודיעין כמו VirusTotal ומאגרי פגיעויות.

  • שכבת ניתוב לפקודות פייתון

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

איפה זה נופל

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

אותה משפחה

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

שאלות
נפוצות

האם אפשר להשתמש בו לשיחה רגילה בצ'אט?

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

איך מונעים ממנו לבזבז משאבים על פלט מיותר?

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

אפשר לתת לו עשרות פונקציות בפרומפט אחד?

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

איך מריצים

כדי להריץ אותו במשקל מלא של bfloat16 תצטרכו כרטיס מסך עם לפחות 24 עד 30 ג'יגה־בייט של VRAM, כמו A10G גדול או A100. המשקל של הקבצים לבדו יושב על יותר מ־24 ג'יגה, כך שחומרה ביתית סטנדרטית תיחנק בלי קוונטיזציה.

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

from transformers import pipeline

pipe = pipeline("text-generation", model="Nexusflow/NexusRaven-13B")
print(pipe("שלום"))

הרישיון

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

  • שימוש מסחרי עד 700 מיליון משתמשים
  • שינוי הקוד
  • חובת ייחוס

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