MILAGPT
Начните с «Для бизнеса»: три шага до запуска.
Записаться на разборОткроется Telegram
RU·EN·UZ
Документация · Путь гостя

Путь гостя: предложение пробы — не позже третьего ответа

Гость написал вашему боту, получил три вопроса подряд и ушёл. Мила устроена против этого: отвечает на языке гостя, задаёт один вопрос о деле и одно уточнение, а не позже третьего ответа даёт строку пользы под его дело и кнопку пробы. Счёт приходит карточкой, а экзамен из сценариев проверяет всё это после каждой правки. У каждой строки ниже — ссылка на код.

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

Шесть правил

От первого сообщения до счёта

Цель гостя — за 3–4 хода понять, чем Мила поможет его делу, и получить пробу. Цель Милы — честно довести гостя до решения: купить или «не сейчас». Правила взяты у Милы Ташкент: после них экзамен «Путь клиента» сдан на 15 из 15. guest-path:10 guest-path:9 CHANGELOG.md:84-85

01 · ЯЗЫК

Язык — его

Русский, узбекский или английский — по всем его текстам за разговор, а не по одному слову, @имени или языку аккаунта. Фото без подписи — на языке его последнего текста.

guest-path:12-15
02 · ТРЕТИЙ ОТВЕТ

Польза и проба

Самое позднее в третьем ответе — строка пользы под его дело и кнопка пробы. Третий ответ без предложения — ошибка.

guest-path:17-20
03 · СЧЁТ

Счёт карточкой

Картинка и способы оплаты кнопками. Реквизиты текстом не повторяются, если они уже есть в кнопке.

guest-path:22-23
04 · МЯГКИЙ ОТКАЗ

Незаконная просьба

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

guest-path:28-29
05 · ПРИМЕР

«Что мне скидывать?»

Пример одной строкой под его дело: «фото меню или три частых вопроса гостей».

guest-path:31-32
06 · МЕТКА

Путь метки

Гость пришёл по ссылке-метке — партнёр, профессия, эфир, подарок — Мила продолжает её тему и не продаёт первым основной продукт.

guest-path:34-35
Три ответа

Один вопрос, одно уточнение — дальше предложение

Знакомство — один вопрос о деле и одно уточнение. На «по-разному» или «не знаю» Мила больше не уточняет, а предлагает. guest-path:17-20

Уже предлагала дважды? В третий раз не повторяет и идёт другим путём: созвон с людьми или пример. guest-path:17-20

Приветствие, кнопки и тексты меток — тоже на языке гостя: у меток есть поля _uz и _en. Никого не переводят на русский. guest-path:12-15

Готово, если
  • Ответ — на языке гостя.
  • К третьему ответу есть строка пользы под его дело и кнопка пробы — или они уже были раньше.
  • Гость выбрал пробу — карточка счёта, без реквизитов в тексте. guest-path:42-45
Счёт и оплата

Одна карточка и одна фраза

Гость выбрал пробу — Мила присылает карточку счёта: картинка и способы оплаты кнопками. Фраза одна: «Выберите способ на карточке; если переводом — пришлите скриншот сюда». guest-path:22-23

Гостю из другой страны — способы без местной валюты, Telegram Stars или USDT; местные способы — тем, кто платит в местной валюте. guest-path:24

«Выставим завтра» или «оплатите по кнопке», когда кнопки нет, Мила не говорит. Скриншот перевода сверяет: сколько, кому, когда и статус; сомнение — «проверю и вернусь», а не «принято». guest-path:25 guest-path:26

Чего Мила не делает
  • Служебных меток — ✅, ⚠, ❌, «мой вывод» — в тексте гостю нет, только в карточке.
  • О своём устройстве не пишет: сессии, память, «новый разговор начать не могу».
  • Цен не придумывает: только из прайса владельца. guest-path:37-40
Экзамен

Один файл сценариев — два прогона

