# Август '26. Harness для e-commerce: как устроен Shopping Assistant

Современная большая языковая модель — LLM — способна начать решать практически любую покупательскую задачу. Она поймёт просьбу подобрать корм для питомца, сравнит две модели техники, предложит ингредиенты для ужина и задаст уточняющий вопрос о бюджете.

Для демо этого уже достаточно. В реальном интернет-магазине появляется следующий уровень задач.

Модель должна узнать актуальный ассортимент, найти товары в наличии, учесть бизнес-правила и историю пользователя, получить контекст открытой страницы, вернуть карточки в интерфейс, передать события в аналитику и сделать всё это за приемлемое время. При этом ответ должен сохранять качество на тысячах разных запросов, после обновления каталога, промпта или самой модели.

Если поручить весь процесс универсальному AI-агенту, он тоже доберётся до результата. Но для каждого сообщения ему придётся заново разбираться в контексте, выбирать инструменты, последовательно искать данные и проверять собственный ответ. Такой путь получается долгим, дорогим и сложным для управления.

Поэтому вокруг AI-моделей Shopping Assistant мы построили **Harness** — среду исполнения, которая готовит контекст, планирует запрос, подключает данные и инструменты, контролирует результат и связывает ассистента с возможностями Gravity Field.

!!!primary Главное
LLM отвечает за понимание естественного языка и решение покупательской задачи. Harness превращает эти возможности в быстрый, контекстный и измеримый покупательский опыт.
!!!

## Что входит в Harness

Один запрос проходит через несколько специализированных слоёв:

![Harness превращает запрос покупателя в точный выбор с учётом контекста, каталога и правил](/blog/assets_shopping_harness/harness-overview-ralphy-final.png)

Каждый слой появился из конкретной задачи, с которой ассистент сталкивается в реальном интернет-магазине.

## Проблема 1. Универсальный агент тратит время на подготовительную работу

LLM умеет самостоятельно рассуждать, обращаться к внешним системам и двигаться к ответу шаг за шагом. Без дополнительной подготовки она сначала определяет тип задачи, затем читает историю, строит поисковый запрос, обращается к каталогу, оценивает результаты и при необходимости запускает новый поиск.

Для сложной задачи такая гибкость полезна. Для типовых покупательских сценариев часть пути можно подготовить заранее.

### Решение: маршрутизация и подготовка данных до запуска агента

Перед запуском основной модели Harness определяет класс покупательской задачи: подбор, сравнение, уточнение предыдущей выдачи, поиск совместимого товара, консультацию или комплексную покупку. Для каждого сценария платформа готовит подходящие инструкции, поисковый контекст и доступные действия.

Одновременно Harness заранее запрашивает наиболее вероятные данные: товары, характеристики и релевантные материалы из базы знаний. Модель начинает работу с компактным планом и подготовленным контекстом, сохраняя возможность обратиться к дополнительным источникам для сложного случая.

Так типовые задачи проходят по короткому маршруту. Количество последовательных операций сокращается, время ответа становится предсказуемее, а вычислительные ресурсы расходуются на решение покупательской задачи.

![Долгий путь универсального агента и короткий маршрут через Harness](/blog/assets_shopping_harness/harness-fast-path-ralphy-final.png)

## Проблема 2. LLM не знает текущий ассортимент магазина

Знания модели формируются во время обучения. Каталог интернет-магазина меняется постоянно: обновляются цены, наличие, названия, изображения, характеристики и товарные позиции. Даже убедительный ответ теряет ценность, если в нём фигурирует отсутствующий товар или устаревшая цена.

Передавать большой каталог целиком в промпт тоже неэффективно: ассортимент может включать сотни тысяч товаров и миллионы атрибутов.

### Решение: поиск по каталогу и grounding

Shopping Assistant подключается к каталогу через интеграционный слой. Источником может быть поисковый индекс Gravity Field или программный интерфейс — API — ритейлера. По подготовленному запросу система получает релевантные товары вместе с актуальными данными:

- идентификатор и название;
- цену и доступность;
- изображение и ссылку на карточку товара;
- бренд, категорию и характеристики;
- дополнительные атрибуты для фильтрации и сравнения;
- данные для учёта показов и кликов.

