Список покупок

Список покупок

@shopping-listlifestyle

Генерация структурированных списков покупок из рецептов. Агрегация ингредиентов, группировка по категориям, конвертация единиц, маппинг на названия товаров ВкусВилла. Замены для отсутствующих товаров.

0 установокПубличный

SKILL.md

Списки покупок

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

Шаг 1: Формат входных данных

Получаешь список рецептов в формате:

Рецепт 1: [Название] (N порций)
- Ингредиент 1 — X г
- Ингредиент 2 — Y шт

Рецепт 2: [Название] (M порций)
- Ингредиент 1 — X г
...

Или развёрнутый план питания на несколько дней.

Шаг 2: Агрегация ингредиентов

Правила объединения

  1. Одинаковые продукты суммируются: «куриная грудка 150г» + «куриная грудка 200г» = «куриная грудка 350г»
  2. Разные формы — отдельно: «куриная грудка» ≠ «куриный фарш» ≠ «куриные бёдра»
  3. Свежие vs замороженные — отдельно: «шпинат свежий» ≠ «шпинат замороженный»
  4. Консервы vs сырые — отдельно: «чечевица» ≠ «чечевица консервированная»

Конвертация единиц

ИзВПравило
гкг÷ 1000, если итог > 500г
млл÷ 1000, если итог > 500мл
штштоставить
зубчик (чеснок)шт~1 зубчик = 5-7г, 1 головка = 8-10 зубчиков
ст.л. (масло)мл15 мл
ч.л. (специи)г~5 г
пучок (зелень)г~30-50г
щепоткаигнорировать в итоговом списке

Округление

  • Мясо/рыба: округлить до ближайших 100г (продаются примерно так)
  • Овощи: до ближайших 100г или поштучно (помидоры, перцы — шт)
  • Крупы/макароны: до ближайших 100г
  • Молочка: до целой упаковки (творог — 200г, йогурт — 130г)
  • Масло: 1 бутылка (если нужно < 200мл — считать что есть дома)
  • Специи: не включать если нужно < 1 ч.л. (считать что есть дома)
  • Яйца: округлить до десятка

Шаг 3: Категории для группировки

Список покупок группируется по категориям — так удобнее ориентироваться в магазине.

КатегорияЧто входит
🥩 Мясо и птицаКурица, индейка, говядина, свинина, фарш
🐟 Рыба и морепродуктыМинтай, горбуша, сёмга, креветки, консервы
🥛 Молочные продуктыТворог, йогурт, молоко, сыр, сливочное масло
🥚 ЯйцаКуриные яйца
🥬 Овощи и зеленьВсе свежие овощи, зелень, грибы
🍎 Фрукты и ягодыВсе свежие фрукты и ягоды
🌾 Крупы и макароныГречка, рис, овсянка, макароны, булгур, киноа
🫘 Бобовые и консервыФасоль, нут, чечевица, томатная паста, консервы
🧂 Масло и соусыРастительное масло, соевый соус, уксус
🧈 Орехи и семенаГрецкие, миндаль, кунжут, чиа, лён
🍞 Хлеб и выпечкаХлеб, хлебцы, лаваш, тортильи
🧊 ЗамороженныеЗамороженные овощи, ягоды, полуфабрикаты
🫙 Тофу и растительноеТофу, растительное молоко, кокосовые сливки
🧂 СпецииСоль, перец, паприка, куркума, зира и т.д.

Шаг 4: Маппинг на VkusVill

Для каждого ингредиента — как он называется и ищется в ВкусВилле.

Мясо и птица

Рецептное названиеПоиск на VkusVill
Куриная грудка«Филе куриной грудки»
Куриное бедро б/к«Бедро куриное без кости»
Куриный фарш«Фарш куриный»
Индейка филе«Филе индейки»
Говядина вырезка«Вырезка говяжья»
Говяжий фарш«Фарш говяжий»
Свинина«Свинина» + нужная часть (шея, карбонад)

Рыба

Рецептное названиеПоиск на VkusVill
Минтай филе«Филе минтая»
Горбуша филе«Филе горбуши»
Сёмга/форель«Стейк сёмги» / «Филе форели»
Тунец консервированный«Тунец консервированный»

Молочка

Рецептное названиеПоиск на VkusVill
Творог 5%«Творог 5%»
Творог 9%«Творог 9%»
Греческий йогурт«Йогурт греческий»
Сыр (твёрдый)«Сыр твёрдый»
Моцарелла«Моцарелла»
Молоко«Молоко» + жирность
Сливочное масло«Масло сливочное 82,5%»

Овощи

Рецептное названиеПоиск на VkusVill
Помидоры«Помидоры»
Огурцы«Огурцы»
Болгарский перец«Перец болгарский»
Баклажан«Баклажан»
Брокколи (свежая)«Брокколи»
Брокколи (заморозка)«Брокколи замороженная»
Шпинат (заморозка)«Шпинат замороженный»
Кабачок«Кабачок»
Имбирь«Имбирь корень»
Грибы шампиньоны«Шампиньоны свежие»

Крупы

