תרגום מצד הלקוח באמצעות AI

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

Maud Nalpas
Maud Nalpas
Kenji Baheux
Kenji Baheux
Alexandra Klepper
Alexandra Klepper

תאריך פרסום: 16 במאי 2024, עדכון אחרון: 17 בספטמבר 2024

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

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

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

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

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

אנחנו עובדים על לתרגום API בצד הלקוח, עם מודל מובנה ב-Chrome.

הדגמה של צ'אט

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

שימוש ב-Translator API

ל-Translator API יש שתי שיטות חשובות:

  • canTranslate(): בדיקה אם מודל התרגום לשפת היעד מוכן. הפונקציה מחזירה את הערך "readily" אם המודל כבר זמין במכשיר, את הערך "after-download" אם הדפדפן צריך קודם להוריד את המודל ואת הערך "no" אם לא ניתן לבצע תרגום.
  • createTranslator(): הפקודה הזו מגדירה את האובייקט Translator באופן אסינכרוני. אם צריך להוריד את המודל, הוא ימתין עד שהוא יהיה מוכן.

לאובייקט Translator יש רק method אחת:

  • translate(): מזינים לו את טקסט המקור ונותנים פלט של הגרסה המתורגמת.

נכון לעכשיו, זהו קוד ניסיוני וספציפי ל-Chrome, ולכן חשוב לכלול את כל הקוד בזיהוי התכונות.

const supportsOnDevice = 'model' in window && 'createTranslator' in model;
if (!supportsOnDevice) {
  return;
}

const parameters = { sourceLanguage: 'en', targetLanguage: 'pt' };
const modelState = await model.canTranslate(parameters);
if (modelState === 'no') {
  return;
}
const onDeviceTranslator = await model.createTranslator(parameters);

const result = await onDeviceTranslator.translate(input);
if (!result) {
  throw new Error('Failed to translate');
}
return result;

חולף זמן מה עד שהמודל זמין למשתמש. יש שתי דרכים לעשות זאת:

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

השלבים הבאים

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