Агрегатор цен на электронику с матчингом на LLM
Задача
Цены на одну и ту же электронику у разных магазинов отличаются, но единого каталога и общего ID товара нет: у каждого магазина свои названия («iPhone 15 128GB» против «Apple iPhone 15 128 ГБ чёрный»), сайты JS-тяжёлые и недружелюбны к парсингу, а критерий «это один и тот же товар» меняется от категории к категории — у смартфона это модель и память, у ноутбука бренд, модель, RAM и SSD. Чтобы сравнивать честно, сначала нужно решить задачу идентичности — на тысячах позиций.
Решение
Собрали category-aware пайплайн на Python: слой discover + парсинг под каждый магазин (для JS-тяжёлых и анти-бот сайтов — Playwright), нормализация в идентификационный ключ по категории (например, бренд│модель│RAM│SSD для ноутбуков), затем матчинг в два прохода — сначала детерминированные правила по бренду, модели и характеристикам, а оставшиеся спорные пары добивает LLM (Claude Haiku). Всё гоняется одним пайплайном и выводится на публичный сайт на Next.js — со страницами категорий, сравнением цен по магазинам и оформлением в стиле Trust & Authority.
Результат
Агрегатор сравнивает цены пяти магазинов электроники по трём категориям — смартфоны, смарт-часы и ноутбуки, — и тот же каркас переносится на новую категорию малым объёмом кода (в основном правила и ключ идентичности под категорию). Связка правил и LLM держит матчинг устойчивым даже там, где названия и характеристики «грязные», а на публичном сайте покупатель сразу видит, где дешевле.
Обсудим вашу задачу?
Бесплатный аудит за 30 минут — покажем, что можно улучшить и сколько это стоит.
Запросить аудит