Демо на синтетических данных / 2026-06-14

Рабочий стол WMS

Сводка системы, сервисов, рисков и быстрый переход к модулям.

Запуск сервисов Core JSON Контракт данных 7 реестров 5 сервисов 8 workflow
История спроса3780строк для прототипов
Партии360остатки, FEFO, резервы
Workflow core817 апрувов/проверок
Решения закупок8buy / hold / review

Модули

Карта рабочего контура

Операционный core

Сервисы выполняют workflow, а не показывают заглушки

Snapshot repo_demo_operating_system_core / 2026-06-14. Сейчас источник synthetic, но решения считаются функциями service layer.

JSON core
Workflow 8 6 требуют проверки
Сервисов 13 agent/rules/forecast/WMS/1C
Задач 17 4 критичных
Склад 36% 3168 кг под FEFO

Карта сервисов

IDСервисПотребляетВыдает
llm-agentLLM агентчаты, фото, листы, правилачерновики операций и задачи апрува
rule-engineДвижок правилSKU, клиент, вес, срок, каналразрешения, запреты, причины
event-logЖурнал фактовдействия людей и сервисовфакты для аудита и обучения
forecastПрогноз спросаисторию, календарь, отказы, заменыспрос для закупок и WMS
purchase-optimizerОптимизатор закупокпрогноз, остатки, емкость, труд, ценызакупочные рекомендации
wmsWMSсканы, приемку, заказы, фактызадачи склада и доступность
placement-optimizerРазмещениепопулярность, срок, техника, проходызадачи relayout
routingМаршрутизациязаказы, адреса, весмаршрут и load sequence
pickingСборкамаршрут, резервы, правила весакоробки, этикетки, факт веса
barcode-checkBarcode контрользадание сборки и фактблокировки и пересканы
accountingБухгалтерия/1Cфактический вес, цены, документыдокументы или конфликт
pricingЦенысроки, спрос, маржа, сегментценовые апрувы
human-approvalАпрувыисключения и низкую уверенностьразрешение или override fact

Инструкции LLM агента

IDИнструкцияПолитикаКогда нужен человек
AGENT-001Все изменения только через toolsАгент не пишет состояние свободным текстом: он вызывает явный tool, получает контрактный результат и пишет event.любое изменение заказа, склада, цены или 1C
AGENT-002Правила сильнее моделиЕсли rule-engine вернул hard-stop, LLM не может обойти его промптом или уверенностью.замена охлаждения на заморозку, вес вне допуска, цена ниже маржи
AGENT-003Человеческий фактор сохраняетсяOverride разрешен, но только как факт с автором, причиной, временем и будущим training signal.решение кладовщика против рекомендации, ручная правка бухгалтера
AGENT-004Низкая уверенность блокирует экспортOCR/LLM confidence ниже порога создает очередь проверки, а не меняет 1C или склад напрямую.OCR < 85%, конфликт алиасов, сумма накладной не сходится
AGENT-005Склад и вес являются фактамиФактический вес из сборки/весов и WMS-скан имеют приоритет над прогнозом и документом.расхождение WMS/1C, перескан партии
AGENT-006Скидки не становятся привычкойЦены меняются только рекомендацией с маржей, частотой скидок и сегментным guardrail.expiry discount, overstock discount, VIP клиент

Прогнозы

SKUbase p50adj p50adj p90drivers
курица грудка премиум182364481сообщение клиента x2, пятница, сезон шашлыков
индейка бедро стандарт245245324история спроса, клиентский ритм, складские отказы
говядина крыло стандарт308308407история спроса, клиентский ритм, складские отказы
свинина голень премиум371371490история спроса, клиентский ритм, складские отказы
баранина фарш стандарт434543716история спроса, клиентский ритм, складские отказы
курица вырезка стандарт497497656история спроса, клиентский ритм, складские отказы
индейка лопатка премиум182182240история спроса, клиентский ритм, складские отказы
говядина ребро стандарт245245324история спроса, клиентский ритм, складские отказы

Закупочные решения

SKUРешениеКупитьДоступноЕмкостьПричина
курица грудка премиумhold028136%не закупать: есть 281 кг и 109 кг под FEFO/освобождение
индейка бедро стандартbuy11720739%дефицит против p90, но решение ограничено емкостью и трудом
говядина крыло стандартreview18921840%дефицит против p90, но решение ограничено емкостью и трудом
свинина голень премиумreview27022042%дефицит против p90, но решение ограничено емкостью и трудом
баранина фарш стандартreview45226446%дефицит против p90, но решение ограничено емкостью и трудом
курица вырезка стандартreview46419246%дефицит против p90, но решение ограничено емкостью и трудом
индейка лопатка премиумhold3620437%остаток покрывает p90 с учетом риска списания
говядина ребро стандартbuy11520939%дефицит против p90, но решение ограничено емкостью и трудом

