סוכנות שיווק במיקור חוץ. ממוקדים בצרכי לקוחות, מונעים מנתונים ואובססיביים לתוצאות.
© 2017 – 2025 Via Marketing
הדובדבן 7, קרית אונו,
תל-אביב 5551051, ישראל
אימייל
[email protected]
טלפון
+972 077-997-7090
קריירה
[email protected]
601 West Broadway, Vancouver,
BC V5Z 4C2, Canada
Email
[email protected]
Phone
+1 (604) 365-8433
חוסר עקביות בעיצוב ו"קוד זבל" שמגיע מהדבקה (copy-paste) יכולים לשבור את העיצוב של הדף או לגרום לתוכן להיראות מוזר. הכלי שלנו מונע את כאבי הראש האלה בכך שהוא מסיר את הארטיפקטים הערמומיים לפני שהם גורמים נזק. יצא לך לראות דף שבו פסקה אחת מתעקשת להשתמש בפונט או ביישור שונה? לעיתים קרובות זה קורה בגלל קוד עיצוב סמוי שנגרר בהדבקה. באמצעות הסרה של קוד מנופח ולא תואם־מותג כזה, המנקה שלנו עוזר לשמור על מראה אחיד ועקבי בכל האתר. התוסף גם מסלק תווים ברוחב אפס ותווים "לא מודפסים" שיכולים להזיז טקסט, ליצור רווחים מוזרים או "פערים" בלתי מוסברים, אין יותר "גליצ'ים בלתי נראים" שמחרבים את הפריסה. עם תצוגה מקדימה זה לצד זה, אפשר לראות מיד שהתוכן נראה נכון בלי הגרמלינים הבלתי נראים האלה. התוצאה היא חוויית משתמש (UX) חלקה יותר: דפים נטענים נכון, אימיילים ומסמכים שומרים על עיצוב תקין, והתוכן נראה מקצועי ומלוטש. הקוראים יתמקדו במסר שלך – ולא יוסחו בגלל רווחים מוזרים או עיצוב שבור.
עבור מפתחים, תווים סמויים הם לא רק מטרד, הם יכולים לשבור קוד או נתונים. מנקה הטקסט שלנו מבטיח שבקבצים או ב-CMS שלך ייכנס רק טקסט רגיל וסטנדרטי. הוא מזהה ומסיר רווחים ברוחב אפס, רווחים בלתי־נשברים ותווי בקרה אחרים שאוהבים להסתנן להדבקות של קוד. זה אומר: אין יותר שגיאות תחביר מסתוריות או קריסות בגלל בייט בלתי נראה בסקריפט שלך. בפועל, קטעי קוד שמועתקים מצ'אטים של AI או מעורכים עשירים (rich editors) מכילים לעיתים תווי רוחב-אפס ששוברים תחביר, אבל ניקוי שלהם מאפשר לקוד שלך להתקמפל ולהרוץ כראוי. התוסף שומר על ההזחות (indentation) ושבירות השורה, ומסיר רק את ה"שחקנים הרעים", כך ששלמות הקוד נשארת תקינה.
שלמות תוכן (Content integrity) היא עניין של אמון ודיוק. באמצעות הסרת "טוקנים" סמויים בטקסט, אנחנו מבטיחים שאין שום דבר מוטמע בתוכן שלא הכנסת בעצמך. כלי כתיבה מבוססי AI וחלק מהאתרים עשויים להזריק סמנים בלתי נראים (כמו zero-width joiners או תגי HTML סמויים) שאינם מורגשים על המסך, אבל יכולים לסמן את הטקסט שלך כמיוצר-AI או כטקסט שניתן למעקב. המנקה שלנו מוחק את סימני המים והמטא־דאטה הסמויים הללו – כך שהטקסט באמת שלך ו"ללא מעקב". זה לא עניין של "לעבוד על המערכת" – אלא למסור תוכן נקי, חופשי מקוד מיותר או מזהים חיצוניים. אפילו טוב יותר: התוסף עובד מקומית בדפדפן (client-side), כלומר הטקסט שלך לא יוצא מהמכשיר שלך בזמן הניקוי. אתה מקבל פרטיות מלאה ושקט נפשי שטיוטות או מידע רגיש לא מועלים לשום מקום במהלך התהליך. זה פתרון פשוט ומקומי כדי לשמור על התוכן נקי וחסוי.
כדי לעזור למשתמשים למצוא את הפתרון הזה בקלות (בין אם דרך חיפוש בגוגל או באמצעות שאילתא ל-ChatGPT עצמו), ביצענו אופטימיזציה עם מילות מפתח רלוונטיות. הנה כמה מילות מפתח מובילות שמקושרות למנקה הטקסט שלנו:
שימוש במילות מפתח אלה ומיקוד בהן יסייע לעמוד הנחיתה שלנו לדרג גבוה במנועי חיפוש ולהיות מזוהה גם ע"י עוזרי AI, כך שמפתחים, משווקים וכותבים יוכלו לגלות בקלות את מנקה הטקסט העוצמתי הזה. עם גישה ידידותית ומקצועית ופתרונות טכניים מוצקים, אנחנו כאן כדי לעזור לך לנקות את הטקסט ולתת לתוכן שלך לזהור, בלי "חוטים" בלתי נראים שמחוברים אליו!
ככל שמודלים גדולים של שפה מייצרים יותר ויותר תוכן שקשה להבחין בינו לבין כתיבה אנושית, ארטיפקטים עדינים שמוטמעים בפלט שלהם החלו למשוך תשומת לב פורנזית. ניתוח זה בוחן את נוכחותם של ארטיפקטים של תווים בלתי נראים, פגיעויות סטגנוגרפיות חבויות, וההשלכות שלהם על ייחוס מקור במודלים גדולים של שפה. באמצעות חקירה של תווי Unicode שאינם מוצגים (non-rendering), אי-סדירויות בקידוד, ושאריות עיצוב, המחקר מדגיש כיצד אותות שנראים בלתי מורגשים יכולים לפעול כטביעות אצבע לא מכוונות – ולהעלות שאלות חשובות לגבי אותנטיות, מקוריות/פרובננס (provenance), אבטחה, ואחריותיות בטקסט שנוצר ע"י AI.
ההטמעה המואצת של מודלים גדולים של שפה (LLMs) בתשתית המידע הגלובלית חוללה במקביל משבר ייחוס מקור. ככל שמערכות AI גנרטיביות כמו ChatGPT, Claude ו-Gemini מגיעות ליכולות שמחקות סגנונות רטוריים אנושיים בנאמנות הולכת וגדלה, היכולת לזהות את מקורו של טקסט דיגיטלי הפכה לדאגה קריטית עבור אנשי חינוך, מו"לים ואנשי אבטחה. בתוך האקלים הזה של ביקורת מוגברת, נרטיב עיקש התפתח וטוען שספקי המודלים – ובפרט OpenAI – "מסמנים במים" את התוכן שלהם בחשאי באמצעות תווי Unicode בלתי נראים. לפי התאוריה, המודלים משבצים סמנים שאינם מודפסים – "גרמלינים" דיגיטליים – שמשמשים מערכת מעקב סמויה כדי לסמן תוכן שנוצר ע"י מכונה.
הסבירות לכאורה של הטענה נשענת על יכולות מוכרות של סטגנוגרפיה דיגיטלית, תחום שקדם בהרבה ל-AI גנרטיבי. אולם המציאות הפורנזית של פלטי LLM מורכבת בהרבה מהכנסה בינארית פשוטה של תגי מעקב. התופעה של הופעת תווים בלתי נראים בפלטי ChatGPT – ובעיקר Narrow No-Break Space (U+202F) ו-Zero-Width Space (U+200B) – יושבת בנקודת החיבור בין מכניקת טוקניזציה, "זיהום" נתוני אימון, והתנהגויות מתהוות של למידת חיזוק (reinforcement learning).
דוח זה מספק חקירה פורנזית ממצה של הטענות הללו. הוא מפרק את הארכיטקטורה הטכנית של טוקניזציית LLM כדי להבחין בין סטגנוגרפיה מכוונת לבין ארטיפקטים אלגוריתמיים. בנוסף, מתוך התייחסות ליכולות התאורטיות של מערכות כאלה, המסמך מנסח מלאי מקיף של כל תו Unicode שיכול לשמש תאורטית לסימון מים בלתי נראה, ומנתח את הפוטנציאל הסטגנוגרפי שלו, עמידותו, ווקטורי הגילוי שלו. הניתוח חורג מעבר לשאלת הייחוס, ומעמיק בהשלכות אבטחה חמורות של "הזרקת פרומפט בלתי נראית" (Invisible Prompt Injection), שבה אותם תווים ממוחזרים ע"י תוקפים כדי לעקוף מחסומי בטיחות של המודל.
כדי לאמת בקפדנות את הטענות לגבי ChatGPT, צריך קודם כל להפריד בין הגדרות "סימון מים" שהתערבבו זו בזו בשיח הציבורי. המונח משמש לעיתים קרובות לסירוגין לתיאור שלושה מנגנונים טכנולוגיים נפרדים – ורק אחד מהם תואם לתאוריית "התווים הבלתי נראים".
המנגנון הראשון הוא מטא־דאטה וחתימה קריפטוגרפית, כפי שמודגם ע"י תקן C2PA (Coalition for Content Provenance and Authenticity). גישה זו אינה משנה את הטקסט עצמו אלא מצרפת לקובץ "מניפסט" חתום קריפטוגרפית, המפרט את היסטוריית היצירה שלו. בעוד ש-OpenAI שילבה C2PA ביצירת תמונות (DALL-E 3), היישום לטקסט מוגבל מעצם טבעו עקב היעדר "מיכל" פורמטי; טקסט רגיל מאבד מטא־דאטה בעת העתק-הדבק.
המנגנון השני – וזה שנחקר בצורה הפעילה ביותר ע"י OpenAI – הוא סימון מים סטטיסטי. שיטה זו, שמקודמת ע"י חוקרים כמו Scott Aaronson, כוללת שינוי של התפלגות ההסתברויות של יצירת טוקנים במודל. ב-LLM סטנדרטי, הטוקן הבא נבחר לפי עקומת הסתברות שמוסקת מהקונטקסט. בתרחיש של סימון מים, פונקציה פסאודו-אקראית (שמוגדרת לפי "מפתח" סודי הידוע רק לספק) מחלקת את אוצר המילים לרשימות "ירוק" ו"אדום". המודל מוטה לבחור טוקנים מהרשימה הירוקה. סימון המים הזה הוא סטטיסטי בלבד; הטקסט מורכב כולו מתווים סטנדרטיים ונראים, אך הדפוס של בחירתם הוא בלתי סביר מבחינה מתמטית עבור אדם להפיק.9
המנגנון השלישי הוא סטגנוגרפיה מבוססת תווים, נושא דיווחי המשתמשים. היא כוללת השחלה של תווים שאינם מודפסים או שקשה להבחין בהם אל תוך זרם הטקסט כדי לקודד מטען (payload) – לרוב מזהה בינארי. אף שהשיטה מסוגלת תאורטית לשאת מידע בצפיפות גבוהה, היא ידועה כשברירית במיוחד. בניגוד לסימון מים סטטיסטי ששורד ריפורמטינג, סימוני מים מבוססי תווים נהרסים לעיתים קרובות ע"י "סניטיזציה" פשוטה ל-ASCII או העברה בין אפליקציות.
מקור שמועת "סימן המים הבלתי נראה" נטוע בחוויה מוחשית של משתמשים: כאשר הם מעתיקים טקסט מ-ChatGPT לעורכי קוד או לסביבות עם עיצוב קשיח (כמו LaTeX), הם נתקלים בשגיאות תחביר או באנומליות ויזואליות. ה"גרמלינים" הללו מופיעים לעיתים קרובות כנקודות Unicode תקפות אך לא צפויות.
דיווחים מסוף 2024 ולאורך 2025 הצביעו על עלייה בהופעת Narrow No-Break Space (U+202F) בפלט של מודלים כמו GPT-o3 ו-GPT-o4-mini.3 בניגוד לרווח רגיל (U+0020), תו זה יוצר מרווח חזותי אך עם תכונות "בלתי־נשברות" ספציפיות. הופעתו בטקסט באנגלית – שבה הוא אינו סטנדרטי טיפוגרפית – גרמה לרבים להסיק שמדובר בתג מעקב מכוון. באופן דומה, הופעות לסירוגין של Zero-Width Spaces (U+200B) ושל סימני כיווניות חיזקו את החשד לשכבת מעקב פעילה.
אולם ניתוח פורנזי מציע שתווים אלה הם כנראה ארטיפקטים של אימון המודל על טיפוגרפיה איכותית ורב־לשונית – ולא תכונת אבטחה מכוונת. ההבחנה קריטית: "סימון מים" הוא פיצ'ר מתוכנן שמכוון לעמידות, בעוד "ארטיפקט" הוא תכונה מתהווה של תהליך הלמידה, שעלולה בפועל לפגוע בחוויית המשתמש. החלקים הבאים יפרקו את המכניקה של ארטיפקטים אלה לפני שיקטלגו את הכלים התאורטיים הזמינים לסטגנוגרפיה אמיתית.
החקירה של טענות סימון המים מחייבת צלילה עמוקה אל ארכיטקטורת ה"עיניים" של המודל – הטוקנייזר (tokenizer). LLMs אינם מעבדים טקסט כזרם של רעיונות סמנטיים; הם מעבדים אותו כרצף של מספרים שלמים בדידים שנקראים טוקנים. הטוקנייזר הספציפי שבו משתמשים GPT-3.5 ו-GPT-4 הוא cl100k_base – אלגוריתם Byte Pair Encoding (BPE) עם אוצר מילים של כ-100,000 טוקנים.
תו ה"סימון מים" המדווח בתדירות הגבוהה ביותר הוא U+202F. כדי להבין את הופעתו, צריך לבחון את תפקידו הטיפוגרפי. בתקן Unicode, U+202F נבדל מהרווח הסטנדרטי (U+0020) ומה-No-Break Space (U+00A0). הוא צר משמעותית ומחויב ע"י מסורות אורתוגרפיות מסוימות.16
בטיפוגרפיה צרפתית, רווח צר בלתי־נשבר נדרש לפני סימני פיסוק "גבוהים": נקודתיים, נקודה־פסיק, סימן קריאה וסימן שאלה. הוא גם משמש בתוך גִּילֵמֶה (« »). בכתב המונגולי, יש לו תפקיד דקדוקי, בהפרדה בין מילה לסיומת שלה.
הטוקנייזר cl100k_base מעבד טקסט ב-UTF-8. התו U+202F מקודד כרצף תלת־בייטי 0xE2 0x80 0xAF. אם קורפוס האימון מכיל נפח משמעותי של טקסט צרפתי שמוקלד כראוי, יצואי PDF, או פרסומים מקצועיים שנעשו ב-InDesign (שמכניס אוטומטית U+202F), אלגוריתם ה-BPE יפגוש את רצף הבייטים הזה בתדירות גבוהה.
אם הרצף נפוץ מספיק, הוא עשוי לקבל מזהה טוקן משלו או להתמזג עם תווים קודמים. כתוצאה מכך, המודל לומד אסוציאציה הסתברותית: "אחרי משפט בסגנון פורמלי, ההסתברות לטוקן U+202F לפני נקודתיים היא גבוהה." כאשר המודל מייצר טקסט באנגלית – במיוחד במצבים "פורמליים" או "אקדמיים" – הוא עשוי להזות (hallucinate) סטנדרטים טיפוגרפיים מהנתונים האיכותיים שלו, ולהכניס U+202F במקום שבו רווח רגיל היה מספיק.
השערה זו נתמכת בשבריריות של התו. סימון מים מכוון היה לכאורה מתוכנן להיות בלתי מורגש. אולם U+202F שוברת לעיתים קרובות רינדור בעורכי קוד, מופיעה כבלוק "tofu" או גורמת לשגיאות קומפילציה ב-Python וב-LaTeX.20 לא סביר ש-OpenAI תפרוס במכוון סימון מים שמדרדר את שימושיות המוצר שלה לקוד וליצירת מסמכים – מה שמרמז שהנוכחות שלו היא תופעת לוואי לא מכוונת של חתירה ל"עיצוב איכותי".
המחלקה השנייה של תווים מדווחים כוללת סמנים בלתי נראים לחלוטין כמו Zero-Width Space (U+200B). אף שהם תאורטית אידיאליים לסטגנוגרפיה, הופעתם בפלט ChatGPT מקושרת לעיתים לשכבת הממשק ולא לשכבת המודל.
דפדפנים ומערכות ניהול תוכן (CMS) משתמשים ב-U+200B כדי לשלוט בשבירת שורה במחרוזות ארוכות (כמו כתובות URL) או כדי לנהל רינדור של DOM. כאשר משתמש מעתיק טקסט מממשק הווב של ChatGPT, הוא מעתיק את תוכן ה-HTML המרונדר. אם ה-frontend framework מכניס תווים ברוחב אפס ליציבות חזותית, הם עוברים ללוח (clipboard). זו תופעה נפוצה מאוד ברחבי הרשת; העתקת טקסט מ-Wikipedia, Notion או בלוגים כלליים מייצרת לעיתים ארטיפקטים בלתי נראים דומים.1
לכן, נוכחות U+200B היא "חיובית שגויה" (false positive) עבור יצירת-AI. היא מצביעה על כך שהטקסט הועתק מדפדפן, אבל לא מוכיחה שהטקסט נוצר ע"י AI. השכיחות של התווים האלה גם בתוכן אנושי הופכת אותם לחסרי ערך פורנזי כאינדיקטור יחיד לסימון מים.
ה"מוזרות של למידת חיזוק בקנה מידה גדול" שמיוחסת ל-OpenAI מציעה סיבה התנהגותית עמוקה יותר.3 בשלב Reinforcement Learning from Human Feedback (RLHF), מדרגים אנושיים נותנים ציונים לפלט. אם המדרגים מעדיפים באופן עקבי פלט שנראה "מוגה" או "נקי" (שעשוי לכלול בלי כוונה התנהגות מורכבת של רווחים שנגזרה מנתוני אימון), המודל מעדכן את המדיניות שלו כדי להעדיף את הטוקנים האלה.
המודל לא "יודע" ש-U+202F היא כאב ראש למפרשי Python; הוא רק "יודע" שמבנים של פלט שכללו את הטוקן הזה קיבלו תגמול גבוה יותר באימון. כך נוצר לופ משוב שבו המודל מחקה ניואנסים טיפוגרפיים של הוצאה לאור מקצועית – מה שמוביל להחדרה לא עקבית של תווים מיוחדים לטקסט יומיומי.
גם אם התופעות הנוכחיות הן כנראה ארטיפקטים, הבקשה של המשתמש למלאי תאורטי חיונית כדי להבין את משטח התקיפה/השימוש הפוטנציאלי לסימון מים ולהתקפות. תקן Unicode, שנועד לתמוך בכל מערכות הכתב בעולם, כולל עשרות תווים בעלי תכונה של אי-נראות או דמיון חזותי עד כדי בלבול.
אנו מחלקים את התווים הללו לארבע קבוצות פונקציונליות עיקריות: עיצוב ברוחב אפס, רווחים ברוחב משתנה, בקרות כיווניות, ותווי תג (Tags).
קטגוריה זו היא הוקטור העוצמתי ביותר לסטגנוגרפיה. לתווים הללו רוחב התקדמות (advance width) של אפס, כלומר הסמן לא זז כשהם מוצגים. ניתן להזריק אותם בתוך מילים בלי לשבור ליגטורות או קרנינג (ריווח חזותי בין אותיות), כך שהם כמעט בלתי ניתנים לזיהוי בעין בלתי מזוינת.
| נקודת קוד Unicode | שם (רשמי) | קיצור | קטגוריה כללית | תיאור ויישום סטגנוגרפי |
|---|---|---|---|---|
| U+200B | Zero Width Space | ZWSP | Cf (Format) | התו הבלתי נראה העיקרי. נועד לציין נקודת שבירת שורה בטוחה בכתבים ללא ריווח. בסטגנוגרפיה הוא מזווג לעיתים עם ZWNJ כדי ליצור אלפבית בינארי (למשל A=0, B=1). |
| U+200C | Zero Width Non-Joiner | ZWNJ | Cf (Format) | מונע הצטרפות (ליגטורה). חיוני בפרסית/ערבית. בכתב לטיני הוא בלתי נראה. נפוץ כערך '1' בסימון בינארי. |
| U+200D | Zero Width Joiner | ZWJ | Cf (Format) | מכריח הצטרפות. משמש רבות ברצפי אימוג'י (למשל Man + ZWJ + Computer = Male Technologist). שימוש בטקסט רגיל חשוד מאוד אך בלתי נראה. |
| U+FEFF | Zero Width No-Break Space | BOM | Cf (Format) | במקור Byte Order Mark. כיום פועל כרווח ברוחב אפס בלתי־נשבר. לעיתים מוסר ע"י עורכים בתחילת קובץ ולכן פחות עמיד לסימון מים. |
| U+2060 | Word Joiner | WJ | Cf (Format) | החליף את U+FEFF לפונקציית "בלתי־נשבר". מונע שבירת שורה אך ברוחב אפס. יעיל מאוד לסטגנוגרפיה כי אינו מפעיל רוטינות שמסירות BOM. |
| U+180E | Mongolian Vowel Separator | MVS | Cf (Format) | תו ייעודי למונגולית. מאז Unicode 6.3 הוא ברוחב אפס (לפני כן היה רווח). נדירותו באנגלית הופכת אותו לסמן "חזק" אם מזוהה. |
| U+034F | Combining Grapheme Joiner | CGJ | Mn (Mark) | משמש לשמירת תווים יחד לצורכי מיון/קולציה. ייחודי כי הוא "סימן" (Mark) ולא "פורמט" (Format), ולכן עשוי לעקוף מסנני סניטיזציה שמחפשים רק קטגוריית Cf. |
| U+2061 | Function Application | – | Cf (Format) | מיועד לסימון מתמטי של "יישום פונקציה". אפס-חזותי. |
| U+2062 | Invisible Times | – | Cf (Format) | אופרטור כפל בלתי נראה. |
| U+2063 | Invisible Separator | – | Cf (Format) | פסיק/מפריד בלתי נראה במתמטיקה. |
| U+2064 | Invisible Plus | – | Cf (Format) | אופרטור חיבור בלתי נראה. |
משפחה זו כוללת תווים שמופיעים כרווח גלוי, אך מקודדים אחרת מהרווח הסטנדרטי ASCII Space (U+0020). סטגנוגרפיה בעזרת תווים אלה נשענת על החלפה: החלפת רווחים סטנדרטיים ברווחים אלטרנטיביים כדי לקודד מידע. לעיתים זה עמיד יותר מהזרקת רוחב-אפס, משום שבבדיקה ויזואלית עדיין "רואים שיש רווח", מה שממסך את החריגות.
| נקודת קוד Unicode | שם (רשמי) | רוחב חזותי (יחסי ל-Em) | פורנזיקה ושימושיות |
|---|---|---|---|
| U+00A0 | No-Break Space | סטנדרטי | זהה ל-U+0020 אך מונע שבירת שורה. הארטיפקט ה"בלתי נראה" הנפוץ ביותר. לעיתים קרובות מומר ל- ב-HTML. |
| U+2000 | En Quad | 1 En | רוחב קבוע (בד"כ 1/2 Em). דומה חזותית ל-U+2002. |
| U+2001 | Em Quad | 1 Em | רוחב קבוע. |
| U+2002 | En Space | 1 En | רווח En סטנדרטי. |
| U+2003 | Em Space | 1 Em | רווח Em סטנדרטי. רחב מאוד, ברור חזותית בטקסט רגיל. |
| U+2004 | Three-Per-Em Space | 1/3 Em | דומה לרווח סטנדרטי בהרבה פונטים. פוטנציאל גבוה להחלפה סמויה. |
| U+2005 | Four-Per-Em Space | 1/4 Em | |
| U+2006 | Six-Per-Em Space | 1/6 Em | צר. |
| U+2007 | Figure Space | רוחב ספרה | תואם לרוחב ספרות מונוספייס. משמש בטבלאות פיננסיות. |
| U+2008 | Punctuation Space | רוחב נקודה | תואם לרוחב נקודה/פסיק. |
| U+2009 | Thin Space | 1/5 או 1/6 Em | צר יותר. נפוץ בהוצאה לאור מקצועית. |
| U+200A | Hair Space | מינימלי | צר מאוד. קשה להבדיל מ"קרנינג גרוע". |
| U+202F | Narrow No-Break Space | צר | "ארטיפקט ChatGPT." מתפקד כ-Thin Space בלתי־נשבר. מובחן חזותית אך לעיתים מתפספס. |
| U+205F | Medium Math Space | 4/18 Em | משמש בנוסחאות מתמטיות. |
| U+3000 | Ideographic Space | רוחב מלא | משמש בטקסט CJK. עצום בכתב לטיני, ולכן גרוע לסטגנוגרפיה אלא אם הטקסט סיני/יפני. |
תווים אלה שולטים באלגוריתם BiDi (דו־כיווניות) שקובע אם טקסט זורם משמאל-לימין (LTR) או מימין-לשמאל (RTL). הם תווי בקרה בלתי נראים לחלוטין. יחד עם זאת, יש בהם סכנה ייחודית: אם הם לא "מאוזנים" (כלומר, לכל "התחלה" יש "סגירה"), הם יכולים לגרום לשאר הטקסט להתהפך בכיווניות או להישבר. זה הופך אותם למסוכנים לסימון מים אך יעילים מאוד לטשטוש/אובפוסקציה.
| נקודת קוד | שם (רשמי) | קיצור | פונקציה |
|---|---|---|---|
| U+200E | Left-To-Right Mark | LRM | תו LTR חזק. משמש לתיקון פיסוק בטקסט מעורב כתבים. |
| U+200F | Right-To-Left Mark | RLM | תו RTL חזק. |
| U+061C | Arabic Letter Mark | ALM | דומה ל-RLM, ספציפי לפריסת ערבית. |
| U+202A | Left-To-Right Embedding | LRE | מתחיל רמת טקסט חדשה של LTR. |
| U+202B | Right-To-Left Embedding | RLE | מתחיל רמת טקסט חדשה של RTL. |
| U+202C | Pop Directional Formatting | מסיים את היקף ה-LRE, RLE, LRO או RLO האחרון. | |
| U+202D | Left-To-Right Override | LRO | מכריח שכל התווים הבאים יהיו LTR, ללא קשר לכיווניות הטבעית. |
| U+202E | Right-To-Left Override | RLO | מכריח שכל התווים יהיו RTL. התו המפורסם לכתיבת טקסט "הפוך". |
| U+2066 | Left-To-Right Isolate | LRI | מבודד מקטע טקסט מהכיווניות סביבו. |
| U+2067 | Right-To-Left Isolate | RLI | מבודד כמקטע RTL. |
| U+2068 | First Strong Isolate | FSI | מבודד וקובע כיוון לפי התו הראשון החזק. |
| U+2069 | Pop Directional Isolate | PDI | מסיים את היקף ה-isolate. |
אולי הוקטור המתוחכם והמסוכן ביותר לתווים בלתי נראים הוא בלוק ה-Tags (U+E0000 – U+E007F). תווים אלה, שנמצאים ב-Plane 14 של Unicode (Supplementary Special-purpose Plane), הוכנסו במקור כדי "לתייג" טקסט במטא־דאטה לשוני (למשל, לסמן מילה כ-"en-US" בלי להשתמש במרקאפ). השימוש הזה הוצא משימוש (deprecated) לטובת XML/HTML, אך התווים עדיין תקפים בתקן.
באופן קריטי, תווי Tag ממופים ישירות לסט התווים ASCII. כמעט לכל תו ASCII נראה יש תו Tag בלתי נראה מקביל.
בפועל, זה מספק אלפבית מקביל בלתי נראה. אפשר לכתוב משפט נראה "Hello" ובמקביל – משולב בתוכו או מצורף אליו – לכתוב משפט בלתי נראה באמצעות תווי Tag. הוקטור הזה הוא כיום מטרה מרכזית של חוקרי אבטחה שבודקים Prompt Injection, משום ש-LLMs עשויים לעבד את ה-Tags כטוקנים גם אם ממשק המשתמש מציג אותם כ"כלום".
| טווח | שם | תיאור |
|---|---|---|
| U+E0001 | Language Tag | מתחיל רצף תג שפה. |
| U+E0020 – U+E007E | Tag ASCII | מקבילים בלתי נראים ל-ASCII 0x20-0x7E. (Tag Space, Tag Digits, Tag Letters). |
| U+E007F | Cancel Tag | מסיים רצף תג. |
לאחר שקבענו את המלאי, אפשר לנתח כיצד מערכת סימון מים תאורטית תפרוס את התווים הללו. ניתוח זה מסייע להבחין בין ארטיפקטים אקראיים לבין מעקב שיטתי.
השיטה הסטנדרטית ביותר לסימון מים בטקסט היא החלפת LSB (Least Significant Bit) שמוחלת על מבנה הטקסט.
שיטה זו אינה משתמשת בתווים בלתי נראים, אלא בתווים זהים חזותית (הומוגליפים).
שיטה זו משתמשת במשפחת הרווחים ברוחב משתנה (סעיף 3.2).
הממצא המשמעותי ביותר במחקר העדכני אינו שימוש בתווים בלתי נראים על ידי LLMs לסימון מים, אלא שימוש בתווים הללו נגד LLMs. הוקטור הזה, שנקרא Invisible Prompt Injection, מנצל את היכולת של המודל לטוקניזציה ולעיבוד של תווים בלתי נראים שהאדם אינו יכול לראות.
בתרחיש זה, תוקף משתמש בבלוק ה-Tags (U+E0000) כדי להטמיע הוראות זדוניות בתוך טקסט שנראה תמים.
התופעה הזו מאשרת את ההיתכנות הטכנית של עיבוד תווים בלתי נראים. היא מוכיחה שהטוקנייזר cl100k_base כן מזהה את התווים האלה. לכן, אם OpenAI הייתה רוצה לסמן טקסט במים, התשתית קיימת. עם זאת, העובדה שהוקטור הזה מטופל כפגיעות (שצריך לתקן) ולא כפיצ'ר, מצביעה על כך ש-OpenAI פועלת לדכא את עיבוד התווים הללו – ולא לנצל אותם לצורך מעקב.
עבור עמיתים מקצועיים, אנשי חינוך ומפתחים, היכולת לזהות ולסנן את התווים הללו היא חיונית. להסתמך על "גלאי AI" שמסמנים טקסט בגלל נוכחות U+200B הוא פורנזית לא־תקין ומוביל לשיעור גבוה של חיוביות שגויות.
השיטה האמינה ביותר לזיהוי ולסניטיזציה היא ביטויים רגולריים (Regex). התבניות הבאות מכסות את המלאי שזוהה בסעיף 3.
| קטגוריה | תבנית Regex | תיאור |
|---|---|---|
| רוחב-אפס ופורמט | " | מכסה ZWSP, ZWNJ, ZWJ, BOM, WJ, ואופרטורים מתמטיים בלתי נראים. |
| רווחים ברוחב משתנה | [\u2000-\u200A\u202F\u205F\u3000] | מכסה את כל הרווחים הלא-סטנדרטיים כולל "ארטיפקט ChatGPT" (U+202F). |
| בקרות כיווניות | [\u202A-\u202E\u2066-\u2069\u061C] | מכסה Embeddings, Overrides, ו-Isolates. |
| בלוק Tags | [\uE0000-\uE007F] | קריטי: מכסה את תווי התג הבלתי נראים של ASCII שמשמשים להזרקת פרומפט. |
| קודי בקרה | " | מכסה בקרות ASCII ישנות (Bell, Backspace וכו'). |
דוגמת מימוש ב-Python: כדי לסנן מחרוזת text מכל התווים הבלתי נראים התאורטיים:
Python
import re
def sanitize_text(text): # Pattern matching all categories identified in the report invisible_pattern \= re.compile( r" # Tags ) return invisible_pattern.sub(", text)
חשוב להדגיש: נוכחות התווים הללו אינה הוכחה חד-משמעית ליצירת-AI.
החקירה של טענות "סימון מים בלתי נראה" ב-ChatGPT חושפת נוף שמוגדר יותר ע"י ארטיפקטים מקריים מאשר ע"י מעקב מכוון. ה"גרמלינים" שעליהם מדווחים משתמשים – במיוחד Narrow No-Break Space (U+202F) – הם תופעות שניתן לאמת, אך הם סימפטומים של אימון המודל על טיפוגרפיה מקצועית ולא של מערכת מעקב שנפרסה בפועל. השבריריות של סטגנוגרפיה מבוססת תווים, יחד עם המיקוד של OpenAI בסימון מים סטטיסטי (הטיית טוקנים), הופכות את תאוריית "התווים הבלתי נראים" ללא סבירה אסטרטגית עבור ספק גדול.
עם זאת, הארסנל התאורטי לסימון מים בלתי נראה הוא עצום. תקן Unicode מספק מעל 50 תווים נבדלים – מ-Zero-Width Space (U+200B) ועד בלוק ה-Tags (U+E0000) החשאי – שניתן לנצל כדי להסתיר מידע. בעוד שכיום הם מופיעים כארטיפקטים תמימים או כגליצ'ים בעיצוב, עצם קיומם מציב איום כפול: הם יכולים לשמש וקטורים שבריריים לייחוס ומנגד וקטורים עמידים להזרקת פרומפט בלתי נראית.
עבור איש מקצוע שמאמת את הטענות הללו: התווים אמיתיים, אבל הכוונה כנראה תמימה. ובכל זאת, יכולת השימוש לרעה – הן מצד מודל לצורך מעקב והן מצד תוקף לצורך התקפה – נשארת רדומה בשכבות הבלתי נראות של הטקסט, וממתינה לפריסה מתוחכמת יותר מאשר הגליצ'ים האקראיים שנצפים היום.
ויה מרקטינג > מסיר תווים סמויים וסימני מים בלתי נראים (AI)
לקבלת הצעת מחיר מותאמת לכם עוד היום:
על ידי הזנת כתובת פרטים, אתם מסכימים לתנאי השימוש שלנו באתר ולמדיניות הפרטיות שלנו.