Настройка ML-рекомендаций товаров на 1С-Битрикс

ML-рекомендации — это не «похожие товары из той же категории». Это модель, которая на основе паттернов поведения тысяч пользователей предсказывает, какой товар конкретный пользователь с наибольшей вероятностью добавит в корзину. Разница в конверсии между «похожими по категории» и реальными ML-рекоме
Услуги, которые мы предлагаем
Показано 1 из 1Все 1626 услуг
Настройка ML-рекомендаций товаров на 1С-Битрикс
Простой
~1 день

Наши компетенции:

Часто задаваемые вопросы

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1460
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Разработка веб-сайта для компании ФИКСПЕР
    1019
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    761
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    882
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    809
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    1163

ML-рекомендации — это не «похожие товары из той же категории». Это модель, которая на основе паттернов поведения тысяч пользователей предсказывает, какой товар конкретный пользователь с наибольшей вероятностью добавит в корзину. Разница в конверсии между «похожими по категории» и реальными ML-рекомендациями может быть в 2–4 раза. ML-рекомендации в 3 раза эффективнее статических блоков похожих товаров. В Битриксе нет встроенного ML-движка, поэтому система строится из нескольких слоёв. По данным Яндекс.Метрики, персонализация даёт прирост конверсии в среднем на 15% — это подтверждает практика наших проектов. Клиенты экономят до 30% времени на подбор товаров благодаря персонализированным рекомендациям, а средний чек увеличивается на 20–30%.

Мы занимаемся настройкой ML-рекомендаций на 1С-Битрикс на протяжении 8 лет. За это время реализовали более 50 проектов для интернет-магазинов разного масштаба — от каталогов на 10 000 товаров до маркетплейсов с миллионами позиций. Сертифицированные специалисты Битрикс гарантируют корректную интеграцию любого ML-сервиса, будь то Retail Rocket, Яндекс.Персонализация или собственное решение на Python.

Как работает ML-рекомендация на Битриксе?

ML-модель не должна жить в PHP-коде Битрикса — обучение и инференс требуют ресурсов, несовместимых с веб-запросом. Правильная архитектура:

  • Битрикс — собирает события поведения (просмотры, покупки, клики) и пишет их в очередь или базу данных
  • ML-сервис (Python/FastAPI или готовое решение) — обучает модель на накопленных данных, отдаёт рекомендации по HTTP API
  • Битрикс — запрашивает рекомендации у ML-сервиса и отображает в шаблоне

Какой ML-сервис выбрать для Битрикса?

Сервис Сложность интеграции Контроль Стоимость
Яндекс.Персонализация Высокая (требуется Метрика + Реклама) Низкий По подписке (часть Яндекс.Бизнеса)
Retail Rocket Средняя (готовый виджет) Средний По подписке
Собственный сервис на Python Высокая (разработка с нуля) Полный Бесплатно (только ресурсы)

Яндекс.Персонализация входит в экосистему Яндекса, требует передачи событий в Метрику и Яндекс.Рекламу. Без партнёрского доступа сложно настроить. Retail Rocket специализируется на e-commerce рекомендациях, есть готовый виджет для Битрикса — передача событий через JavaScript-трекер. Собственный сервис на Python даёт полный контроль, никаких зависимостей от сторонних платформ. Алгоритм: матричная факторизация (ALS через библиотеку implicit) или нейронные сети (NCF). Данные из b_user_behavior экспортируются в CSV, модель обучается офлайн раз в сутки, результаты записываются в Redis.

Передача событий в ML-сервис

При каждом просмотре товара или покупке Битрикс отправляет событие в очередь (Redis Pub/Sub, RabbitMQ или просто HTTP-запрос к ML-сервису):

// В шаблоне catalog.element $mlEvent = [ 'event' => 'view', 'user_id' => $GLOBALS['USER']->GetID() ?: ('anon_' . session_id()), 'item_id' => $arResult['ID'], 'timestamp' => time(), 'session_id' => session_id(), ]; // Асинхронная отправка без ожидания ответа $ch = curl_init('http://ml-service:8000/event'); curl_setopt_array($ch, [ CURLOPT_POST => true, CURLOPT_POSTFIELDS => json_encode($mlEvent), CURLOPT_HTTPHEADER => ['Content-Type: application/json'], CURLOPT_RETURNTRANSFER => true, CURLOPT_TIMEOUT_MS => 200, // Максимум 200ms — не блокируем рендеринг CURLOPT_NOSIGNAL => 1, ]); curl_exec($ch); curl_close($ch); 

Получение рекомендаций: кеш на Redis

ML-сервис возвращает список ID рекомендованных товаров для пользователя через REST API. Прямой запрос к ML-сервису при каждой загрузке страницы — неприемлемо. Кешировать на Redis с TTL 15 минут:

$redis = new \Redis(); $redis->connect('127.0.0.1', 6379); $cacheKey = 'ml_recs_' . ($userId ?: 'anon_' . session_id()); $recommendedIds = $redis->get($cacheKey); if ($recommendedIds === false) { $response = file_get_contents( 'http://ml-service:8000/recommend?user_id=' . urlencode($userId) . '&limit=8' ); $recommendedIds = json_decode($response, true)['items'] ?? []; $redis->setex($cacheKey, 900, json_encode($recommendedIds)); } else { $recommendedIds = json_decode($recommendedIds, true); } 

Как решить проблему холодного старта?

Для пользователей без истории ML-модель не применима. Fallback-стратегия: показываем популярные товары на основе статистики заказов за последние 30 дней. Как только пользователь накопит 5+ событий (просмотры, клики), система автоматически переключается на ML-рекомендации. Если ML-сервис временно недоступен, снова падаем на популярные — такой дублирующий механизм обеспечивает стабильность рекомендаций. Кеш популярных товаров обновляется каждые 15 минут.

Что входит в настройку ML-рекомендаций

  1. Аудит текущей архитектуры Битрикса (производительность, кеширование, инфоблоки)
  2. Выбор и настройка ML-сервиса (готовый или собственный)
  3. Настройка сбора событий (просмотры, покупки, корзина)
  4. Разработка REST-маршрута для рекомендаций
  5. Кеширование рекомендаций (Redis)
  6. Fallback-логика для холодного старта
  7. Тестирование и A/B-тест конверсии
  8. Мониторинг и поддержка 2 недели

Результат: документация по архитектуре, доступы к ML-сервису, обучение ваших разработчиков, гарантия 3 месяца на код. Закажите консультацию — мы оценим ваш проект за 1 день и подберём оптимальное решение. Свяжитесь с нами для детальной оценки.

Сравнение: ML-рекомендации vs базовые cross-sells

Параметр Базовые cross-sells ML-рекомендации
Конверсия 1–3% 5–12%
Персонализация Нет Полная (под каждого пользователя)
Обновление Ручное (категории) Автоматическое (раз в сутки)
Холодный старт Не нужен Требуется fallback
Нагрузка Низкая Требует Redis и отдельного сервиса

ML-рекомендации показывают конверсию в 2–4 раза выше. Наш опыт: на одном проекте с каталогом 50 000 товаров после внедрения Retail Rocket выручка с рекомендаций выросла на 34% за месяц. Получите консультацию — подберём оптимальное решение под ваш бюджет и требования.