Асистент дизайну, який працює на вашому пристрої - Ні акаунт, No Server
Помічник PinePaper на прикладі AI перетворює запит на реальну сцену за допомогою мовної моделі, яка повністю працює в браузері. Тут архітектура — підтримувані виклики інструментів, два провайдери і чесний рахунок чого може і не обійтися.
On this page
Приміщення
Більшість інструментів дизайну AI надсилайте запит на сервер, запустіть велику модель і відправте код назад. Для чого потрібен обліковий запис, мережевий круглий план, і довірте, що ваша робота-в-прогрес переходить в будь-яку іншу інфраструктуру.
Ми хотіли знати, як далеко інший екстремальний йде: А конструктор, де модель працює на власній машині.* Немає акаунту. Немає завантаження. Підказка ніколи не залишає браузера. Це тепер живе в редакторі PinePaper як експериментальний *AI / Code → Асистент вкладка, і це повідомлення є чесним обліковим записом, як це працює і де він падає коротким.
Чому не просто запитати модель для коду?
Ми можемо самі зателефонувати одержувачу і узгодити зручний час. Ми спробували його. Не вдалося.
Маленькі моделі — ті, які підходять для ноутбука — API.*** Запитайте модель 0.5-2B для виклику PinePaper.create() і він імпровізує: ключ метод не читається ( SVG-style fill, де API очікує color), метод його уявлявся, аргументи у неправильній формі. Введіть номер мобільного, який Ви вказали при укладаннi договору з банком - для ідентифікації.
Так ми не запитуємо код. Ми попросимо до****
[
{ "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 MCP сервер виставляє зовнішні агенти — але випромінюється модель, що працює локально, і виконується на полотні через невеликий диспетчер.
Виготовлення недійсного виходу
Ключовий рух - ** Замість захоплення моделі виробляє дійсну форму, ми протипоказаємо що токени це навіть дозволено випромінювати:
- На вбудованому Chrome Prompt API (Gemini Nano), ми проходимо JSON Schema в якості обмеження відповіді. Модель може виготовити тільки об'єкти, що посвідчують схему — з
additionalProperties: false, будь-який аргумент schema не визначає, що є буквально непередбачуваним. - WebLLM* (відкрита модель, що працює на WebGPU), прикріплюємо граматику*** через XGrammar. Граматика диктує структуру; модель лише заповнюється значеннями.
Як виробляють однакову форму інструментів. Невеликий ремонт, після чого сальвагує в ближньому порядку крихітна модель все ще робить — name, аргументи без обгортки — шляхом налаштування інструмента з форми аргументу. Результатом є те, що "зніміть зелений петагон" стає реальний виклик create_item замість помилки.
Перемикач між трьома нижче. Два обмежені варіанти виглядають ідентично мета: це претензія. Які зміни між ними є механізмом, не результат.
Два провайдера, один договір
ППГ0С не одне — залежить від браузера:
- Browser ППГ2X — Вбудований хром Gemini Nano (
window.LanguageModel). Модельні кораблі з браузером; немає нічого для завантаження з нас. Це найнадійніший на шляху розробки сьогодні, тому що JSON-schema constraint є дешевим і добре підтримується. - PinePaper ППГ4X — WebLLM запускає модель Qwen2.5 в будь-якому браузері WebGPU. Завантажує модель один раз (заплановано після цього), потім працює в автономному режимі.
- Languages* — — — *** — ————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————— неанглійські підказки перекладаються на англійську мову на-розробнику (через вбудований перекладач браузера), тому що маленькі моделі орієнтованих кодів є англійською мовою. Створена сцена є однаковою незалежно від мови підказки.
Користувач забирає двигун; все внизу — концентрат, виконавець, полотно — ідентичний.
Редагування, не просто генерувати
Одноразовий генератор не є помічником. Для підтримки «зробити зірку червоний», модель повинна знати, що вже на полотні. Так кожен поворот ми подаємо його компактним знімком поточних елементів — їх кришки, види і кольори — точно так само, як серверний чат буде. "Зробити зірку червоний" потім вирішить на реальний modify_item виклику проти ідентифікатора виробу. (І тому, що невелика модель іноді відноситься до "сірко" коли це означає зірку, виконавець вирішує нечітки посилання на живе полотно.)
Журнал бесіди зберігаються на вашому пристрої* у місцевому зберіганні. Ніщо про це відправлено в будь-який час — якщо ви явно оптимізуєте, щоб поділитися невдалими підказками, які допомагають нам покращити підказки та граматику.
Коли невелика модель недостатньо — ескалати
Ось чесна частина: *a 0.5–2B модель є найслабшим ярусом. Зміцнений декодування гарантує повна структура, але модель все ще має підібрати правильний інструмент і сенсаційні значення, і це не завжди не завжди. Запитайте на пентагон і підвидачену модель дає вам шестигранну; запитайте двічі на "червоний" і він може запустити генератор замість.
Ми можемо самі зателефонувати одержувачу і узгодити зручний час і місце вручення квітів, а якщо необхідно, то збережемо сюрприз. Після декількох невдалих спроб помічник пропонує мастурбує на всю розмову до Cloud model однакова, однакова полотна, набагато більш здатна модель — і ви продовжуєте точно, де ви залишили. Низький рівень, вільний і приватний, з одним клацанням шляху до високої чіткості, коли вам потрібно.
Що ми навчимося
- Концентрати збиті підказки. Підказка на заземлену систему; граматика/шмама, яка не дає ніякого виходу. Єдиний найбільший стрибок надійності прибув з обмеженого розшифрування, не від кращого підказка.
- Розмір моделі домінує. Зійшовши від 0.5B до 1,5B моделі помітно поліпшується, як часто помічник забирає правильний інструмент. Немає підказки, що перетворює крихітну модель в смарт.
- Повна граматика може бути занадто велика. Наша перша граматика закодована every можлива робота — включаючи обмежену довжину втечу люка для довільного коду малювання. Він був настільки великим, що протипоказаний декодування закріпив сторінку. Компактна граматика, що охоплює загальні операції, є правильним за замовчуванням; повна поверхня оптимізується.
- Run від основної нитки. Модель, що виконує навігацію на нитку UI, запускає сторінку. WebLLM працює в Web Worker, тому редактор залишається відповідальним, коли модельне навантаження і генерує.
Що далі
Це експериментальне і вдосконалення. На дорожню карту:
- Покриття інструменту в обмеженому шляху — більше операцій PinePaper, які виражаються без люка.
- Larger on-device моделі, як каталоги моделі WebGPU ростуть, розмір завантаження торгів для надійності.
- Ущільнювач вальвальної петлі — за допомогою оплачених звітів про відмову, щоб виміряти, які підкажуть поїздку до моделей на основі розробки та затвердити граматику проти них.
- А гладка на-розробці → Хмарний відключення, тому ескалація відчуває себе таким чином, щоб перетворювати якісний диал, а не переключаючи інструменти.
Лінія: той самий декларативний інструмент словника приводить модель на будь-якій стороні межі браузера. Зовнішній агент викликає ці інструменти над MCP; модель on-device викликає однакові форми локально. Один контракт, агенти, де вони працюють.
Спробуйте в редакторі — AI / Код → Асистент. Це безкоштовно, працює на вашому пристрої і не потребує облікового запису.
Ready to create?
Start making animated GIFs, videos, and graphics — free, no signup.
Open PinePaper Editor