בפרוטוקול זה, איכות התגובה של מודל שפה גדול משופרת באמצעות אוגמנטציה עם מאמרים מדעיים ספציפיים לתחום שעברו ביקורת עמיתים באמצעות מנגנון הטבעה וקטורי. בנוסף, הקוד מסופק כדי לסייע בהשוואת ביצועים בין מודלי שפה גדולים.
מאמר שיטה
בפרוטוקול זה, איכות התגובה של מודל שפה גדול משופרת באמצעות אוגמנטציה עם מאמרים מדעיים ספציפיים לתחום שעברו ביקורת עמיתים באמצעות מנגנון הטבעה וקטורי. בנוסף, הקוד מסופק כדי לסייע בהשוואת ביצועים בין מודלי שפה גדולים.
מודלי שפה גדולים (LLM) התפתחו כמשאב פופולרי ליצירת מידע רלוונטי לשאילתת משתמש. מודלים כאלה נוצרים באמצעות תהליך הכשרה עתיר משאבים תוך שימוש בקורפוס נרחב וסטטי של נתונים טקסטואליים. אופי סטטי זה גורם למגבלות לאימוץ בתחומים עם ידע המשתנה במהירות, מידע קנייני ונתונים רגישים. בעבודה זו, מתוארות שיטות להגדלת LLMs למטרות כלליות, הידועות כמודלים בסיסיים, עם מידע ספציפי לתחום באמצעות גישה מבוססת הטבעה לשילוב כתבי יד מדעיים עדכניים שעברו ביקורת עמיתים. זה מושג באמצעות כלי קוד פתוח כגון Llama-Index ומודלים זמינים לציבור כגון Llama-2 כדי למקסם את השקיפות, פרטיות המשתמש ושליטה, ושכפול. בעוד כתבי יד מדעיים משמשים כמקרה שימוש לדוגמה, ניתן להרחיב גישה זו לכל מקור נתוני טקסט. בנוסף, נדונות שיטות להערכת ביצועי המודל לאחר שיפור זה. שיטות אלה מאפשרות פיתוח מהיר של מערכות LLM עבור תחומים מיוחדים מאוד ללא קשר להיקף המידע בקורפוס ההדרכה.
מודלי שפה גדולים (LLM) כגון ChatGPT של OpenAI או Llama של Meta AI הפכו במהירות למשאב פופולרי ליצירת טקסט רלוונטי לבקשת משתמש. מודלים אלה, שפעלו במקור כדי לחזות את הפריטים הלקסיקליים הבאים ברצף, התפתחו כדי להבין הקשר, לקודד מידע קליני ולהדגים ביצועים גבוהים במגוון משימות 1,2,3,4. למרות שמודלי שפה קדמו ליכולות כאלה ולרמת הפופולריות הנוכחית שלהם בעשורים5, ההתקדמות האחרונה ביכולות למידה עמוקה ומחשוב הפכה LLMs מסחריים מאומנים מראש ואיכותיים לזמינים באופן נרחב למשתמשים באמצעות טכנולוגיות מבוססות אינטרנט וממשקי תוכניות יישומים (APIs)6. עם זאת, ישנן מספר מגבלות בולטות לצריכת LLMs בפורמט זה.
אתגר 1: קורפוס אימון סטטי
LLMs מאומנים על גוף עצום (למשל, שני טריליון אסימונים במקרה של Llama 27) אבל סטטי של נתוני טקסט. הדבר מציב אתגר ביצירת מענים מדויקים הנוגעים לתחומים המתפתחים במהירות או משתנים בספרות. בגישה סטטית זו, LLMs ידרוש הכשרה תכופה כדי לשמור על קשר עם הנתונים האחרונים, אשר אינו מעשי ולא מדרגי. יתר על כן, הנחיות הדורשות תגובות על סמך מידע שאינו קיים בנתוני האימון עלולות למנוע יצירת טקסט שימושי או להוביל להזיות8. מקרים של הזיות או זיוף עובדות מעלים חששות משמעותיים לגבי האמינות של LLMs, במיוחד בהגדרות שבהן דיוק המידע הוא קריטי9.
אתגר 2: חוסר ספציפיות בתחום
מודלים מאומנים מראש נוצרים לעתים קרובות לשימוש כללי, בעוד שמשתמשים עשויים לדרוש מודל הממוטב במיוחד לביצועים בתחום מסוים. בנוסף, המשאבים החישוביים והנתונים הדרושים לאימון מודל דה נובו או לביצוע כוונון עדין משמעותי אינם מאפשרים למשתמשים רבים.
אתגר 3: חוסר פרטיות
משתמשים הרודפים יישומים הכוללים נתונים רגישים או מידע קנייני עשויים שלא לרצות או לא להשתמש בשירותי LLM מסוימים מכיוון שחסר להם מידע על אופן אחסון הנתונים או השימוש בהם.
אתגר 4: היעדר יציבות מובטחת
שירותים עם LLM קנייני עשויים לשנות מודלים זמינים או לשנות התנהגות בכל עת, מה שהופך את היציבות לדאגה ליישום יישומים המסתמכים על שירותים אלה.
Retrieval-augmented generation (RAG) היא טכניקה שפותחה כדי לשפר את ביצועי LLM, במיוחד בשאילתות הקשורות למידע מחוץ לקורפוס האימון10,11 של המודל. מערכות אלה מגדילות LLMs על ידי שילוב מידע הקשרי שיש לקחת בחשבון בעת יצירת תגובה לשאילתת משתמש. עבודות שונות שנעשו לאחרונה תיארו יישומים של מערכות RAG ואת היתרונות הפוטנציאליים שלהם 12,13,14.
מטרת השיטה המתוארת בעבודה זו היא להדגים את הבנייה של מערכת כזו ולספק מסגרת לחוקרים להתנסות במהירות על LLMs ספציפיים לתחום, מוגברת. שיטה זו ישימה עבור משתמשים המבקשים להגדיל LLM עם מקור נתונים חיצוני מבוסס טקסט. באופן ספציפי, מטרת העל של פרוטוקול זה היא לספק קוד שלב אחר שלב הניתן להרחבה למגוון ניסויים מעשיים של LLM ו- RAG ללא צורך במומחיות טכנית משמעותית בתחום מידול השפה, אם כי נדרש ידע עובד של Python כדי ליישם גישה זו ללא שינוי. כדי למקסם את שליטת המשתמש, השקיפות, הניידות והמחיר המשתלם של פתרונות, נעשה שימוש בכלים בקוד פתוח הזמינים לציבור. המערכת המוצעת נותנת מענה לסוגיות שצוינו לעיל בדרכים הבאות:
פתרונות 1 ו-2: קורפוס אימון סטטי וחוסר ספציפיות בתחום
המתודולוגיה המסופקת ממנפת גישת RAG, תוך שימוש בהטבעות כדי לספק מידע ספציפי לתחום שלא נכלל בנתוני ההדרכה המקוריים. ברמה גבוהה, מודלים מוטמעים הופכים טקסט או נתונים אחרים לייצוג כמערך וקטורי או חד-ממדי של מספרים. טכניקה זו מועילה מכיוון שהיא ממירה מידע סמנטי הכלול בטקסט לצורה מספרית צפופה. על ידי הקרנת שאילתת משתמש לאותו מרחב הטבעה, ניתן להשתמש באלגוריתמים שונים כדי לחשב את המרחק15, ולכן, דמיון סמנטי משוער, בין שאילתת המשתמש לבין מקטעים של מסמכי טקסט. לפיכך, יצירת מסד נתונים של וקטורים כאלה ממסמכים המחולקים למקטעים נפרדים יכולה להקל על חיפוש במספר משמעותי של מסמכים אחר הטקסט הרלוונטי ביותר לשאילתת משתמש (איור 1). גישה זו ניתנת להרחבה לכל מסמך טקסט. בעוד גישות אחרות, כגון יכולות חיפוש מקוונות, מתחילות להיות מיושמות כדי להגדיל LLMs, גישה זו מאפשרת למשתמשים לבחור מקורות הנחשבים באיכות גבוהה מספיק עבור מקרה השימוש שלהם.
פתרון 2: חוסר פרטיות
ביישום זה, סביבת ענן מאובטחת שימשה לאירוח, ללא בקשות משתמש, תגובות שנוצרו או נתונים אחרים שעזבו את המערכת האקולוגית הזו. עם זאת, כל הקוד כתוב באופן שאינו תלוי בפלטפורמה, כדי להבטיח שניתן יהיה להחליף ספק ענן אחר או חומרה מקומית.
פתרון 3: היעדר יציבות מובטחת
גישה זו משתמשת בספריות קוד פתוח ומתמקדת בהגדלת LLMs עם משקלים זמינים לציבור, המאפשרים רמה גבוהה יותר של שקיפות, יציבות וניהול גירסאות, במידת הצורך.
שרטוט מלא של המערכת המוצעת שלנו מוצג באיור 2, והוראות מפורטות לשכפול מערכת זו או דומה מתוארות בסעיף הפרוטוקול. שיקול נוסף בעת שינוי התנהגות המודל באמצעות כוונון עדין או הגדלה הוא הערכת הביצועים. במודלים ליצירת שפה, זה מציב אתגר ייחודי מכיוון שמדדים מסורתיים רבים של למידת מכונה אינם ישימים. למרות שקיימות מגוון טכניקות16, במחקר זה, שאלות אמריקאיות שנכתבו על ידי מומחים (MCQs) שימשו להערכת דיוק והשוואת ביצועים לפני ואחרי ההרחבה, כמו גם מול LLMs חלופיים פופולריים.
במקרה השימוש שהודגם במאמר זה, מאגר הווקטורים נוצר באמצעות הנחיות שפורסמו מקבוצת העבודה של הקונצנזוסבשיקגו 17. קבוצת מומחים זו הוקמה כדי לפתח קווים מנחים לניהול סרטן הצפק. תחום הנושא נבחר כפי שהוא בתחום המומחיות הקלינית של החוקרים. סדרת המאמרים נלקחה ממאגרי כתבי עת מקוונים, כולל סרטן ותולדות האונקולוגיה הכירורגית. מודל הטבעה קומפקטי (33.4 מיליון פרמטרים) שנוצר על ידי האקדמיה לבינה מלאכותית בבייג'ינג (BAAI, https://www.baai.ac.cn/english.html), bge-small-en, שימש ליצירת הטבעות ממסמכי מקור. מסד הנתונים שהתקבל שימש אז להרחבת מודלים בסיסיים של Llama 2 ו- Open-AI7. לנוחיות הקורא, הקוד זמין באמצעות GitHub (https://github.com/AnaiLab/AugmentedLLM). כדי להבטיח שכפול, מומלץ להשתמש באותן גרסאות של ספריות המשמשות ברשימת הדרישות שסופקה, כמו גם באותה גרסה של Python. פרטים נוספים על התקנה או תיעוד לגבי כלים המשמשים בשיטות הבאות ניתן למצוא באתרים הרשמיים של ספקי Python (https://www.python.org), git (https://git-scm.com), Llama-Index (https://llamaindex.ai) ו- Chroma (https://trychroma.com).
1. דרישות מוקדמות: סקירת קוד והתקנת ספריות נדרשות
2. יצירת מסד נתונים וקטורי עם Llama-Index
3. הגדלת מודל Llama עם מסד נתונים וקטורי שנוצר בסעיף 2
4. השוואה פרוגרמטית של LLMs חלופיים
קבוצה של 22 פרסומים מהנחיות הניהול של קבוצת העבודה של הקונצנזוס של שיקגו שימשו להגדלת מודל הבסיס Llama-7b17. המסמכים הומרו לאינדקס וקטורי באמצעות הכלי Llama-Index ליצירת Llama-2-7b-CCWG-Embed. מודלים פופולריים של OpenAI כגון GPT-3.5 ו- GPT-4 הוגדלו גם הם באופן דומה כדי לייצר דגמי GPT-XX-CCWG-EMBED. בסך הכל פותחו 20 שאלות אמריקאיות (MCQ) כדי להעריך ידע הקשור לניהול מגוון של ממאירויות משטח הצפק. ה- MCQs נוצרו על ידי אונקולוג כירורגי מוסמך כדי לבדוק ברמת הידע המצופה מעמית אונקולוגיה כירורגית. הביצועים של Llama-2-7b-CCWG-Embed היו טובים משמעותית ממודל הבסיס (ראו טבלה 1), וכך גם מודלים משופרים של OpenAI. זו נחשבת לתוצאה חיובית עבור שיטה זו מכיוון שביצועי המודל השתפרו עם הגדלה בהשוואה לנקודת ההתחלה.

