GPT
F

functionary-small-v3.2

קוד פתוח

meetkaimit2024-08-06

  • tensorboard
  • safetensors
  • llama
  • custom_code

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

  • 8Bפרמטרים
  • 131,072טוקנים בהקשר
  • 15.0 GBמשקל הקבצים
  • 3,271הורדות בחודש

מה זה

במקום עוד מודל כללי, לקחו כאן את Llama 3.1 8B Instruct ואימנו אותו ספציפית על היכולת לעבוד עם כלים ופלאגינים חיצוניים. אתם מעבירים לו הגדרות פונקציה במבנה של JSON Schema, ממש בדומה למה שמוכר מהממשקים של OpenAI, והוא מייצר קריאות תקינות, מנתח את התוצאות שחוזרות אליו ומנסח תשובה מבוססת עליהן.

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

מתאים ל

  • סוכן שמפעיל שאילתות למסד

    יודע לפרק בקשות משתמש לקריאות API ופרמטרים מובנים בלי ליפול על פורמט פלט שגוי.

  • שילוב כלים מקבילי

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

  • סביבות הרצת קוד מקומיות

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

איפה זה נופל

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

שאלות
נפוצות

האם הוא יכול להחליט לא להפעיל אף פונקציה?

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

איך מעבירים לו את הפונקציות בפועל?

מגדירים אותן באובייקט JSON Schema רגיל. שרת ה־vLLM של הפרויקט ממיר אותן לבד להגדרות דמויות TypeScript בפרומפט המערכת.

איך מריצים

כדי להריץ אותו בפורמט bfloat16 המקורי, 15 גיגה בייט של קבצים דורשים כרטיס מסך עם לפחות 16 עד 24 גיגה זיכרון גרפי, כמו RTX 3090 או A10G. המפתחים ממליצים להשתמש בשרת ה־vLLM הייעודי שלהם, שכבר מטפל בהמרת הסכמות לפורמט הפרומפט ומשתמש בתבנית Jinja מוכנה כדי להחזיר JSON מסודר.

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

pip install -U huggingface_hub
hf download meetkai/functionary-small-v3.2

הרישיון

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

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

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