צור קשר

בינה מלאכותית

Qwen2 - מודל השפה הרב-לשוני האחרון של עליבאבא מאתגר SOTA כמו Llama 3

mm
מְעוּדכָּן on
אבולוציה מ-Qwen1.5 ל-Qwen2

לאחר חודשים של ציפייה, צוות Qwen של עליבאבא חשף סוף סוף את Qwen2 - האבולוציה הבאה של סדרת מודל השפה העוצמתית שלהם. Qwen2 מייצג קפיצת מדרגה משמעותית, ומתגאה בהתקדמות מתקדמת שיכולה למקם אותו כאלטרנטיבה הטובה ביותר ל-Meta's. לאמה 3 דֶגֶם. בצלילה טכנית עמוקה זו, נחקור את תכונות המפתח, מדדי הביצועים והטכניקות החדשניות שהופכות את Qwen2 למתחרה אדירה בתחום מודלים של שפה גדולה (LLMs).

הגדלה: הצגת סדרת הדגמים של Qwen2

בבסיסה של Qwen2 טמונה מערך מגוון של דגמים המותאמים לדרישות חישוביות שונות. הסדרה כוללת חמישה גדלי דגמים שונים: Qwen2-0.5B, Qwen2-1.5B, Qwen2-7B, Qwen2-57B-A14B, וספינת הדגל Qwen2-72B. מגוון אפשרויות זה פונה לקשת רחבה של משתמשים, מאלה עם משאבי חומרה צנועים ועד לאלה עם גישה לתשתית חישובית מתקדמת.

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

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

שפות נתמכות על ידי מודלים של Qwen2, מסווגות לפי אזורים גיאוגרפיים

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

 

טבלה המשווה בין מודלים של Qwen2 לפי פרמטרים, פרמטרים שאינם מטמיעים, GQA, הטבעת עניבה ואורך הקשר

מפרטים של דגמי Qwen2 כולל פרמטרים, GQA ואורך ההקשר.

טיפול בהחלפת קוד: אתגר רב לשוני

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

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

הצטיינות בקידוד ומתמטיקה

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

הרחבת הבנת הקשר

אחת התכונות המרשימות ביותר של Qwen2 היא היכולת שלו להבין ולעבד רצפי הקשר מורחבים. בעוד שרוב דגמי השפה נאבקים עם טקסט ארוך, דגמי Qwen2-7B-Instruct ו-Qwen2-72B-Instruct תוכננו להתמודד עם אורכי הקשר של עד 128K אסימונים.

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

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

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

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

חידושים אדריכליים: תשומת לב לשאילתות קבוצתיות והטמעות אופטימליות

מתחת למכסה המנוע, Qwen2 משלבת מספר חידושים אדריכליים התורמים לביצועים יוצאי הדופן שלו. חידוש אחד כזה הוא האימוץ של Group Query Attention (GQA) בכל גדלי הדגמים. GQA מציע מהירויות הסקה מהירות יותר ושימוש מופחת בזיכרון, מה שהופך את Qwen2 ליעילה יותר ונגישה למגוון רחב יותר של תצורות חומרה.

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

Benchmarking Qwen2: ביצועים טובים יותר מהדגמים המתקדמים ביותר

ל-Qwen2 יש ביצועים יוצאי דופן על פני מגוון רחב של מדדים. הערכות השוואתיות מגלות ש-Qwen2-72B, הדגם הגדול ביותר בסדרה, עולה על מתחרים מובילים כמו Llama-3-70B בתחומים קריטיים, לרבות הבנת שפה טבעית, רכישת ידע, מיומנות קידוד, מיומנויות מתמטיות ויכולות רב לשוניות.

תרשימים המשווים בין Qwen2-72B-Instruct ו-Llama3-70B-Instruct בקידוד על פני מספר שפות תכנות ובמתמטיקה על פני בחינות שונות

Qwen2-72B-Instruct לעומת Llama3-70B-Instruct בביצועי קידוד ומתמטיקה

למרות שיש להם פחות פרמטרים מקודמו, Qwen1.5-110B, Qwen2-72B מציג ביצועים מעולים, עדות ליעילותם של מערכי הנתונים שנאספו בקפידה ומתודולוגיות האימון המאופטימליות של עליבאבא.

בטיחות ואחריות: התיישר עם ערכי האדם

Qwen2-72B-Instruct נבדקה בקפדנות על יכולתה לטפל בשאילתות שעלולות להיות מזיקות הקשורות לפעילויות לא חוקיות, הונאה, פורנוגרפיה והפרות פרטיות. התוצאות מעודדות: Qwen2-72B-Instruct מתפקד בצורה דומה לדגם ה-GPT-4 הנחשב מאוד מבחינת בטיחות, ומציג פרופורציות נמוכות משמעותית של תגובות מזיקות בהשוואה לדגמים גדולים אחרים כמו Mistral-8x22B.

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

רישוי והתחייבות לקוד פתוח

בצעד שמגביר עוד יותר את ההשפעה של Qwen2, עליבאבא אימצה גישת קוד פתוח לרישוי. בעוד Qwen2-72B והדגמים המכוונים להוראות שלו שומרים על רישיון Qianwen המקורי, הדגמים הנותרים - Qwen2-0.5B, Qwen2-1.5B, Qwen2-7B ו-Qwen2-57B-A14B - קיבלו רישיון תחת רישיון Apache 2.0 המתיר .

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

שימוש ויישום