Маршрут и обратная погрузка

ТочкаПогрузкаКлиентВесАдрес
116ресторан Северный двор18 кгСПб, зона 1
215кафе Волга24 кгСПб, зона 2
314магазин У Парка30 кгСПб, зона 3
413производство Ладога36 кгСПб, зона 4
512ресторан Парус42 кгСПб, зона 5
611кафе Невский48 кгСПб, зона 6
710магазин Фермерский54 кгСПб, зона 7
89производство Балтика60 кгСПб, зона 8
98ресторан Рыночный66 кгСПб, зона 9
107кафе Купеческий18 кгСПб, зона 10
116магазин Портовый24 кгСПб, зона 11
125производство Сенной30 кгСПб, зона 12
134ресторан Северный двор36 кгСПб, зона 13
143кафе Волга42 кгСПб, зона 14
152магазин У Парка48 кгСПб, зона 15
161производство Ладога54 кгСПб, зона 16

Barcode и вес

СканПартияSKUСлотСтатус
SCAN-1BATCH-0001SKU-001SLOT-001блок: партия не в pick wave
SCAN-2BATCH-0002SKU-002SLOT-004принято
SCAN-3BATCH-0003SKU-003SLOT-007принято
SCAN-4BATCH-0004SKU-004SLOT-010принято
SCAN-5BATCH-0005SKU-005SLOT-013требует перескан
SCAN-6BATCH-0006SKU-006SLOT-016блок: партия не в pick wave
SCAN-7BATCH-0007SKU-007SLOT-019принято
SCAN-8BATCH-0008SKU-008SLOT-022принято
SCAN-9BATCH-0009SKU-009SLOT-025требует перескан
SCAN-10BATCH-0010SKU-010SLOT-028принято
нужна проверка

Клиентский сигнал и пересчет системы

зафиксировать сигнал, пересчитать спрос, проверить склад и не закупать лишнее при перегрузе

клиент сообщил, что в этом месяце возьмет примерно x2

Шаги сервисов

#СервисШагВыходСтатус
1llm-agentИзвлечь сигналсоздан demand_signal для курица грудка премиумok
2forecastПересчитать спросp90=481 кгok
3wmsПроверить складохлаждение 36%, expiry 3168 кгнужна проверка
4purchase-optimizerРешить закупкуhold: не закупать: есть 281 кг и 109 кг под FEFO/освобождениенужна проверка

Tool calls агента

ToolСервисВыходАпрув
record_customer_signalllm-agentdemand_signal: multiplier=2, confidence=0.86менеджер подтверждает месяц повышенного спроса
run_demand_forecastforecastadjusted p90=481 кгне требуется
inspect_inventory_capacitywmsavailable=281 кг, chilled=36%склад подтверждает физическое место
build_purchase_planpurchase-optimizerhold: не закупать: есть 281 кг и 109 кг под FEFO/освобождениезакупщик подтверждает hold/review

Решения

СервисРешениеИтогПричинаСтатус
purchase-optimizerЗакупка под сигнал клиентаholdне закупать: есть 281 кг и 109 кг под FEFO/освобождениенужна проверка

Задачи людям

КтоЗадачаПриоритетОбъектСтатус
менеджерподтвердить, что сигнал клиента является планом, а не пожеланиемhighdemand_signalнужна проверка
старший кладовщикпересортировать FEFO-партии перед закупкойhighSKU-001нужна проверка
блок

Приемка поставщика и накладная

заблокировать 1C до сверки; создать приход и placement задачи

фото накладной + разгрузка

Шаги сервисов

#СервисШагВыходСтатус
1llm-agentСобрать входOCR ниже пороганужна проверка
2rule-engineПроверить правилазаблокировать 1C до сверкиблок
3event-logЗаписать фактсобытие сохранено для аудита и обученияблок

Tool calls агента

ToolСервисВыходАпрув
record_customer_signalllm-agentOCR ниже порога; вес приемки расходится с документомответственный подтверждает исключение

Решения

СервисРешениеИтогПричинаСтатус
accountingПриемка поставщика и накладнаяblockedзаблокировать 1C до сверки; создать приход и placement задачиблок