Рецептное названиеПоиск на VkusVill
Гречка«Крупа гречневая»
Рис белый«Рис»
Рис бурый«Рис бурый» / «Рис нешлифованный»
Овсянка«Хлопья овсяные» / «Геркулес»
Макароны«Макароны» (укажи сорт)
Булгур«Крупа булгур»
Чечевица«Чечевица» (красная/зелёная)
Киноа«Киноа»

Специфичные для ВкусВилла (ЗОЖ)

Рецептное названиеПоиск на VkusVill
Тофу«Тофu» / «Тофу»
Растительное молоко«Молоко овсяное» / «Молоко миндальное»
Безлактозный творог«Творог безлактозный»
Безглютеновые макароны«Макароны без глютена» / «Макароны из риса»
Кокосовые сливки«Сливки кокосовые»
Темпе«Темпе»
Хумус«Хумус»

Шаг 5: Формат вывода

Стандартный список покупок

🛒 Список покупок — [N] позиций, ~XXX₽

🥩 Мясо и птица
☐ Филе куриной грудки — 400г (~140₽)
☐ Фарш говяжий — 300г (~130₽)

🥛 Молочные продукты
☐ Творог 5% — 2 × 200г (~180₽)
☐ Сыр твёрдый — 200г (~120₽)

🥬 Овощи и зелень
☐ Помидоры — 500г (~80₽)
☐ Огурцы — 300г (~40₽)
...

📊 Итого: ~XXX₽

Для автоматического добавления в корзину

Формат для передачи в навык vkusvill-cart:

products:
1. "Филе куриной грудки" — 400г (весовой, 0.4 кг)
2. "Творог 5%" — 2 шт (по 200г)
3. "Гречка" — 1 пачка (800г)
...

Каждый товар содержит:

  • Название для поиска (из маппинга VkusVill)
  • Количество (число)
  • Тип единицы: kg (весовой), pcs (штучный), pack (упаковка)

Шаг 6: Замены и альтернативы

Если товара нет в наличии, предложить альтернативу. При автоматическом добавлении в корзину (vkusvill-cart) — пробовать замены автоматически до 2 попыток перед тем как спрашивать пользователя.

Полная таблица замен

Нет в наличииЗамена 1Замена 2
Бедро куриное б/кФиле куриной грудкиФиле индейки
Филе куриной грудкиБедро куриное б/кФиле индейки
Филе индейкиФиле куриной грудкиБедро куриное б/к
Филе горбушиФиле минтаяФиле трески
Филе минтаяФиле трескиФиле горбуши
Сёмга/форельЛосось атлантическийКета стейк
Говядина вырезкаГовяжий фарш (постный)Свиной карбонад
Греческий йогуртСметана 10-15%Натуральный йогурт
ТофуАдыгейский сырБрынза
АвокадоСливочное масло (для текстуры)
Рис бурыйРис белыйГречка
Свежий шпинатЗамороженный шпинатЩавель
Свежая брокколиЗамороженная брокколиЦветная капуста
Болгарский перецЗамороженный перецПаприка молотая
Шампиньоны свежиеШампиньоны консервированныеВешенки
Творог 5%Творог 9% (уменьшить порцию жира)Творог обезжиренный
МоцареллаСыр сулугуниАдыгейский сыр
Чечевица краснаяЧечевица зелёнаяНут
НутФасоль краснаяЧечевица
КиноаБулгурКускус
БулгурКускусКиноа
ОвсянкаГеркулесХлопья 5-злаковые
МиндальГрецкие орехиКешью
БананЯблоко (в выпечке)Авокадо (в смузи)
ЛимонЛимонная кислотаУксус яблочный
Имбирь свежийИмбирь молотый (×0.3 количества)
Кокосовые сливкиСливки 20%Сметана 15%
ТемпеТофу
Растительное молокоЛюбое другое растительноеМолоко обычное (если не веган)
Макароны без глютенаРисовая лапшаГречневая лапша (соба)

Как использовать при автоматическом добавлении

При вызове навыка vkusvill-cart:

  1. Поиск по основному названию → если 0 результатов
  2. Автоматически попробовать Замену 1 → если 0 результатов
  3. Автоматически попробовать Замену 2 → если 0 результатов
  4. Сообщить пользователю: «Не нашёл [товар] и аналоги. Что предложить вместо него?»
  5. Записать в чекпоинт какая замена была использована

Антипаттерны

Не делай так:

  • «Соль, перец — по вкусу» в списке покупок — убери, считай что базовые специи есть
  • «Лимонный сок 1 ч.л.» — не покупай лимон ради 1 ч.л., замени на лимонную кислоту или убери
  • «Мука 2 ст.л.» — не покупай пачку муки ради 30г
  • «Петрушка 1 веточка» — не покупай пучок ради веточки, либо используй весь пучок в рецепте

Делай так:

  • Проверяй что все открытые упаковки используются в рецептах
  • Если нужен 1 зубчик чеснока — не включай в список (есть дома)
  • Яйца — всегда округляй до десятка
  • Масло — включай только если нужно > 100мл

Комментарии (0)

Войдите, чтобы оставить комментарий

Загрузка комментариев...

Список покупок