Модель выбирает товары только среди полученных кандидатов, а товарные карточки собираются напрямую из каталога. Этот процесс называется **grounding** — привязка ответа модели к проверенным данным: текст, выбранные товары и интерфейсная выдача опираются на один актуальный источник.

Для консультационных вопросов работает **RAG — Retrieval-Augmented Generation**, то есть генерация ответа с поиском по источникам. Harness ищет фрагменты в инструкциях, справочных материалах, правилах сервиса и документах категории. Система сохраняет связь ответа с использованными источниками, чтобы качество можно было проверять и улучшать.

Поиск можно настраивать по типу источника: использовать поиск по словам или комбинировать его с поиском по смыслу, управлять глубиной выдачи и отдельно обрабатывать справочные и регуляторные материалы.

## Проблема 3. Магазин должен управлять поиском и порядком товаров

Релевантность в онлайн-торговле определяется не только близостью запроса к описанию товара. На выдачу влияют наличие, категория, персональные сигналы, правила мерчандайзинга и стратегия самого магазина.

Если ассистент использует отдельную логику поиска, покупатель может увидеть один порядок товаров в диалоге и другой — на сайте или в приложении. Бизнес-команда при этом теряет привычные инструменты управления выдачей.

### Решение: подключаемый слой поиска и ранжирования

Harness разделяет понимание диалога и товарное ранжирование. Реплика пользователя превращается в поисковую задачу с запросом, фильтрами, категорией и контекстом. Дальше специализированный движок возвращает упорядоченный набор товаров, с которым работает агент.

Для этого предусмотрены два контура.

**Gravity Search и рекомендательные алгоритмы Gravity Field** работают из коробки. [Gravity Search](/blog/2026-08-11-gravity-search.md) объединяет точный и смысловой поиск, фильтры, сортировки и правила поискового мерчандайзинга. Рекомендательные стратегии добавляют персональные сигналы и бизнес-правила. Выдачу можно проверять в A/B-тестах и связывать с показами, кликами и покупками.

**BYOA — Bring Your Own Algorithm**, то есть подключение собственного алгоритма, позволяет использовать поиск или ранжирование клиента. Harness передаёт в API согласованный запрос и получает готовый порядок товаров. Поэтому ассистент может использовать ту же логику выдачи, которая уже работает на сайте или в мобильном приложении: общие модели, признаки, правила и приоритеты. Gravity Field продолжает отвечать за запуск сценария, аналитику и эксперименты. [Подробнее о BYOA](/blog/2026-07-15-byoa-recommendation-algorithms/).

Оба варианта используют единый интерфейс Harness. Можно начать со встроенного движка Gravity Field, подключить существующий контур клиента или сравнить стратегии на реальном трафике без изменения диалогового слоя и SDK.

## Проблема 4. У каждой категории собственная логика выбора

Покупательская задача меняется вместе с категорией.

В продуктовом ритейле запрос «собери продукты для домашней пиццы» означает несколько товарных полок: основа, соус, сыр и начинка. В мебели важны размеры, материалы и визуальные признаки. В товарах для животных появляются требования к доказательности и безопасности. В электронике — совместимость, характеристики и аксессуары.

Один универсальный промпт быстро превращается в длинный набор пересекающихся правил.

### Решение: профили ритейлеров и доменные сценарии

Для каждого ритейлера Harness учитывает доступные возможности, правила работы с каталогом, допустимые действия и требования к ответам. Поверх общей архитектуры подключаются доменные сценарии, которые описывают логику выбора в конкретной категории.

Например, сценарий комплексной покупки помогает собирать несколько связанных товарных групп. Сценарий для мебели учитывает размеры, материалы и визуальные признаки. Для товаров с повышенными требованиями к безопасности задаются более строгие правила работы с источниками и условия перехода к специалисту.

Модель получает только те инструкции и возможности, которые относятся к текущей задаче. Так единое AI-ядро адаптируется к разным ритейлерам и категориям без одного огромного промпта со всеми возможными правилами.

## Проблема 5. Значительная часть запроса находится за пределами сообщения

