Автоматичний аналіз зображень для packshot-ів з плагінів

Packshot-и, зареєстровані через Plugin API, тепер автоматично аналізуються для виявлення контексту продукту, тож завдання генерації дають якісніший результат без додаткової роботи з боку магазину.

Кожен packshot, зареєстрований через POST /plugin/packshots, тепер у фоновому режимі проходить через аналізатор зображень Qamera. Аналізатор визначає, з якого боку показаний продукт (перед, зад, бік, верх, низ), виявляє наявність тексту на фото, описує фон і додатково виводить поля на рівні продукту, такі як загальна категорія та характеристики. Отримані метадані зберігаються в каталозі інсталяції та автоматично використовуються в промптах генерації — без додаткових викликів API, заголовків чи прапорців, що активують цю функцію.

Для магазинів це означає помітно кращі результати генерації: плутанина зі стороною продукту (наприклад, задня сторона згенерована як передня) та втрата тексту з упаковки — дві найпоширеніші проблеми — усуваються в самому джерелі. Packshot-и, завантажені без окремого source_image_ref, більше не потребують його; API автоматично створює відповідний запис вихідного зображення, а ідентичний вміст, надісланий двічі, дедуплікується за хешем без повторного аналізу.

Кілька змін у поведінці, про які варто знати авторам плагінів:

  • Завдання, які посилаються на packshot, не зареєстрований заздалегідь, тепер завершуються з новим типом помилки PLUGIN_JOB_MISSING_CATALOG_ENTRY. Зареєструйте packshot через POST /plugin/packshots (або еквівалентну мутацію каталогу) перед надсиланням завдань.
  • На webhook-ах webhook.failed можуть з’явитися два нових типи помилок — PREPARE_PHOTOS_TIMEOUT та PREPARE_PHOTOS_FAILED — коли аналізатор працює занадто довго або відхиляє зображення. Обидві — постійні помилки; причина видима у тілі webhook-а.
  • Опціональні поля product_name, product_specific_category, product_side та product_general_category у тілі POST /plugin/jobs тепер вважаються застарілими. API все ще приймає їх для зворотної сумісності, але ігнорує передані значення — еквіваленти з каталогу керують промптом. Повне вилучення цих полів відбудеться у наступному релізі; ми рекомендуємо прибрати їх з тіл запитів.

Існуючі інтеграції продовжують працювати без змін у коді; нова поведінка лише додає аналіз, нічого не ламаючи.