Слово владельца 17.10.2026: быстрый прогон — часто, живую симуляцию — время от времени. Сценарии лежат в одном yaml: id, title, say — реплики гостя по очереди, must, must_not, required. Быстрый и живой прогоны читают один и тот же файл, иначе баллы несравнимы. exam:9 exam:11-13 exam.example.yaml:1-2

Быстрый прогон — минуты, после каждой правки: тот же промпт, что в боевом боте, свежая сессия на каждый сценарий, реплики гостя по очереди. Ответы оценивает отдельный ход модели по must и must_not: сдано или нет, с дословной цитатой. exam:15-16 express_exam.mjs:62-73 exam:17 express_exam.mjs:41-50

В шапке отчёта — sha256 промпта: сверьте его с тем, что на самом деле стоит в вашем боте. exam:16 express_exam.mjs:100 README.md:10

$ bun tools/express_exam.mjs \
    --yaml docs/exam-example/exam.example.yaml \
    --prompt docs/exam-example/guest-prompt.example.md \
    --repeat 3
Доверие к оценке

Подложенный провал обязан упасть

01

Каждый сценарий трижды

С --repeat 3 сценарий идёт три раза, итог — «k из 3»: разброс модели виден, а не прячется. Сценарий сдан по большинству.

exam:18 express_exam.mjs:86-91
02

Подложенные провалы

Последний ответ Милы подменяется заведомо плохим — прайс списком, «выставим завтра», служебная метка. Оценка обязана сказать «не сдано». Не поймала — оценке не верим.

exam:19 express_exam.mjs:92-97 exam.example.yaml:26-27
03

Глазами гостя

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

express_exam.mjs:37-39
Живой прогон

Раз в сутки ночью — через настоящего бота

Юзербот пишет боту как гость. Перед каждым сценарием — полный сброс гостя: сессия, картинки, приветствие, язык, метка, счётчик ходов, карточки, счета — всё по этому id и только для тестовых id. exam:22-24

Итоги быстрого и живого прогонов сверяются по пунктам; расхождение — разбор, какой из двух врёт. exam:22-24

Цикл: провал, урок одной строкой, правка промпта или моста, быстрый прогон за минуты, живой — ночью. Третье одинаковое замечание уходит в правила. exam:26-27

Сценарии-примеры · exam.example.yaml
  • «Хочу свою Милу» — предложение пробы в первом же ответе и кнопка, чтобы начать. yaml:4-9
  • Третий ответ — пекарня, «по-разному»: строка пользы и предложение пробы. yaml:10-15
  • Гость на узбекском — ответ на узбекском, не на русском и не на английском. yaml:16-20
  • Незаконная просьба — мягкий отказ, законный путь на своих контактах, проба. yaml:21-25
Честно

Чего путь гостя не делает

В репозитории

Каждую строку можно прочитать самому

Файлы пути гостя и экзамена в репозитории mila
ФайлЧто делает
skills/guest-path/SKILL.mdпуть гостя: язык, третий ответ, счёт, мягкий отказ, пример, метка
skills/exam/SKILL.mdэкзамен: один yaml, быстрый и живой прогоны, подложенные провалы
tools/express_exam.mjsбыстрый прогон: сценарии, оценка, --repeat, подложенные провалы, отчёт
docs/exam-example/README.mdкак запустить быстрый экзамен (на английском)
exam.example.yamlсценарии-примеры и подложенный провал
packs/clinic/exam.yamlэкзамен пакета «Клиника»
Открытый код · Apache-2.0

Форкните, научите, пришлите PR

Набор открыт: умения, хуки, инструменты и шаблоны. Положите свой промпт гостя рядом с exam.example.yaml и запустите быстрый экзамен: отчёт покажет, какие сценарии сданы.

Факты на странице: github.com/shakhruz/mila (main, 570db38), проверено 28.10.2026. Реплики гостя в телефоне — сценарий s02 из docs/exam-example, ответы Милы — иллюстрация. «Mila», «MILAGPT» и логотип — товарные знаки MILAGPT.