תחילת העבודה עם AI מובנה

Alexandra Klepper
Alexandra Klepper

פורסם: 12 בדצמבר 2024, עדכון אחרון: 20 במאי 2025

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

דרישות

כדי להשתמש ב-AI מובנה, יש דרישות לגבי המודל והחומרה.

דגמים

ממשקי ה-API של Translator ו-Language Detector משתמשים במודלים מומחים. כל שאר ממשקי ה-API משתמשים במודל שפה שנועד לפעול באופן מקומי במחשבים ניידים ושולחניים.

ממשקי ה-API של Summarizer,‏ Writer,‏ Rewriter ו-Proofreader תומכים רק במודאליות של טקסט לטקסט. ‫Prompt API כולל יכולות של multimodal.

‫Gemini Nano ב-Chrome

ב-Chrome, מודל השפה הוא Gemini Nano. ‫Gemini Nano לא זמין במכשירים ניידים.

החל מגרסה Chrome 140,‏ Gemini Nano תומך באנגלית, בספרדית וביפנית לקלט ולפלט של טקסט.

לפני שמשתמשים בממשקי ה-API המובנים של AI, צריך לאשר את המדיניות של Google בנושא שימוש אסור ב-AI גנרטיבי.

חומרה

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

ממשקי ה-API של כלי זיהוי השפה והתרגום פועלים ב-Chrome במחשב. ממשקי ה-API האלה לא פועלים במכשירים ניידים. ממשקי Prompt API,‏ Summarizer API,‏ Writer API,‏ Rewriter API ו-Proofreader API פועלים ב-Chrome כשמתקיימים התנאים הבאים:

  • מערכת הפעלה: Windows 10 או 11;‏ macOS 13 ואילך (Ventura ואילך); Linux; או ChromeOS (מגרסה Platform 16389.0.0 ואילך) במכשירי Chromebook Plus. ‫Chrome ל-Android, ל-iOS ול-ChromeOS במכשירים שאינם Chromebook Plus עדיין לא נתמך על ידי ממשקי ה-API שמשתמשים ב-Gemini Nano.
  • אחסון: לפחות 22 GB של שטח פנוי בכרך שמכיל את פרופיל Chrome.
  • מעבד גרפי (GPU): יותר מ-4 GB של VRAM.
  • רשת: נתונים ללא הגבלה או חיבור ללא מדידה.

הגודל המדויק של Gemini Nano עשוי להשתנות כשהדפדפן מעדכן את המודל. כדי לראות את הגודל הנוכחי, אפשר לעבור אל chrome://on-device-internals.

אני רוצה להתחיל לפתח

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

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

אפשר להשתמש בכל ממשקי ה-API האלה כשמפתחים תוספים ל-Chrome.

הורדת המודל

ממשקי ה-API מובנים ב-Chrome, וכך גם המודלים. בפעם הראשונה שמשתמש מקיים אינטראקציה עם ממשקי ה-API האלה, המודל צריך להיות מורד לדפדפן.

כדי לקבוע אם אפשר להשתמש ב-API, מפעילים את הפונקציה האסינכרונית availability(), שמחזירה אובייקט promise עם אחד מהערכים הבאים:

  • "unavailable": המכשיר של המשתמש או האפשרויות המבוקשות לסשן לא נתמכים. יכול להיות שאין מספיק חשמל או מקום אחסון פנוי במכשיר.
  • "downloadable": נדרשים הורדות נוספות כדי ליצור סשן, שיכול לכלול מודל מומחה, מודל שפה או כוונון עדין. יכול להיות שתידרש הפעלת משתמש כדי להתקשר באמצעות create().
  • "downloading": ההורדות מתבצעות וצריכות להסתיים לפני שתוכלו להשתמש בסשן.
  • "available": אפשר ליצור סשן באופן מיידי.

הפעלת משתמש

אם המכשיר תומך בממשקי ה-API המובנים של AI, אבל המודל עדיין לא זמין, נדרשת אינטראקציה של המשתמש כדי להתחיל סשן עם create().

משתמשים במאפיין UserActivation.isActive כדי לאשר הפעלת משתמש, שיכולה להיות קליק, הקשה או לחיצה על מקש.

// Check for user activation.
if (navigator.userActivation.isActive) {
  // Create an instance of a built-in API
}

לדוגמה, באמצעות Summarizer API, אפשר לבקש מהמשתמשים ללחוץ על כפתור עם הכיתוב Summarize (סיכום) כדי להפעיל את Summarizer.create().

שימוש בממשקי API ב-localhost

כל ממשקי ה-API זמינים ב-localhost ב-Chrome.

  1. לעבור אל chrome://flags/#prompt-api-for-gemini-nano-multimodal-input.
  2. בוחרים באפשרות מופעל.
  3. לוחצים על הפעלה מחדש או מפעילים מחדש את Chrome.

כדי לוודא ש-Gemini Nano הורד ופועל כמצופה, פותחים את כלי הפיתוח ומקלידים await LanguageModel.availability(); במסוף. הפונקציה הזו אמורה להחזיר available.

פתרון בעיות ב-localhost

אם המודל לא פועל כצפוי, אפשר לנסות את השלבים הבאים:

  1. מפעילים מחדש את Chrome.
  2. לעבור אל chrome://on-device-internals.
  3. בוחרים בכרטיסייה Model Status (סטטוס המודל) ומוודאים שאין שגיאות.
  4. פותחים את כלי הפיתוח ומקלידים LanguageModel.availability(); במסוף. התוצאה צריכה להיות available.

אם צריך, מחכים קצת וחוזרים על השלבים האלה.

תהליך התקנים

אנחנו פועלים כדי לתקנן את ממשקי ה-API האלה, כדי שהם יפעלו בכל הדפדפנים. המשמעות היא שהצענו את ממשקי ה-API לקהילת פלטפורמות האינטרנט, והעברנו אותם לW3C Web Incubator Community Group להמשך דיון.

אנחנו מבקשים משוב מ-W3C, מ-Mozilla ומ-WebKit על כל API.

השתתפות ושיתוף משוב

אם ניסיתם את ה-AI המובנה ויש לכם משוב, נשמח לשמוע אותו.