עוזר עיצוב שפועל על המכשיר שלך - אין חשבון, No Server
עוזר AI של AI הופך מהיר לתוך סצנה אמיתית באמצעות מודל שפה שפועל לחלוטין בדפדפן שלך. הנה האדריכלות - כלי מוגבל קורא, שני ספקים, וכן חשבון ישר על מה מודל זעיר יכול ולא יכול לעשות.
On this page
ההנחה
רוב כלי עיצוב AI שולחים את המהירות לשרת, להפעיל מודל גדול ולשלוח קוד בחזרה. זה צריך חשבון, רשת עגולה ואמון כי העבודה שלך- in-progress מעבירה את התשתית של מישהו אחר.
רצינו לדעת כמה רחוק הולך השני קיצוני: עוזר עיצוב שבו המודל פועל על המכונה שלך. לא חשבון. לא להעלות. הסיבה לעולם לא עוזבת את הדפדפן. עכשיו זה חי בעורך של PinePaper כטייס ניסיוניAI / Code - עוזר **, ופוסט זה הוא חשבון ישר על איך זה עובד ואיפה הוא נופל קצר.
למה לא רק לבקש את המודל לקוד?
הגישה הברורה היא לשאול את מודל ה- on-device לכתוב JavaScript נגד API של API ולנהל אותו. ניסינו את זה. זה נכשל רע.
מודלים קטנים - אלה שמתאימים למחשב נייד - *לא ידע על API של אפליקציה מסוימת שאל מודל 0.5-2B כדי להתקשר PinePaper.create() והוא אינו מבטיח: מפתח השיטה אינו קורא (דגם SVG בסגנון fill שבו API מצפה color), שיטה שהיא דמיינה, טיעונים בצורת הלא נכונה. הפלט נראה כמו קוד, ועושה את הדבר הלא נכון.
אנחנו לא מבקשים קוד. אנו מבקשים רשימה מוגבלת של שיחות כלים: **
[
{ "name": "pinepaper_set_background_color", "arguments": { "color": "#0F0F1A" } },
{ "name": "pinepaper_create_item", "arguments": { "itemType": "star", "x": 400, "y": 300, "radius": 90, "color": "#E74C3C", "animationType": "pulse" } }
]
אותו אוצר מילים PinePaper's MCP Server חושף סוכנים חיצוניים אך הנפלט על ידי מודל פועל באופן מקומי, והוצא להורג על הבד באמצעות משגר קטן.
ייצור לא חוקי בלתי אפשרי
הצעד העיקרי הוא **מחוסן מחוספס. במקום לקוות שהמודל מייצר צורה תקפה, אנו מגבילים את מה שמצביע על כך שהוא אפילו יכול להיפלט: *
- ב-Chrome's Built-in Prompt API (Gemini Nano), אנו עוברים JSON Schema כמגבלה תגובה. המודל יכול רק לייצר אובייקטים אישורי הschema - עם
additionalProperties: false, כל טיעון שהschema אינה מגדיר הוא פשוטו כמשמעו בלתי ניתן לייצג. - ב WebLLM (מודל פתוח פועל על WebGPU), אנו מייחסים דקדוק *EBNF באמצעות XGrammar. הדקדוק מכתיב את המבנה; המודל ממלא רק את הערכים.
שניהם מייצרים את אותה צורת דיבור כלי. תיקון קטן עובר אז להציל את השליחים ליד מודל זעיר עדיין עושה - name, טיעונים ללא העטיפה שלהם על ידי הפניית הכלי בצורת הטיעון. התוצאה היא ש"סגת עטון ירוק" הופכת לקריאות create_item אמיתיות במקום טעות.
לעבור בין השלושה למטה. שתי האפשרויות המגבילות נראות זהות על מטרה: זו הטענה. מה שמשתנה ביניהם הוא המנגנון, לא התוצאה.
שני ספקים, חוזה אחד
AI אינו דבר אחד - תלוי בדפדפן:
- Browser AI Chrome's Built-in Gemini Nano (
window.LanguageModel). הדוגמניות עם הדפדפן, אין מה להוריד מאיתנו. זהו הנתיב אמין ביותר כיום, כי ה- JSON-schema הוא זול ונתמך היטב. - PinePaper AI WebLLM פועל מודל Qwen2.5 בכל דפדפן WebGPU. הוא מוריד מודל פעם אחת (כצפוי לאחר מכן), ולאחר מכן רץ במצב לא מקוון.
- Languages הפניות לא-אנגלית מתורגמות לאנגלית על-הדק הראשון (באמצעות המתרגם המובנה של הדפדפן), משום שהמודלים המוכווני הקוד הקטנים הם אנגלים ממוקדים. הסצנה שנוצרת זהה ללא קשר לשפה מהירה.
המשתמש בוחר את המנוע; הכל למטה - המעצור, המתגלה, הבד - זהה.
עריכה, לא רק מייצרת
גנרטור צילום אחד אינו עוזר. כדי לתמוך "לעשות את הכוכב האדום", המודל צריך לדעת מה כבר על הבד. אז כל סיבוב אנחנו להאכיל אותו תמונה קומפקטית של הפריטים הנוכחיים - העפעפיים, הסוגים והצבעים – בדיוק כמו צ'אט בצד השרת. "לעשות את הכוכב אדום" ואז לפתור שיחת modify_item אמיתית נגד id הפריט. (ובגלל שמודל קטן מתייחס לעיתים ל-"The circle" כאשר זה אומר לכוכב, ה-executor פותר אזכורים מטושטשים נגד הבד החי)
יומן השיחה נשמר על המכשיר שלך באחסון מקומי. שום דבר על זה לא נשלח בשום מקום – אלא אם כן אתה בוחר במפורש לשתף הפניות כושלות, אשר מסייע לנו לשפר את ההפניות והדקדוק.
כאשר המודל הקטן אינו מספיק – ההסלמה
הנה החלק הישר: *דגם 0.5-2B הוא השכבה החלשה ביותר. ערבויות מרתיעות - מבנה לא חוקי, אבל המודל עדיין צריך לבחור את הכלי הנכון ואת הערכים ההגיוניים, וזה לא תמיד יהיה. לבקש מטוגן ומודל תחת פיקוח נותן לך hexagon; לבקש פעמיים עבור "אדום" והוא עשוי להפעיל גנרטור במקום.
אז האדריכלות מתייחסת ל-device כשכבה * First*, לא היחידה. לאחר כמה ניסיונות כושלים, עוזר עוזר מציע **ליד את כל השיחה עד מודל הענן אותו דבר, אותו הבד, מודל הרבה יותר מוכשר – ואתה ממשיך בדיוק לאן עזבת. נאמנות נמוכה, חופשית ופרטית, עם מסלול אחד של לחץ על נאמנות גבוהה כאשר אתה צריך את זה.
מה למדנו
- המתחרים פוצצו מהר. מערכת מבוססת עוזר; דקדוק / סכמה שהופך את התפוקה הבלתי נגמרת לבלתי אפשרית עוזר הרבה יותר. הקפיצה הגדולה ביותר של האמינות הייתה מרתיעה מחוספסת, לא ממהירות טובה יותר.
- גודל מנדל עדיין שולט נסיעה מ-0.5B למודל 1.5B שיפרה באופן מודע את האופן שבו עוזר בוחר את הכלי הנכון. אין דרישה שהופכת מודל זעיר לדגם חכם.
- הדקדוק המלא יכול להיות גדול מדי הדקדוק הראשון שלנו מקודד *כל פעולה אפשרית - כולל בריחה באורך מוגבל עבור קוד ציור שרירותי. זה היה כל כך גדול כי מחוספס מחוספס את הדף. דקדוק קומפקטי המכסה את הפעולות הנפוצות הוא ברירת המחדל הנכונה; פני השטח המלא הוא אופטימלי.
- רוץ אותו מהחוט הראשי מודל שעושה את ההקצאה על חוט UI להקפיא את הדף. WebLLM פועל ב- Web Worker, כך שהעורך נשאר קשוב בעוד מודל נטען ומייצר.
מה הבא
זה ניסיוני ושיפור. על מפת הדרכים:
- סיקור כלי על מסלול מוגבל יותר ממבצעים של PinePaper ניתנים לביטוי ללא פלטה חופשית.
- Larger on-device מודלים כמו קטלוג מודל WebGPU גדל, נפח הורדה המסחר עבור אמינות.
- ** הלובש חזק יותר - באמצעות דוחות כישלונות אופטימליים למדידה אשר מזרזים את המודלים על הדלפק ומקשה על הדקדוק נגדם.
- חלק יותר ב-Device, Cloud Handoff, כך שהסלמה מרגישה כמו לסובב את חיי התקשורת האיכותיים ולא להחליף כלים.
קו דרך: אותו אוצר מילים כלי הבהרתי מניע מודל משני צד של גבול הדפדפן. סוכן חיצוני קורא כלים אלה על פני MCP; מודל על-יד קורא את אותם הצורות באופן מקומי. חוזה אחד, סוכנים בכל מקום שבו הם רצים.
*נסו את זה בעורך - פתח *AI / Code. זה חינם, רץ על המכשיר שלך, ולא צריך חשבון.
Ready to create?
Start making animated GIFs, videos, and graphics — free, no signup.
Open PinePaper Editor