איור 1: סכמטי של יצירת מסד נתונים וקטורי ממאמרים אקדמיים. לחץ כאן כדי להציג גרסה גדולה יותר של איור זה.

איור 2: דיאגרמת מערכת כוללת עבור LLM רבודה. לחץ כאן כדי להציג גרסה גדולה יותר של איור זה.

איור 3: מודל Llama-2 רבודה הפועל במסוף לינוקס. אנא לחץ כאן כדי להציג גרסה גדולה יותר של איור זה.

איור 4: תוצאת שאילתה ממודל Llama-2 רבודה. לחץ כאן כדי להציג גרסה גדולה יותר של איור זה.
| LLM | ציון (% נכון) |
| לאמה-2-7b-chat-hf | 65% |
| לאמה-2-7b-CCWG-Embed | 75% |
| Openchat-3.5-010618 | 65% |
| מיסטרל-7B-v0.119 | 70% |
| GPT-3.5 | 75% |
| GPT-3.5-CCWG-Embed | 85% |
| GPT-4 | 85% |
| GPT-4-CCWG-Embed | 90% |
טבלה 1: ציונים (נכונים באחוזים) של LLMs שונים על קבוצה של 20 שאלות הנוגעות לניהול ממאירות הצפק.
השיטות המסופקות כאן נועדו להקל על המחקר של יישומים ספציפיים לתחום של LLMs ללא צורך הכשרה דה נובו או כוונון עדין נרחב. ככל ש- LLMs הופכים לתחום בעל עניין מחקרי משמעותי, גישות להגדלת בסיסי ידע ושיפור דיוק התגובות יהפכו חשובות יותר ויותר 18,19,20,21. כפי שהודגם בתוצאות שסופקו, הפרוטוקול המתואר מציע שיפור בביצועים בשאלות ספציפיות לתחום בהשוואה לאותו LLM ללא הגדלה ומתקרב לביצועים של מודלים מורכבים יותר כגון מודלים של OpenAI GPT. מכיוון ש- LLMs יכולים לדרוש משאבים חישוביים עצומים כדי ליצור תגובות22,23, הגדלת מודל פשוט יותר עשויה לספק אפיק ליישום במקרי שימוש מוגבלים במשאבים. יתר על כן, מערכת RAG גם הפיקה יתרונות בעת הגדלת מודלים בעלי מורכבות גבוהה כמו אלה שסופקו על ידי OpenAI. בעוד שהתוצאות המוצגות הן ייחודיות לניהול סרטן הצפק, הופקו מחקרים אחרונים על מערכות RAG עם מגוון מקורות נתונים הן בתחום והן בקנה מידה, המצביעים על התחולה הרחבה של מערכות כאלה 21,24,25,26. מכיוון שאיכות התגובות קשורה קשר הדוק לנתוני הטקסט המשמשים להגדלה, עם זאת, קריטי שמשתמשים ישקלו בקפידה אילו מקורות הם אופטימליים עבור התחום הספציפי שלהם והיישום הרצוי. שיקול זה הוא בעל חשיבות מיוחדת בתחומים כגון בריאות, אשר היה מוקד מסוים של מחקרים הקשורים LLM. שימוש LLM עבור אבחון27,28, ניסוי קליני תואם29,30, ויישומים רבים אחרים נחקרים, ודורשים משאבי טקסט מאומתים ואמינים במקום להסתמך על קורפורת הכשרה לא ידועה.
הביצועים נמדדו על ידי אחוז נכון של MCQs שנכתבו על ידי מומחה לסרטן הצפק וניהול קליני שלהם. התשובות סווגו כנכונות או שגויות על ידי בדיקה אנושית; עם זאת, כדי למזער משימות חוזרות עבור חוקרים, קוד בסיסי להתחיל להתקרב השוואה אוטומטית יותר של ביצועים על פני LLMs מסופק.
יתרון מרכזי של פרוטוקול זה הוא הקוד שסופק כדי לגשת באופן תוכניתי למגוון רחב של LLMs. בעבר, כדי להעריך את הביצועים על MCQs משתמשים ללא היכולות הטכניות הנדרשות עשויים להסתמך על בדיקות ידניות חוזרות ונשנות באמצעות ממשק מבוסס אינטרנט. הקוד שסופק נותן שיעורים בסיסיים כדי ממשק עם מספר LLMs פופולרי יחד עם דוגמאות של איך לבצע את הקוד. המטרה של מתן כלים אלה היא לאפשר לחוקרים נוספים לנוע לעבר אוטומציה של זרימות עבודה המעריכות תגובות להנחיה על פני מגוון רחב של LLMs, שיפור היכולת לבצע מחקרים השוואתיים.
יתר על כן, השיטות המתוארות נועדו להדגיש גמישות והרחבה. למרות שניתן להשתמש בקוד כמות שהוא, הוא נכתב מתוך כוונה להתאים עוד יותר למקרי שימוש ספציפיים לפי הצורך, כגון שימוש ב- LLM שונים והטמעת מודלים להגדלה או השוואה. ככל שנוף LLM מתפתח במהירות, יכולת הרחבה זו תהפוך חשובה יותר ויותר כדי לענות על הצרכים המגוונים של משתמשים בתחומים שונים. בנוסף, ספריית Llama-Index מספקת מספר משמעותי של תכונות שאינן בשימוש בשיטות שהודגמו, אשר יכולות לתת למשתמשים אפשרויות נוספות בעת יצירת מערכות דומות. ניתן למצוא אותם בתיעוד הרשמי של Llama-Index.
הקוראים צריכים גם לשקול בזהירות שיטות הערכה כי הם אופטימליים עבור מקרה השימוש שלהם. בעוד MCQs צברו פופולריות עבור השוואות LLM בשל אופיים לכימות בקלות31,32, יש לנקוט זהירות בהתחשב בהם מדד ביצועים מקיף עבור מערכות גנרטיביות. הספרות האחרונה יישמה מגוון רחב של הערכות, כולל גישות איכותניות, סקירה אנושית, הערכה הוליסטית של מודלים של שפה בסטנפורד (HELM)33, ומדדי עיבוד שפה טבעית סטנדרטיים כגון הערכה דו-לשונית (BLEU), הערכה כללית של הבנת שפה (GLUE), ROUGE, מבוכה וציון F1 34,35,36,37,38,39.
קיימות מגבלות לשיטות אלה כמפורט כאן. לדוגמה, בעוד ממשקים יושמו עבור מספר ספקי LLM מובילים, בהתחשב באופי המתפתח במהירות של תחום זה וכמה מקרי שימוש מגוונים עשויים להיות, יישום זה לא יכול להיות מקיף. הקוד, עם זאת, תוכנן מתוך מחשבה על כך כפי שנדון קודם לכן. בנוסף, בעוד קוד בסיסי למעבר לדירוג אוטומטי סופק, יש מקום להרחיב לשימוש בכלים חלופיים לדירוג תגובות כגון HELM או BLEU. יתר על כן, שימוש נוסף בכלים להגבלת התפוקה על פי דקדוק מוגדר מראש, כגון שפת שאילתות מודל שפה (LMQL), עשוי לשמש כדי להרחיב על עבודה זו ולהגביר את האוטומציה של לימודי LLM השוואתיים. בנוסף, בהתחשב במגוון הרחב של תרחישי שימוש פוטנציאליים, נדרשים מחקרים נוספים על ההשפעה של מערכות RAG על ביצועים כלליים מחוץ לתחום כדי לאפיין פשרות ביצועים כלשהן. לבסוף, יש להמשיך לחקור שיטות נוספות לשיפור המהימנות וההערכה של תגובות LLM.
שים לב שמסיבות טכניות נדרש Python 3.10 ומעלה. בקשות מעטפת נכתבות עבור bash, zsh או מסופים אחרים דמויי UNIX. ניתן לבצע פקודות (המכונה 'הפעלת הפקודה' בפרוטוקול) פשוט על ידי הקלדת הטקסט ואחריו מקש החזרה. עבור כל שלב בפרוטוקול, משתמש עשוי לרצות לבחון את הקוד בקובץ המבוצע כדי לקבל הבנה מקיפה יותר של המכניקה שמאחורי זרימת העבודה.
למחברים אין ניגודי עניינים להצהיר.
עבודה זו התאפשרה על ידי מספר ספריות קוד פתוח, בעיקר llama-index (https://www.llamaindex.ai/), ChromaDB (https://www.trychroma.com/) ו- LMQL (https://lmql.ai/).
| שם | חברה | מספר קטלוג | הערות |
|---|---|---|---|
| Pip3 גרסה 22.0.2 | |||
| פייתון - Python גרסה 3.10.12 |
בקש הרשאה לשימוש חוזר בטקסט או באיורים של מאמר JoVE זה
בקש הרשאה