Пользователь пишет «а этот подойдёт?» или «покажи похожий, но дешевле». Смысл такой фразы хранится в предыдущем диалоге, открытой странице и истории взаимодействия с ассортиментом.

У другого пользователя на той же странице может быть другая задача. Один уже сравнил пять моделей и готов выбрать, второй только начинает знакомство с категорией.

### Решение: память диалога и персонализация Gravity Field

Shopping Assistant использует два уровня памяти.

История разговора хранит последние реплики и товарные подборки. Компактная рабочая память сохраняет смысл текущей задачи: выбранную категорию, требования покупателя, активные фильтры и товары, которые уже обсуждались. Harness обновляет это состояние после каждого ответа и передаёт модели только значимый контекст.

К памяти диалога добавляется слой данных Gravity Field. Стабильный идентификатор связывает ассистента с профилем посетителя, а события просмотров, кликов, добавлений в корзину и покупок формируют поведенческий контекст.

Во время запроса платформа учитывает контекст текущего посещения:

- текущую страницу и её тип;
- категорию или открытый товар;
- устройство и клиентский канал;
- историю интереса к ассортименту;
- активную аудиторию и условия кампании;
- контекст текущей сессии.

Эти сигналы меняют весь пользовательский сценарий. На странице смартфона ассистент предлагает сравнение, объяснение характеристик и совместимые аксессуары. В категории он начинает с уточняющих вопросов о сценарии использования и бюджете. Для посетителя, который уже изучал несколько моделей, быстрые варианты ответа продолжают сформировавшуюся задачу выбора.

Аудитории, таргетинг и ограничение частоты показов Gravity Field управляют точкой входа и моментом запуска: разные сценарии можно показывать новым и возвращающимся посетителям, отдельным категориям, источникам трафика и поведенческим сегментам.

## Проблема 6. Покупательские задачи выходят за рамки одного списка товаров

Пользователь может прислать фотографию, попросить собрать комплект, перейти от общей идеи к точным параметрам или последовательно уточнять несколько частей покупки.

### Решение: работа с изображениями и специализированные сценарии покупки

Shopping Assistant принимает текст и изображения. Например, покупатель фотографирует кресло и просит подобрать модель похожего стиля в другом цвете.

Изображение безопасно подготавливается к анализу, а визуальные признаки становятся частью поисковой задачи. Правила конкретной категории определяют, какие свойства важны для подбора: например, форма и материал мебели, тип одежды или особенности упаковки товара.

Для комплексной покупки работает отдельный сценарий. По запросу «собери продукты для домашней пиццы на четверых» Harness строит несколько поисковых групп, а агент формирует отдельные товарные полки.

Следующая фраза «сыр возьми подешевле» обновляет только нужную часть подбора и сохраняет остальные позиции.

## Проблема 7. Свободный текст нужно превратить в продуктовый интерфейс

Интернет-магазину нужны товарные карточки, быстрые ответы, кнопки действий, состояния загрузки и события аналитики. Свободный текст модели должен превратиться в предсказуемый контракт для сайта и мобильного приложения.

### Решение: структурированный ответ и готовый интерфейсный слой

Ответ агента проходит проверку структуры и превращается в предсказуемый контракт для интерфейса. Он может содержать текст консультации, одну или несколько товарных полок, кнопки действий и быстрые варианты продолжения диалога.

Благодаря этому клиентский канал получает готовые элементы интерфейса, а не пытается извлечь товары и действия из свободного текста модели.

На сайте Shopping Assistant запускается через [Web-интеграцию Gravity Field](/Integration/web_integration/web_integration.md) и JS SDK — готовый набор компонентов для подключения. Платформа доставляет точку входа, диалог, товарные карточки, быстрые ответы, действия, состояния загрузки и обработку событий.

Интерфейс и пользовательский сценарий развиваются на основе реальных клиентских запусков. Команда получает проверенные механики диалога и товарного выбора, а затем адаптирует оформление, тексты и размещение под собственный бренд.

В приложении тот же подход поддерживают Gravity Field SDK для [iOS](/Integration/SDK/sdk_ios.md), [Android](/Integration/SDK/sdk_android.md) и [Flutter](/Integration/SDK/flutter_api_integration_guide.md). Единая модель событий помогает сохранять логику ассистента между сайтом и мобильным приложением.

