בינה מלאכותית גנרטיבית (GenAI) יכולה ליצור מגוון רחב יותר של תוכן מגוון מאוד, בקנה מידה שלא ניתן היה לדמיין בעבר. רוב השימוש הזה הוא למטרות לגיטימיות, אבל יש חשש שהוא עלול לתרום להפצת מידע שגוי ולבעיות של שיוך שגוי. הטמעת סימני מים היא אחת מהשיטות לצמצום ההשפעות האפשריות האלה. אפשר להוסיף תוכן לא מורגש של סימני מים לתוכן שנוצר על ידי AI, ומודלים לזיהוי יכולים להעניק ניקוד לתוכן שרירותי כדי לציין את הסבירות לכך שנוספו לו סימני מים.
SynthID היא טכנולוגיה של Google DeepMind שמטמיעה סימני מים דיגיטליים ישירות בתמונות, באודיו, בטקסט או בסרטונים שנוצרו על ידי AI, כדי לזהות ולסמן תוכן שנוצר על ידי AI. SynthID Text זמין כקוד פתוח כדי לאפשר למפתחים להוסיף סימני מים ליצירת טקסט. במאמר ב-Nature מפורט תיאור טכני מלא יותר של השיטה.
הטמעה של SynthID Text ברמת הייצור זמינה ב-Hugging Face Transformers v4.46.0 ואילך, שאפשר לנסות ב-SynthID Text Space הרשמי. יש גם הטמעת עזר זמינה ב-GitHub, שיכולה להיות שימושית למנהלי קוד פתוח ולתורמים שרוצים להשתמש בשיטה הזו במסגרות אחרות.
הוספת סימן מים
באופן מעשי, SynthID Text הוא מעבד לוגיטים, שמוחל על צינור עיבוד הנתונים ליצירת המודל אחרי Top-K ו-Top-P, שמוסיף לוגיטים של המודל באמצעות פונקציית g פסאודו-אקראית כדי לקודד מידע של סימון מים באופן שיעזור לכם לקבוע אם הטקסט נוצר על ידי המודל, בלי להשפיע באופן משמעותי על איכות הטקסט. במאמר מפורט תיאור טכני מלא של האלגוריתם, וניתוח של ההשפעה של ערכי הגדרה שונים על הביצועים.
מגדירים את סימני המים כדי להגדיר את הפרמטרים של פונקציית g ואת האופן שבו היא חלה במהלך היצירה. חשוב לאחסן את כל ההגדרות של סימני המים באופן מאובטח ופרטי, אחרת אנשים אחרים יוכלו לשכפל את סימן המים בקלות.
צריך להגדיר שני פרמטרים בכל הגדרה של סימן מים:
- הפרמטר
keys
הוא רשימה של מספרים שלמים ייחודיים ואקראיים שמשמשים לחישוב ציונים של פונקציית g בלקסיקון של המודל. האורך של הרשימה הזו קובע את מספר השכבות של סימני המים שיחולו. פרטים נוספים מופיעים נספח C.1 במאמר. - הפרמטר
ngram_len
משמש לאיזון בין חוזק לבין יכולת זיהוי. ככל שהערך גדול יותר, כך קל יותר לזהות את סימן המים, אבל הוא גם יותר רגיש לשינויים. אורך של 5 הוא ערך ברירת מחדל טוב.
אפשר להגדיר את הסימון במים בהתאם לצרכים שלכם מבחינת ביצועים:
- טבלת דגימה מוגדרת על ידי שני מאפיינים,
sampling_table_size
ו-sampling_table_seed
. מומלץ להשתמש ב-sampling_table_size
של לפחות216 כדי להבטיח פונקציית g יציבה ובלתי מוטה במהלך הדגימה, אבל חשוב לזכור שגודל טבלת הדגימה משפיע על כמות הזיכרון הנדרשת בזמן ההסקה. אפשר להשתמש בכל מספר שלם שרוצים בתורsampling_table_seed
. - כדי לשפר את היכולת לזהות את המים, לא מוסיפים סימני מים לn-גרמים חוזרים באסימונים הקודמים של
context_history_size
.
כדי ליצור טקסט עם סימן מים של SynthID Text באמצעות המודלים שלכם, לא נדרש אימון נוסף, אלא רק הגדרת סימן מים שמועברת לשיטה .generate()
של המודל כדי להפעיל את מעבד הלוגיסטים של SynthID Text. בפוסט בבלוג ובמרחב המשותף מפורטות דוגמאות קוד שממחישות איך להחיל סימן מים בספריית Transformers.
זיהוי של סימן מים ויכולת אימות
זיהוי סימני מים הוא סטטיסטי. הגלאי הבאיאסיני מופיע ב-Hugging Face Transformers וב-GitHub. הגלאי הזה יכול להפיק שלושה מצבי זיהוי אפשריים – עם סימן מים, ללא סימן מים או לא בטוח – וניתן להתאים אישית את ההתנהגות על ידי הגדרת שני ערכי סף כדי להשיג שיעור ספציפי של תוצאות חיוביות שגויות ותוצאות שליליות שגויות. פרטים נוספים זמינים בנספח C.8 במאמר.
מודלים שמשתמשים באותו מחולל תווים יכולים גם לשתף את ההגדרות והגלאי של הוספת סימן המים, וכך לשתף סימן מים משותף, כל עוד קבוצת האימון של הגלאי כוללת דוגמאות מכל המודלים שחולקים את סימן המים.
אחרי שתתאמנו את הגלאי, תוכלו לבחור אם לחשוף אותו למשתמשים שלכם, ואם כן, איך לחשוף אותו.
- באפשרות פרטית לחלוטין, הגלאי לא יפורסם או ייחשף בשום צורה.
- האפשרות חצי-פרטית לא משחררת את הגלאי, אבל חושפת אותו דרך ממשק API.
- האפשרות גלוי לכולם מאפשרת לאחרים להוריד את הגלאי ולהשתמש בו.
אתם והארגון שלכם צריכים להחליט איזו גישה לאימות הזיהוי מתאימה לצרכים שלכם, על סמך היכולת שלכם לתמוך בתשתית ובתהליכים המשויכים.
מגבלות
סימני המים מסוג טקסט של SynthID עמידים בפני טרנספורמציות מסוימות – חיתוך קטעי טקסט, שינוי של כמה מילים או ניסוח מחדש קל – אבל יש לשיטה הזו מגבלות.
- הוספת סימן מים פחות יעילה בתשובות עובדתיות, כי יש פחות הזדמנויות לשפר את היצירה בלי לפגוע בדיוק.
- ציונים של רמת האמון בזיהוי יכולים לרדת משמעותית כשטקסט שנוצר על ידי AI נכתב מחדש באופן יסודי או מתורגם לשפה אחרת.
התכונה SynthID Text לא נועדה למנוע באופן ישיר מיריבים מוטיבציה לגרום נזק. עם זאת, היא יכולה להקשות על שימוש בתוכן שנוצר על ידי AI למטרות זדוניות, וניתן לשלב אותה עם גישות אחרות כדי לספק כיסוי טוב יותר של סוגי תוכן ופלטפורמות.