Задачи людям

КтоЗадачаПриоритетОбъектСтатус
операторзаблокировать 1C до сверкиcriticalsupplier_receivingблок
ответственныйсоздать приход и placement задачиcriticalsupplier_receivingблок
нужна проверка

Ежедневный план закупок

согласовать review позиции; не покупать hold позиции

06:25 после прогноза

Шаги сервисов

#СервисШагВыходСтатус
1llm-agentСобрать входкурица грудка премиум: hold 0 кгok
2rule-engineПроверить правиласогласовать review позициинужна проверка
3event-logЗаписать фактсобытие сохранено для аудита и обучениянужна проверка

Tool calls агента

ToolСервисВыходАпрув
record_customer_signalllm-agentкурица грудка премиум: hold 0 кг; индейка бедро стандарт: buy 117 кг; говядина крыло стандарт: review 189 кг; свинина голень премиум: review 270 кг; баранина фарш стандарт: review 452 кг; курица вырезка стандарт: review 464 кг; индейка лопатка премиум: hold 36 кг; говядина ребро стандарт: buy 115 кгответственный подтверждает исключение

Решения

СервисРешениеИтогПричинаСтатус
rule-engineЕжедневный план закупокneeds_reviewсогласовать review позиции; не покупать hold позициинужна проверка

Задачи людям

КтоЗадачаПриоритетОбъектСтатус
операторсогласовать review позицииhighdaily_purchase_planнужна проверка
ответственныйне покупать hold позицииhighdaily_purchase_planнужна проверка
нужна проверка

Маршрут, сборка и погрузка

разбить маршрут при 15+ точках; печатать labels обратной погрузки

закрытие заказов на отгрузку

Шаги сервисов

#СервисШагВыходСтатус
1llm-agentСобрать входточек=16ok
2rule-engineПроверить правиларазбить маршрут при 15+ точкахнужна проверка
3event-logЗаписать фактсобытие сохранено для аудита и обучениянужна проверка

Tool calls агента

ToolСервисВыходАпрув
record_customer_signalllm-agentточек=16; вес=630 кг; блокировок скана=4ответственный подтверждает исключение

Решения

СервисРешениеИтогПричинаСтатус
rule-engineМаршрут, сборка и погрузкаneeds_reviewразбить маршрут при 15+ точках; печатать labels обратной погрузкинужна проверка

Задачи людям

КтоЗадачаПриоритетОбъектСтатус
операторразбить маршрут при 15+ точкахhighroute_dispatchнужна проверка
ответственныйпечатать labels обратной погрузкиhighroute_dispatchнужна проверка
блок

Сверка WMS, 1C и бумажных фактов

запретить экспорт спорных строк; создать recount

конец смены или конфликт скана

Шаги сервисов

#СервисШагВыходСтатус
1llm-agentСобрать входSCAN-1 блок: партия не в pick waveнужна проверка
2rule-engineПроверить правилазапретить экспорт спорных строкблок
3event-logЗаписать фактсобытие сохранено для аудита и обученияблок

Tool calls агента

ToolСервисВыходАпрув
record_customer_signalllm-agentSCAN-1 блок: партия не в pick wave; SCAN-5 требует перескан; SCAN-6 блок: партия не в pick wave; SCAN-9 требует пересканответственный подтверждает исключение

Решения

СервисРешениеИтогПричинаСтатус
accountingСверка WMS, 1C и бумажных фактовblockedзапретить экспорт спорных строк; создать recountблок

Задачи людям

КтоЗадачаПриоритетОбъектСтатус
операторзапретить экспорт спорных строкcriticalinventory_reconciliationблок
ответственныйсоздать recountcriticalinventory_reconciliationблок
нужна проверка

Сроки и guarded pricing

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

FEFO watch-list

Шаги сервисов

#СервисШагВыходСтатус
1llm-agentСобрать входexpiry_watch=3168 кгok
2rule-engineПроверить правилапроверить маржунужна проверка
3event-logЗаписать фактсобытие сохранено для аудита и обучениянужна проверка

Tool calls агента

ToolСервисВыходАпрув
record_customer_signalllm-agentexpiry_watch=3168 кг; скидка только на партиюответственный подтверждает исключение

Решения

СервисРешениеИтогПричинаСтатус
rule-engineСроки и guarded pricingneeds_reviewпроверить маржу; не приучать клиентов к регулярной скидкенужна проверка

Задачи людям