Для собственного интерфейса доступна API-интеграция. Клиентский канал получает структурированный ответ и самостоятельно отображает сообщения, товарные полки и действия.

## Проблема 8. Архитектура не должна зависеть от одного поставщика моделей

У разных моделей отличаются качество рассуждений, скорость, цена, поддержка изображений и доступность в конкретной инфраструктуре. Разные классы задач также могут требовать разных моделей: использовать одну конфигурацию для всех операций не всегда эффективно.

На больших объёмах диалогов к этому добавляется стоимость запуска моделей. Даже небольшая разница в стоимости запроса становится значимой, а команде может потребоваться собственная модель или уже развёрнутая вычислительная инфраструктура.

### Решение: единый LLM Gateway

В Harness работа с моделями проходит через унифицированный **LLM Gateway**. Он даёт общую точку подключения для российских и зарубежных моделей и отделяет агентную логику от API конкретного провайдера.

LLM Gateway позволяет направлять разные классы задач в наиболее подходящие модели. Например, быстрая модель может классифицировать запрос, более сильная — решать сложную покупательскую задачу, а специализированная — обрабатывать изображение или оценивать качество ответа. При смене модели сохраняются общий сценарий работы, доступные инструменты, формат результата и интеграция с клиентским каналом.

Шлюз также приводит к единому виду эксплуатационные показатели: время ответа, использование токенов и стоимость. Это позволяет сравнивать конфигурации на общих сценариях и выбирать баланс качества, скорости и затрат.

В стандартной конфигурации запуск моделей управляется Gravity Field. Для проектов с очень большим объёмом диалогов Harness может работать с вычислительным контуром клиента — например, с моделью, развёрнутой в его инфраструктуре. Это отдельный сценарий глубокой интеграции: команды согласуют интерфейс, требования к производительности и качеству, после чего модель подключается через тот же LLM Gateway.

## Проблема 9. Убедительный ответ ещё нужно сделать управляемым

Генеративная модель может выбрать неподходящий товар, нарушить формат, использовать лишний исторический контекст или сформулировать слишком уверенное утверждение в чувствительной категории.

### Решение: многоуровневый контроль ответа

Контроль распределён по всему пути запроса:

- модель получает только разрешённый контекст и доступные для сценария действия;
- доменные правила учитывают специфику категории и требования к источникам;
- лимиты ограничивают продолжительность и сложность выполнения задачи;
- grounding связывает выбранные товары с актуальными данными каталога;
- проверка структуры гарантирует, что интерфейс получит корректный ответ;
- правила безопасности ограничивают чувствительные утверждения и при необходимости переводят диалог к специалисту.

Так качество ответа зависит не от одной инструкции модели, а от нескольких независимых уровней контроля.

## Проблема 10. Качество AI-системы меняется вместе с её компонентами

Новая модель может улучшить стиль ответа и одновременно изменить выбор товаров. Обновление поиска влияет на полноту найденной информации. Изменение инструкций может поменять время ответа, а обновление каталога — затронуть сценарии, которые уже работали стабильно.

### Решение: наблюдаемость и автоматическая оценка качества

Harness измеряет время выполнения отдельных этапов и всего запроса, использование токенов, обращения к внешним системам, число найденных и выбранных товаров, ошибки и стоимость ответа. Для RAG дополнительно контролируются качество поиска и источники, на которые опиралась модель.

Для регулярной оценки используются датасеты покупательских сценариев. Автоматические проверки измеряют релевантность товаров, полноту комплексной покупки, согласованность текста и карточек, корректность структуры, безопасность и качество ответа в конкретной категории.

Часть показателей рассчитывается по формальным правилам, часть — с помощью AI-оценки, когда одна модель проверяет ответ другой. Регрессионные тесты позволяют сравнивать модели, инструкции, поиск и каталожные правила на общей выборке до запуска на реальном трафике.

## Проблема 11. Техническое качество нужно связать с поведением покупателей

Хорошая оценка на тестовой выборке показывает, что система корректно решает подготовленные сценарии. Для интернет-магазина остаётся главный вопрос: помогает ли ассистент пользователю выбирать и покупать.

