מדוע תרגום מכונה שובר לוקליזציה של ממשקים מבוססת AI
תרגום מכונה קלאסי מתייחס למחרוזת כיחידת טקסט מבודדת. בממשק, מחרוזת כמעט לעולם אינה נושאת משמעות מלאה: "שמור" קצר חי בחלון מודאלי של תרחיש אחד, ו"שמור כטיוטה" בתפריט של תרחיש אחר, ובלי הקשר של המסך המנוע בוחר מין, יחסה ומונח לא נכונים. ההבדל ניכר לא ביופי הניסוח, אלא במספר הפגמים שתהליך הקבלה תופס.
בעיה נפרדת היא משתנים והחלפות בתוך הביטוי. המנוע עלול לשנות את סדרם, להדביק אותם למילה סמוכה או לשנות את הסדר, והמחרוזת או נשברת בעיצוב, או מציגה למשתמש תבנית גולמית במקום הערך.
קיצורים בממשק מחמירים את התמונה: "הגדרות", "כמות", "עריכה" אין להם התאמה מילונית יציבה, והמודל מכניס מילה נרדפת אקראית, ושובר אחידות בכל המוצר.
אחר כך מתחילה אי-אחידות במונחים. כאשר כל מחרוזת מתורגמת בנפרד, אותו מושג במסכים סמוכים נשמע אחרת, ולפעמים גם בשלושה נוסחים באותו מסך. המשתמש מאבד התמצאות: לא ברור אם "פרופיל", "חשבון" ו"חשבון משתמש" מובילים לאותו אזור.
סוגר את הכל מעגל התיקונים הידניים לאחר הבנייה. הם נעשים ישירות בקבצי הלוקליזציה המוכנים, אינם חוזרים לזיכרון התרגומים ולמילון המונחים, והבנייה הבאה מוחקת את התיקונים או מביאה שגיאות חדשות באותן מחרוזות. נבחן כיצד זה נסגר בלוקליזציה מבוססת AI, שרואה את הקשר המסך בשלמותו, ולא מחרוזת בודדת.
מה נותנת לוקליזציה הקשרית של ממשק מבוססת AI
לוקליזציה אוטומטית של ממשק עובדת לא עם מחרוזות בודדות, אלא עם מקטעים: כל מחרוזת נשלחת לתרגום יחד עם מפתח, שם מסך, הגבלת אורך ותצלום של המקום שבו היא מוצגת. המודל רואה ש"שמור" הוא כפתור בחלון מודאלי, ולא פריט בתפריט, ובוחר צורה לפי מין, מספר ויחסה.
משתנים בתוך מחרוזות, צורות רבים וקישורים מקוננים נבדקים לפני הבנייה, ולכן החלפה שבורה לא שורדת עד סביבת הבדיקות.
אחידות טרמינולוגית נשענת על מילון מונחים וזיכרון תרגומים. מילון המונחים קובע מונחים מחייבים ואפשרויות אסורות, והזיכרון מחזיר מקטע שאושר קודם, אם טקסט המקור לא השתנה.
בעת תיקונים במוצר נבנים מחדש רק המקטעים שנפגעו, והשאר נלקח מהמאגר המצטבר — לכן גרסה לשונית חדשה יוצאת באופן אינקרמנטלי, ולא נבנית מאפס.
בפועל, שיעור המחרוזות שמגיעות לעריכה ידנית יורד מרוב לכמה אחוזים בודדים, ומקומות שנויים במחלוקת חוזרים לעורך עם ציון הסיבה לבחירה דווקא באפשרות הזו. החלפת מקטעים מתבצעת בתקן התעשייתי XLIFF, ולכן התוצרים אינם נעולים בכלי אחד ועוברים בין עורכים לגרסאות מוצר.
לוח הזמנים לשחרור גרסה לשונית נקבע כבר לא לפי היקף הטקסט, אלא לפי הזמן לבדיקת מקטעים שנויים במחלוקת — בדרך כלל ימים במקום שבועות. הטרמינולוגיה לא מתפזרת: בכל מהדורה נבדק שהטקסט החדש משתמש באותם מונחים, וסטיות מגיעות לדוח עבור העורך, ולא לממשק.
פורמטים של תרגום: לפי ביטוי, הקשרי, עם מילון מונחים
האפשרויות נבדלות לא באיכות התרגום כשלעצמה, אלא בכמות המידע על המוצר שאנו מזינים לקלט. תרגום לפי ביטוי לוקח מחרוזת מבודדת, הקשרי — יחד עם המסך, האלמנטים הסמוכים ונתוני ההחלפה, ומילון המונחים של הפרויקט וכללי הסגנון קובעים את הטרמינולוגיה והטון מעל כל אחד מהמצבים. מכך תלוי היכן המערכת טועה וכמה בדיקה ידנית נשארת בפלט.
| אפשרות | מתי מתאימה | מגבלות |
|---|---|---|
| תרגום לפי ביטוי | כיתובים קצרים, כפתורים, סטטוסים; שפות עם מורפולוגיה פשוטה | הומונים וביטויים קרועים יוצרים שגיאות, מין ומספר אינם תואמים לערכים המוחלפים |
| תרגום הקשרי | רמזים, טקסטי שגיאה, הודעות, מסכים עם מורפולוגיה עשירה | יש צורך בייצוא מסכים וקישור מפתחות לבלוקים; בעת עדכון הממשק יש לבנות מחדש את הקישור |
| מילון מונחים של הפרויקט | מוצרים עם טרמינולוגיה מבוססת, נושאים תחומיים ורגולטוריים | יש לתחזק את המילון: מילים נרדפות, התנגשויות מונחים, צורות יחסה, רישיות שמות |
| מילון מונחים וכללי סגנון | כמה צוותים, טון אחיד, טקסטים ארוכים של עזרה ואונבורדינג | יותר הכנה ובדיקה ידנית; כללים בלי בדיקות אוטומטיות מתפצלים בין מהדורות |
בפועל, המצבים אינם מתחרים אלא משתלבים: תרגום לפי ביטוי נשאר למפתחות קצרים, הקשרי מופעל היכן שהמחרוזת תלויה בסביבה, ומילון המונחים וכללי הסגנון פועלים מעל שניהם.
מקרים שנויים במחלוקת עוברים לבדיקה ידנית לפי סימן פורמלי — סטייה ממילון המונחים, אורך, שבירת החלפה — ולא לפי טעמו של המבצע. מכאן השאלה היא כיצד מחרוזות נכנסות למערכת ומה קורה להן בעת עדכון המוצר.
כיצד אנו מטמיעים תרגום הקשרי של ממשקים
לוקליזציה נשברת לא בתרגום עצמו, אלא בהקשר: המחרוזת "ביטול" על כפתור ובהודעת מערכת דורשת מין ואורך שונים, ובלי סימונים המתרגם בוחר באקראי. לכן אנו מנהלים את העבודה כתהליך הנדסי — מביקורת מחרוזות ועד נוהל שלפיו טקסטים חדשים אינם שוברים מסכים שכבר נבנו.
- ביקורת מחרוזות ממשק. מייצאים מחרוזות מקבצי משאבים ותבניות, מסמנים כפילויות שמשמשות במקומות שונים, ומפרידים את מה שמתוקן ידנית לפי דרישות משפטיות.
- תיוג הקשר. המחרוזת מקבלת מסך, תפקיד אלמנט, הגבלת אורך, מין ומספר, רשימת משתני החלפה — לפיהם המודל מבחין בין כותרת לכיתוב כפתור.
- הגדרת כללי תרגום. מילון מונחים, רשימת "לא לתרגם" (מפתחות, שמות פרטיים, קודי שגיאה) ופנייה אחידה למשתמש, כדי שהניסוחים לא יתפצלו בין מסכים.
- מסלול בדיקות. בונים עותק של המוצר ובוחנים מסכים אמיתיים: חיתוך טקסט, מעברי שורה, החלפת משתנים, כיוון טקסט מימין לשמאל, היכן שצריך.
- קבלת התרגום. דובר שפת אם בוחן מקומות שנויים במחלוקת — ניבים, קיצורים, פניות — ומחזיר תיקונים יחד עם הסיבה, כדי שהכלל ייכנס למילון המונחים ולא למחרוזת אחת.
- נוהל עדכון. בלי הקשר מחרוזת לא עוברת לבנייה, ומילון מונחים ששונה מדגיש מקומות שכבר תורגמו לבדיקה חוזרת.
לאחר הקבלה הצוות מקבל מפת מחרוזות, מילון מונחים וכללים: עדכון הממשק עובר באותו מסלול ואינו הופך לבדיקה ידנית של מסכים.
תוצרי הפרויקט: מילוני מונחים, כללים, לוחות בקרה
פרויקט לוקליזציה של ממשקים חי יותר זמן מההטמעה: מונחים מופיעים, מסכים משתנים, שפות מתווספות. לכן יחד עם מערכת עובדת אנו מוסרים תוצרים שצוות הלקוח עורך בעצמו, בלי לפנות אלינו.
- מילון מונחים — מושגי מוצר וטכניים עם מילים נרדפות אסורות וסימון "לא לתרגם"; המערכת לוקחת אותם מהמילון, ולכן מונח אחד נשמע זהה בכל המסכים והשפות.
- כללי סגנון לכל שפה — פנייה למשתמש, רישיות, אורך כפתורים וכיתובים, פורמט מספרים ותאריכים; קובץ הכללים נערך בלי לבנות מחדש את המערכת.
- לוח בקרת איכות — שיעור המחרוזות שעברו בדיקה, תור מקטעים שנויים במחלוקת וסטיות ממילון המונחים: רואים היכן המערכת בטוחה והיכן נדרש אדם.
- תיעוד התרגום — תיאור התהליך, התפקידים ונקודות הבדיקה; מהנדס חדש נכנס לעבודה לפיו, ולא לפי התכתבות.
- נוהל עדכון מילונים — מי ואיך מוסיף מונח, כמה דוגמאות נדרשות לקבלת תיקון ואיך מחזירים אחורה כלל שלא הצליח.
- מערכת מחרוזות בדיקה עם תשובת ייחוס — רצה אוטומטית אחרי כל תיקון, והרגרסיה נראית לפני המהדורה.
- יומן החלטות — מקרים שנויים במחלוקת עם נימוק הבחירה, כדי שאף אחד לא ימציא מחדש את מה שכבר הוחלט כעבור חצי שנה.
כל זה נשמר במאגר שלכם ומנוהל בגרסאות יחד עם הקוד: תיקון עובר בדיקה, וניתן לחזור לכל גרסה קודמת של המילון. התמיכה אינה דורשת אותנו — אנחנו נשארים לפיתוח, ולא לתיקונים שגרתיים.
מקרה בוחן: השקת מוצר בשמונה שפות בלי עריכה ידנית
מה היה לפני
המוצר של הלקוח — לוח בקרה לניהול תשתיות רשת בשמונה שפות ממשק. המחרוזות חיו בטבלאות מסוג "מפתח — טקסט": המתרגם קיבל קובץ בלי הקשר ולא ראה היכן המחרוזת תופיע, איזה מין יש לה וכמה מקום מוקצה לה על המסך.
העורך החזיר לעבודה מחדש כ-32% מהמחרוזות, המונחים התפצלו בין השפות, והוצאת שפה חדשה אחת ארכה שישה שבועות.
מה שינינו
המחרוזות ומילון המונחים אוחדו ב-Phrase, ולכל מחרוזת משויך אוטומטית הקשר: צילום מסך, כיתובים סמוכים, הגבלת אורך, סימן נטייה. מילון המונחים קבע מונחים עם איסור מילים נרדפות, וזיכרון התרגומים מציב ניסוחים מאושרים במקום תרגום חוזר.
בניית המהדורה מריצה בדיקות: תגיות החלפה לא סגורות, חריגה מאורך, מונחים מחוץ למילון. בדיקה נכשלה — השפה לא נכנסת למהדורה, ולא צפה בממשק אצל המשתמש.
מה נהיה
שיעור התיקונים הידניים לאחר העורך ירד מ-32% ל-4% — התיקונים נוגעים לסגנון, ולא למשמעות ולטרמינולוגיה. מונחים שנויים במחלוקת בממשק הצטמצמו מ-180 ל-12, וכולם נסגרו בהחלטות מילון המונחים.
הוצאת שפה אורכת תשעה ימים במקום שישה שבועות: התרגום מתקדם במקביל לפיתוח, הבדיקות מבוצעות בכל בנייה, ולא בסוף. הוספת שפה תשיעית הצטמצמה לחיבור מערכת מחרוזות — התשתית, הבדיקות ומילון המונחים כבר עובדים.
במה תרגום הקשרי שונה מתרגום לפי ביטוי?
תרגום לפי ביטוי חותך את הממשק למקטעים ומעבד כל אחד בנפרד: לקלט נשלחת מחרוזת אחת בלי מפתחות סמוכים, מסך ותפקיד משתמש. זה עובד מהר ובאופן צפוי, אבל הומונימיה, מין וסדר מילים המערכת מנחשת לפי שכיחות — "פתח" בפריט תפריט ובדיאלוג אישור מקבלים את אותה אפשרות.
גישה הקשרית מזינה לקלט קבוצה: מפתחות סמוכים, סוג אלמנט (כפתור, כיתוב, טקסט שגיאה), הגבלת אורך וטרמינולוגיה מאושרת של המוצר. המערכת רואה שלפניה כותרת מדור משלוש מילים, ולא חלק ממשפט, ובוחרת צורה לפי כללי השפה, ולא לפי סטטיסטיקה.
| גישה | מה המערכת רואה | היכן המשמעות אובדת | מגבלות |
|---|---|---|---|
| לפי ביטוי | מחרוזת אחת בלי שכנים | הומונים, מין, סדר מילים | טרמינולוגיה לא נשמרת בין מסכים |
| הקשר מקטע | מחרוזת, מפתחות סמוכים, סוג אלמנט | לעיתים רחוקות — בניבים ובראשי תיבות | נדרשים קשרי מפתחות מתויגים |
| הקשר ומילון מונחים | מחרוזת, סביבה, מונחים מאושרים, גרסאות קודמות | כמעט לא אובדת | דורש סקירת טרמינולוגיה ועדכון זיכרון התרגומים |
מגבלות התרגום לפי ביטוי אינן ניתנות לריפוי בגודל המודל: אם המשמעות לא הועברה לקלט, אין במה לשחזר אותה. ההבדל מורגש במיוחד בטפסים, בשגיאות אימות וברמזים, שבהם המחרוזת תלויה במצב המסך.
אנו מתעדים את ההקשר בתקן ההחלפה XLIFF: מפתח, טקסט מקור, הערות וקשרים ליחידות סמוכות נוסעים יחד עם המקטע, ולכן הסביבה לא אובדת בייצוא ובבנייה חוזרת. סקירה ידנית בכל זאת נשארת — טרמינולוגיה וניסוחים בעלי משמעות משפטית נבדקים בידי אדם.
ספקות טכניים נפוצים לפני תחילת הפרויקט
לפני ההתחלה מהנדסים ומנהלי תחום שואלים שאלות דומות: איך לוודא שהתרגום לא "יזלוג" בממשק, מה לעשות עם תרגומים קיימים וכיצד לחבר מילון מונחים כדי שהמונחים יישארו אחידים. להלן תשובות קצרות שבדרך כלל מסירות ספקות לפני הערכת העבודה.
כולן עוסקות במכניקה: על מה בודקים, כיצד מעבירים מחרוזות קיימות ומה משמש כנקודת חזרה. אם השאלה שלכם אינה כאן — נבחן אותה בנפרד ונכניס אותה לתוכנית.
איך לבדוק את איכות התרגום לפני המהדורה?
מרכיבים מערכת ביקורת של מחרוזות מהמוצר שלכם — כותרות, כפתורים, טקסטי שגיאה, הודעות. סטיות במונחים ובאורך הכיתובים נכנסות לדוח שאתם קוראים לפני העלייה לאוויר.
יש לנו תרגומים מוכנים — לעשות הכל מחדש?
לא. מעבירים את הקבצים הקיימים, משווים מפתחות ומציגים התנגשויות: היכן התרגום הישן סוטה ממילון המונחים או מהקשר המסך. ההחלטה לגבי כל מחרוזת נשארת בידיכם.
איך מחברים מילון מונחים?
בקובץ עם זוגות "מונח — תרגום" ובעדיפות גבוהה מהמודל: הוא דורס את בחירת המערכת. מונחים חדשים מוסיפים תוך כדי, והשינויים נכנסים לתוקף מהבנייה הבאה.
מה אם אחרי המהדורה הניסוחים לא יתאימו?
מערכי תרגום מנוהלים בגרסאות. מהדורה שלא הצליחה מוחזרת אחורה למערך הקודם בשלמותה, ותיקון של מחרוזת בודדת אינו דורש בנייה מחדש של שאר הממשק.
נדון במשימת תרגום הממשק ונחזור עם תוכנית
כדי שההערכה תישען על עובדות ולא על תחושות, אנחנו צריכים סקירה קצרה של הממשק שלכם: ממה הוא מורכב, כיצד הוא מתעדכן ואילו גרסאות שפה נדרשות קודם. תארו את המשימה — נחזור עם תוכנית עבודה, לוחות זמנים לפי שלבים והרכב הצוות.
בסקירה נבהיר:
- היקף: כמה מסכים ומחרוזות, היכן הטקסטים נמצאים בקוד והיכן במערכת ניהול התרגומים;
- הקשר: אילו נתונים דרושים למודל כדי להבחין בין תפקיד המשתמש, מצב המסך ומשמעותן של מחרוזות זהות במקומות שונים;
- שפות ועדיפויות: אילו גרסאות משיקים ראשונות, האם נדרשים כתיבה מימין לשמאל, נטיות וניסוחים באורכים שונים;
- מילון מונחים: כיצד מקבעים שמות מוצר, מונחים, יחידות מידה, פורמטי תאריכים ומספרים;
- הטמעה: היכן מחברים את התרגום — בצינור הבנייה, בעורך התוכן או בשניהם;
- נוהל עדכונים: כיצד מחרוזות חדשות נכנסות לתרגום וכיצד תיקוני העורך חוזרים למוצר בלי לאבד דבר;
- הרשאות וקבלה: מי מצד הלקוח מאשר את האיכות ולפי אילו קריטריונים אנו מחשיבים את השלב כסגור.
בסיום אתם מקבלים מפת מחרוזות, מילון מונחים, כללי טיפול בהקשר, תרשים הטמעה בתהליך הבנייה שלכם ותוכנית להשקה ראשונה בגרסת שפה אחת. בהמשך נרחיב לשאר, בלי לשנות את הבסיס. כתבו לנו מהו הממשק ואילו שפות בעדיפות — נחזור עם הערכה ותוכנית עבודה.