השימוש במודלים של Qwen2 הוא פשוט, הודות לשילוב שלהם עם מסגרות פופולריות כמו פנים מחבקות. הנה דוגמה לשימוש ב-Qwen2-7B-Chat-beta להסקת מסקנות:

from transformers import AutoModelForCausalLM, AutoTokenizer
device = "cuda" # the device to load the model onto
model = AutoModelForCausalLM.from_pretrained("Qwen/Qwen1.5-7B-Chat", device_map="auto")
tokenizer = AutoTokenizer.from_pretrained("Qwen/Qwen1.5-7B-Chat")
prompt = "Give me a short introduction to large language models."
messages = [{"role": "user", "content": prompt}]
text = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
model_inputs = tokenizer([text], return_tensors="pt").to(device)
generated_ids = model.generate(model_inputs.input_ids, max_new_tokens=512, do_sample=True)
generated_ids = [output_ids[len(input_ids):] for input_ids, output_ids in zip(model_inputs.input_ids, generated_ids)]
response = tokenizer.batch_decode(generated_ids, skip_special_tokens=True)[0]
print(response)

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

Qwen2 נגד לאמה 3: ניתוח השוואתי

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

תרשים השוואת ביצועים של Qwen2-72B, Llama3-70B, Mixtral-8x22B ו-Qwen1.5-110B על פני מספר מדדים

תרשים ביצועים השוואתי של Qwen2-72B, Llama3-70B, Mixtral-8x22B ו-Qwen1.5-110B על פני אמות מידה שונות כולל MMLU, MMLU-Pro, GPQA ואחרים.

להלן ניתוח השוואתי שיעזור לך להבין את ההבדלים העיקריים ביניהם:

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

מיומנות קידוד ומתמטיקה: גם Qwen2 וגם לאמה 3 להפגין יכולות קידוד ומתמטיות מרשימות. עם זאת, נראה של-Qwen2-72B-Instruct יש יתרון קל, הודות להכשרה קפדנית על מערכי נתונים נרחבים ואיכותיים בתחומים אלה. ההתמקדות של עליבאבא בשיפור היכולות של Qwen2 בתחומים אלה יכולה לתת לה יתרון עבור יישומים מיוחדים הכוללים קידוד או פתרון בעיות מתמטי.

הבנת הקשר ארוכה: דגמי Qwen2-7B-Instruct ו-Qwen2-72B-Instruct מתהדרים ביכולת מרשימה להתמודד עם אורכי הקשר של עד 128K אסימונים. תכונה זו חשובה במיוחד עבור יישומים הדורשים הבנה מעמיקה של מסמכים ארוכים או חומרים טכניים צפופים. Llama 3, למרות שמסוגל לעבד רצפים ארוכים, עשוי שלא להתאים לביצועים של Qwen2 בתחום הספציפי הזה.

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

פריסה ושילוב: ייעול אימוץ Qwen2

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

כוונון עדין וקונטיזציה: פרויקטים של צד שלישי כגון Axolotl, Llama-Factory, Firefly, Swift ו-XTuner עברו אופטימיזציה כדי לתמוך בכוונון עדין של מודלים של Qwen2, מה שמאפשר למשתמשים להתאים את המודלים למשימות ולמערכי הנתונים הספציפיים שלהם. בנוסף, כלי קוונטיזציה כמו AutoGPTQ, AutoAWQ, ו- Neural Compressor הותאמו לעבודה עם Qwen2, מה שמאפשר פריסה יעילה במכשירים מוגבלי משאבים.

פריסה והסקה: ניתן לפרוס ולהגיש דגמי Qwen2 באמצעות מגוון מסגרות, כולל vLLM, SGL, SkyPilot, TensorRT-LLM, OpenVino, ו-TGI. מסגרות אלו מציעות צינורות מסקנות אופטימליים, המאפשרות פריסה יעילה וניתנת להרחבה של Qwen2 בסביבות ייצור.

פלטפורמות API וביצוע מקומי: למפתחים המבקשים לשלב Qwen2 באפליקציות שלהם, פלטפורמות API כגון Together, Fireworks ו-OpenRouter מספקות גישה נוחה ליכולות הדגמים. לחלופין, ביצוע מקומי נתמך באמצעות מסגרות כמו MLX, Llama.cpp, אולמה, ו-LM Studio, המאפשרים למשתמשים להריץ Qwen2 במחשבים המקומיים שלהם תוך שמירה על שליטה על פרטיות ואבטחת הנתונים.

מסגרות סוכן ו-RAG: התמיכה של Qwen2 בשימוש בכלים וביכולות הסוכן מתחזקת על ידי מסגרות כמו לאמה אינדקס, CrewAI, ו OpenDevin. מסגרות אלו מאפשרות יצירת סוכני AI מיוחדים ושילוב של Qwen2 לתוך דור מוגדל של אחזור (RAG) צינורות, הרחבת מגוון היישומים ומקרי השימוש.

מבט קדימה: התפתחויות והזדמנויות עתידיות

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

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

ביליתי את חמש השנים האחרונות בשקיעת עצמי בעולם המרתק של למידת מכונה ולמידה עמוקה. התשוקה והמומחיות שלי הובילו אותי לתרום ליותר מ-50 פרויקטים מגוונים של הנדסת תוכנה, עם התמקדות מיוחדת ב-AI/ML. הסקרנות המתמשכת שלי משכה אותי גם לעבר עיבוד שפה טבעית, תחום שאני להוט לחקור עוד יותר.