КтоЗадачаПриоритетОбъектСтатус
операторпроверить маржуhighexpiry_pricingнужна проверка
ответственныйне приучать клиентов к регулярной скидкеhighexpiry_pricingнужна проверка
нужна проверка

Дефицит и замены

менеджер выбирает замену; записать отказ как lost demand

строка заказа без остатка

Шаги сервисов

#СервисШагВыходСтатус
1llm-agentСобрать входклиент R17 не принимает заморозкуok
2rule-engineПроверить правиламенеджер выбирает заменунужна проверка
3event-logЗаписать фактсобытие сохранено для аудита и обучениянужна проверка

Tool calls агента

ToolСервисВыходАпрув
record_customer_signalllm-agentклиент R17 не принимает заморозку; магазин может принять монолит по отдельной ценеответственный подтверждает исключение

Решения

СервисРешениеИтогПричинаСтатус
rule-engineДефицит и заменыneeds_reviewменеджер выбирает замену; записать отказ как lost demandнужна проверка

Задачи людям

КтоЗадачаПриоритетОбъектСтатус
операторменеджер выбирает заменуhighstockout_substitutionнужна проверка
ответственныйзаписать отказ как lost demandhighstockout_substitutionнужна проверка
нужна проверка

Перестановка склада в тихое окно

освободить проходы; A SKU ближе к pick-face; оставить место под технику

склад занят, много сроков и проходов

Шаги сервисов

#СервисШагВыходСтатус
1llm-agentСобрать входblocked_slots=23ok
2rule-engineПроверить правилаосвободить проходынужна проверка
3event-logЗаписать фактсобытие сохранено для аудита и обучениянужна проверка

Tool calls агента

ToolСервисВыходАпрув
record_customer_signalllm-agentblocked_slots=23; overloaded=нетответственный подтверждает исключение

Решения

СервисРешениеИтогПричинаСтатус
rule-engineПерестановка склада в тихое окноneeds_reviewосвободить проходы; A SKU ближе к pick-face; оставить место под техникунужна проверка

Задачи людям

КтоЗадачаПриоритетОбъектСтатус
операторосвободить проходыhighwarehouse_relayoutнужна проверка
ответственныйA SKU ближе к pick-facehighwarehouse_relayoutнужна проверка
ответственныйоставить место под техникуhighwarehouse_relayoutнужна проверка

Сервисы

Запускаемые прототипы на synthetic data

Центр сервисов
по расписанию

Прогноз спроса

коммерция
Вход3780 строк истории, 240 заказов
Выход18 p10/p50/p90 прогнозов
Расписаниекаждый день 06:10
Следующий запуск2026-06-15 06:10
Открыть выходы
Последний запуск: 2026-06-14 06:10 / автозапуск + ручной пересчет
нужен апрув

Оптимизатор закупок

закупки
Вход360 партий, 18 прогнозов
Выход12 закупочных рекомендаций
Расписаниепосле прогноза и перед заказом поставщикам
Следующий запуск2026-06-15 06:25
Открыть выходы
Последний запуск: 2026-06-14 06:24 / рекомендация с апрувом
готов

Маршрутизатор СПб

логистика
Вход240 заказов, окна доставки
Выход18 точек и обратная погрузка
Расписаниепосле закрытия сборки маршрута
Следующий запускпо готовности маршрута
Открыть выходы
Последний запуск: 2026-06-14 07:05 / ручной запуск логистом
по расписанию

WMS сканирование и синхронизация

склад
Вход18 последних сканов, партии и слоты
Выходконфликты WMS/1C и задачи перескана
Расписаниеонлайн по сканам
Следующий запускпо следующему скану
Открыть выходы
Последний запуск: 2026-06-14 07:18 / событийный сервис
готов

ИИ-агент документооборота

операционный офис
Входнакладные, чаты, листы отвоза, сверка 1C
Выходзадачи сверки, запуск сервисов, черновики действий
Расписаниекаждые 10 минут и по входящему документу
Следующий запуск2026-06-14 07:30
Открыть выходы
Последний запуск: 2026-06-14 07:20 / tool-calling через апрувы

Операционные страницы

Операционные страницы

Данные и обмен

Данные и обмен

Реестры

Превью данных с переходом в полные таблицы

Реестр

Справочник SKU

Нормализованные карточки товаров вместо свободного текста.

