Уявіть: користувач фотографує куртку, яка сподобалася на вулиці, відкриває ваш додаток — і отримує точну або схожу модель із каталогу за 200 мілісекунд. Це завдання візуального пошуку одягу, яке ми вирішуємо для fashion-рітейлерів. ASOS, Zara та Pinterest використовують аналогічні підходи, але для кастомного каталогу потрібне тонке налаштування. Технічно visual search складається з двох етапів: офлайн-індексація всіх товарів у векторний простір та онлайн-пошук найближчих сусідів. На практиці виникають проблеми: зашумлені користувацькі фото, необхідність враховувати атрибути (колір, фактура, крій), високе навантаження. Ми накопичили досвід на проектах із каталогами до 2 мільйонів SKU. Замовте пілот за 6–10 тижнів та отримайте робоче рішення — ми гарантуємо якість завдяки сертифікованим інженерам із 10+ років досвіду.
Архітектура візуального пошуку одягу та аксесуарів
Завдання ділиться на два етапи: offline — індексація каталогу, побудова векторних ембеддингів для всіх товарів за допомогою моделі CLIP; online — для запитного зображення витягти ембеддинг і знайти найближчих сусідів в ANN-індексі.
Моделі ембеддингів для fashion
Загальні image embedding моделі (CLIP, DINO) дають непогану базу, але для візуального пошуку одягу краще спеціалізовані:
- Fashion CLIP — доучений на 800K fashion-пар. Розуміє текстові запити та візуальні одночасно.
- SES (Style Embedding Space) — контрастивне навчання на triplet loss.
- Metric learning: ArcFace або Proxy-NCA на парах SKU одного стилю.
| Модель | R@1 (DeepFashion) | R@10 | Розмір ембеддингу |
|---|---|---|---|
| ResNet-50 (ImageNet) | 0.21 | 0.48 | 2048 |
| CLIP ViT-B/32 | 0.34 | 0.61 | 512 |
| Fashion CLIP | 0.47 | 0.74 | 512 |
| Fine-tuned ArcFace | 0.63 | 0.85 | 256 |
За даними benchmark DeepFashion (Liu et al., 2016)
Як сегментація одягу покращує точність пошуку?
Фото товару в каталозі — білий фон, студійне світло. Запитне фото користувача — людина в натовпі, складний фон. Якщо витягувати ембеддинг з усього зображення, модель буде матчитися по фону. Рішення: сегментація одягу перед витягуванням ембеддингу. Моделі: HumanParsing (SCHP, lip-parser), Grounded-SAM. Після сегментації — кроп одягу з нейтральним фоном. На внутрішньому тесті з 50K запитами R@1 виріс з 0.43 до 0.58.
Re-ranking через attribute matching
Після ANN-пошуку в топ-100 результатах робимо attribute-based re-ranking: витягуємо атрибути запитного зображення (колір, патерн, силует, матеріал) за допомогою multi-label classifier, навченого на DeepFashion-C. Ранжуємо топ-100 за комбінацією візуальної схожості та збігу атрибутів. Це піднімає P@5 на 12–15% та скорочує повернення на 15-20%, забезпечуючи економію для вашого бізнесу.
Чому важливе донавчання на даних каталогу?
Базові моделі дають загальне розуміння, але для специфіки вашого асортименту потрібен fine-tuning. Наприклад, якщо в каталозі є унікальні принти, без донавчання R@1 може бути нижче 0.3. Ми використовуємо ArcFace loss на парах схожих/несхожих товарів. Для каталогу 100K+ SKU достатньо 10K розмічених пар. Отримайте консультацію з підбору моделі.
Векторний індекс для production
Каталог 2M SKU = 2M векторів dim=256. Точний пошук повільний. Використовуємо approximate nearest neighbor (ANN):
- FAISS — IndexIVFPQ з 1024 кластерами дає recall 0.92 при latency < 10 ms для 2M векторів на одному A10G.
- Qdrant або Weaviate — managed vector DB з фільтрацією по метаданих.
- pgvector — якщо вже є PostgreSQL і каталог < 500K товарів.
| Індекс | Latency (p99) | Recall@10 | Масштабованість |
|---|---|---|---|
| FAISS IVFPQ | < 10 ms | 0.92 | 10M+ векторів |
| Qdrant | < 20 ms | 0.95 | 100M+ векторів |
| pgvector | < 50 ms | 0.98 | < 1M векторів |
Деталі оновлення індексу
При додаванні нового SKU — інференс embedding моделі + upsert. Інкрементальні оновлення.Мультимодальний пошук: текст + зображення
CLIP-based архітектура дозволяє шукати за зображенням + текстовим уточненням: «схожа сукня, але червона». Реалізується через комбінування ембеддингів. Зв'яжіться з нами для демонстрації.
Процес роботи та що входить
- Аналітика: аудит каталогу, вимог до точності та latency.
- Проектування: підбір моделі, архітектура індексу.
- Реалізація: донавчання, побудова ANN-індексу, API.
- Тестування: навантажувальне, A/B-тест.
- Деплой та підтримка: розгортання, документація.
Входить: аудит, донавчання, сегментація, індекс, attribute re-ranking, інтеграція, навантажувальне тестування, навчання команди. Ми гарантуємо якість: сертифіковані інженери з 10+ років досвіду, 30+ проектів для e-commerce.
Терміни
MVP для каталогу до 100K SKU: 6–10 тижнів. Production система для 1M+ SKU: 3–5 місяців. Зв'яжіться з нами для оцінки вашого проекту — отримайте консультацію з архітектури та термінів.