### Решение: аналитический контур Gravity Field

Shopping Assistant подключён к экспериментам и продуктовой аналитике Gravity Field. Команда может проводить [A/B-тесты](/personalization/AB%20testing/versions.md) и сравнивать:

- запуск ассистента с контрольной группой;
- точки входа и варианты интерфейса;
- приветствия и быстрые варианты ответа;
- версии сценария, инструкций или модели;
- поиск и стратегии товарной выдачи;
- персонализированные сценарии для разных аудиторий.

Gravity Field связывает показы и клики с конкретной товарной подборкой. [События Shopping Assistant](/shopping_assistant/tracking.md) фиксируют открытие диалога, отправку сообщения, получение ответа, появление товарной выдачи и технические сбои. Стандартные события платформы продолжают воронку через просмотр карточки, добавление в корзину и покупку.

Команда видит связь между AI-ответом и показами товаров, кликабельностью, переходами в карточки, добавлениями в корзину, конверсией, заказами и выручкой.

К поведенческим данным добавляется обратная связь о качестве. Покупатель ставит конкретному ответу положительную или отрицательную оценку, а команда добавляет экспертную оценку и комментарий. Сигналы собираются в [аналитике обратной связи](/blog/2026-08-19-shopping-assistant-answer-feedback.md) и формируют очередь диалогов для разбора.

![Gravity Field помогает запустить ассистента, персонализировать диалог и измерить результат](/blog/assets_shopping_harness/gravity-field-loop-ralphy-final.png)

В [обзоре диалогов](/blog/2026-07-03-shopping-assistant-dialog-overview.md) видны использование ассистента, возвращаемость, нагрузка и точки входа. Вместе с A/B-тестами, отслеживанием товарной выдачи и автоматической оценкой качества эти данные замыкают цикл улучшения:

1. Найти сценарий с потенциалом роста.
2. Разобрать путь запроса и использованные источники.
3. Определить слой для изменения.
4. Запустить оценку на тестовой выборке и регрессионные тесты.
5. Выпустить новую версию на реальный трафик.
6. Сравнить обратную связь, продуктовые события и бизнес-метрики.

## Как все слои работают вместе

Представим посетителя, который несколько дней изучал смартфоны, а сейчас открыл карточку конкретной модели и написал: «Хочу примерно такой же, но с камерой получше и до 80 тысяч».

Gravity Field передаёт профиль пользователя, историю интереса и контекст текущей карточки товара. Память диалога добавляет ранее обсуждавшиеся требования. Harness распознаёт уточнение предыдущего запроса и формирует новую поисковую задачу. Подключённый поисковый контур — Gravity Search или алгоритм клиента через BYOA — ранжирует подходящие модели. Агент сравнивает характеристики и выбирает товары, а LLM Gateway направляет AI-задачи в подходящие модели.

Grounding связывает выбор с карточками из каталога. Структурированный ответ возвращает объяснение, товарную полку и быстрые варианты продолжения диалога. SDK отображает готовый интерфейс и отправляет события аналитики. Реакция пользователя, переходы в карточки товаров и покупка попадают в аналитику, а вариант сценария участвует в A/B-тесте.

Для пользователя это один естественный диалог. Для Harness — управляемая цепочка подготовки контекста, поиска, работы модели, проверки результата, доставки интерфейса и измерения эффекта.

## От возможностей модели к работающему продукту

Сильная LLM даёт Shopping Assistant способность понимать язык, рассуждать и решать широкий класс задач. Harness добавляет скорость, актуальные данные, управляемый поиск и ранжирование, доменную специализацию, персональный контекст, единый доступ к моделям, готовый интерфейс и контроль качества.

Gravity Field продолжает эту цепочку до реального покупательского опыта: запускает ассистента через SDK для сайта и мобильных приложений, персонализирует интерфейс, проводит A/B-тесты и связывает товарную выдачу с поведением и бизнес-метриками.

Подключение и формат взаимодействия описаны в [документации Shopping Assistant](/shopping_assistant/shopping_assistant.md), а попробовать продукт можно на [shopping.gravityfield.ai](https://shopping.gravityfield.ai/).