SKUНазваниеХранениеВесСрокПравило
CHICKEN_BREAST_YELLOW_GOST_250Грудка куриная желтая упаковка ГОСТ 250+охлаждение8-14 кг7 дн.UNIT_LABEL_SUM
CHICKEN_HOME_CHILLEDКурица домашняя охлажденнаяохлаждение6-12 кг5 дн.SCALE_WEIGHT
CHICKEN_MONOLITH_FROZENКурица монолит замороженнаязаморозка18-22 кг120 дн.BOX_DECLARED_WEIGHT
BEEF_TENDERLOIN_CHILLEDВырезка говяжья охлажденнаяохлаждение2-6 кг10 дн.SCALE_WEIGHT

Реестр

Клиенты

Клиентские ограничения, сегменты и коммерческие признаки.

IDКлиентСегментЗонаЗаменыЗаморозка
CLIENT-R17Ресторан Северный дворресторанцентрнельзяне принимает
CLIENT-CAFE-08Кафе Волгакафесеверможноне принимает
CLIENT-SHOP-22Магазин у паркамагазинвостокможнопринимает

Реестр

Правила клиентов

Версионируемые правила, которые не должны жить в памяти менеджеров.

ПравилоКлиентТипУсловиеДействиеАпрув
RULE-R17-CHICKENРесторан Северный дворраспознавание SKUсырой текст содержит 'курица'распознать как CHICKEN_HOME_CHILLEDне нужен
RULE-R17-NO-FROZENРесторан Северный дворзаменызапрошено охлаждениезапретить замену на заморозкунужен
RULE-CAFE-08-TOLERANCEКафе Волгадопуск весастрока заказа с охлаждениемразрешить отклонение веса до 0.5 kgне нужен
RULE-SHOP-22-FROZENМагазин у парказаменыохлажденной курицы нетразрешить CHICKEN_MONOLITH_FROZEN с отдельной ценойнужен

Реестр

Партии и остатки

Партии, сроки, резервы и доступный вес.

ПартияSKUСлотДоступноРезервСрок
BATCH-10291Грудка куриная желтая упаковка ГОСТ 250+CH-R1-L1-P0150 кг42 кг2 дн.
BATCH-10294Грудка куриная желтая упаковка ГОСТ 250+CH-R3-L2-P05185 кг0 кг6 дн.
BATCH-7780Курица монолит замороженнаяFZ-R2-L3-P04180 кг60 кг106 дн.
BATCH-5531Вырезка говяжья охлажденнаяCH-R1-L1-P0127 кг11 кг7 дн.

Реестр

Слоты склада

Ячейки, зоны, доступность техники и запрет хранения.

СлотСкладЗонаНазначениеЗанятоОграничение
CH-R1-L1-P01WH-CHILLED-1охлаждениебыстрый отбор250/420 кгдоступно
CH-R3-L2-P05WH-CHILLED-1охлаждениехранение120/360 кгнужен штабелер
FZ-R2-L3-P04WH-FROZEN-1заморозкаобъемное хранение240/600 кгнужен штабелер
AISLE-TURN-01WH-CHILLED-1охлаждениеразворот техники0/0 кгхранить нельзя

Реестр

Заказы

Сырой запрос, распознанный SKU и фактическая сборка.

ЗаказКлиентКаналСтатусСтрокаФакт
ORDER-9001Ресторан Северный дворWhatsAppсборкагрудка 250+ 42 кг42.4 кг
ORDER-9002Магазин у паркаTelegramраспознанмонолит кур 60 кгеще не собрано

Реестр

Журнал событий

Факты системы для аудита, обучения и разбора расхождений.

ВремяСобытиеОбъектКтоОписание
2026-06-13T08:21:00+03:00заказ созданORDER-9001агент приемаСоздан заказ из сообщения WhatsApp для клиента Ресторан Северный двор.
2026-06-13T08:21:04+03:00строка распознанаORDER-9001-L1движок правилСтрока 'грудка 250+' распознана как CHICKEN_BREAST_YELLOW_GOST_250.
2026-06-13T08:21:08+03:00партия зарезервированаBATCH-10291сервис остатковЗарезервировано 42 кг из ближайшей по сроку охлажденной партии грудки.
2026-06-13T09:40:00+03:00строка собранаPICK-9001-L1кладовщик СергейСобрано 42.4 кг после вскрытия коробов и суммирования этикеток.
2026-06-13T10:00:00+03:00рекомендация закупкиPURCHASE-REC-001сервис оптимизацииСформирована рекомендация купить 180 кг охлажденной грудки под спрос понедельника.
2026-06-13T10:05:00+03:00проверка агентаAGENT-TASK-002сервис агентаСоздана ручная проверка фото накладной и черновика экспорта в 1C.