MILAGPT
«Biznes uchun»dan boshlang: ishga tushirishgacha uch qadam.
Tahlilga yozilishTelegram ochiladi
RU·EN·UZ
Hujjatlar · Mehmon yoʻli

Mehmon yoʻli: sinab koʻrish taklifi — uchinchi javobdan kechikmay

Mehmon botingizga yozdi, ketma-ket uchta savol oldi-yu, chiqib ketdi. Mila aynan shunga qarshi qurilgan: mehmonning tilida javob beradi, ishi haqida bitta savol va bitta aniqlashtiruvchi savol beradi, uchinchi javobidan kechikmay esa uning ishiga mos bir qator foyda va sinab koʻrish tugmasini taklif qiladi. Toʻlov hisobi kartochka boʻlib keladi, ssenariylardan iborat imtihon esa bularning hammasini har bir tuzatishdan keyin tekshiradi. Quyidagi har bir qatorda kodga havola bor.

Botiga saytdan, reklamadan, efirlardan va belgili havolalar orqali mehmonlar keladigan egaga.

Olti qoida

Birinchi xabardan toʻlov hisobigacha

Mehmonning maqsadi — 3–4 qadamda Mila uning ishiga qanday yordam berishini tushunish va sinab koʻrish. Milaning maqsadi — mehmonni halol yoʻl bilan qarorga olib kelish: sotib olish yoki «hozir emas». Qoidalar Mila Toshkentdan olingan: ulardan keyin «Mijoz yoʻli» imtihoni 15 tadan 15 ga topshirilgan. guest-path:10 guest-path:9 CHANGELOG.md:84-85

01 · TIL

Til — uniki

Rus, oʻzbek yoki ingliz tili — bitta soʻz, @nom yoki akkaunt tiliga qarab emas, butun suhbatdagi matnlariga qarab. Izohsiz rasmga — uning oxirgi matni tilida.

guest-path:12-15
02 · UCHINCHI JAVOB

Foyda va sinab koʻrish

Eng kechi uchinchi javobda — uning ishiga mos bir qator foyda va sinab koʻrish tugmasi. Taklifsiz uchinchi javob — xato.

guest-path:17-20
03 · HISOB

Hisob — kartochkada

Rasm va toʻlov usullari tugmalarda. Rekvizitlar tugmada boʻlsa, matnda takrorlanmaydi.

guest-path:22-23
04 · YUMSHOQ RAD

Qonunga zid iltimos

«Oʻsha chatdan uy egalarini topib ber» — yumshoq rad, mehmonning oʻz kontaktlari bilan qonuniy yoʻl va sinab koʻrish. Quruq rad — xato.

guest-path:28-29
05 · MISOL

«Nima yuboray?»

Uning ishiga mos bir qatorli misol: «menyu surati yoki mehmonlar koʻp beradigan uchta savol».

guest-path:31-32
06 · BELGI

Belgi yoʻli

Mehmon belgili havola orqali keldi — hamkor, kasb, efir, sovgʻa — Mila oʻsha mavzuni davom ettiradi va birinchi boʻlib asosiy mahsulotni sotmaydi.

guest-path:34-35
Uchta javob

Bitta savol, bitta aniqlashtirish — keyin taklif

Tanishuv — ish haqida bitta savol va bitta aniqlashtirish. «Har xil» yoki «bilmayman» desa, Mila boshqa soʻramaydi, taklif qiladi. guest-path:17-20

Ikki marta taklif qilib boʻldimi? Uchinchi marta takrorlamaydi, boshqa yoʻldan boradi: odamlar bilan qoʻngʻiroq yoki misol. guest-path:17-20

Salomlashuv, tugmalar va belgilar matni ham mehmonning tilida: belgilarda _uz va _en maydonlari bor. Hech kimni rus tiliga oʻtkazishmaydi. guest-path:12-15

Tayyor, agar
  • Javob — mehmonning tilida.
  • Uchinchi javobgacha uning ishiga mos foyda qatori va sinab koʻrish tugmasi bor — yoki ular avvalroq boʻlgan.
  • Mehmon sinab koʻrishni tanladi — hisob kartochkasi, matnda rekvizitlarsiz. guest-path:42-45
Hisob va toʻlov

Bitta kartochka va bitta gap

Mehmon sinab koʻrishni tanladi — Mila hisob kartochkasini yuboradi: rasm va toʻlov usullari tugmalarda. Gap bitta: «Kartochkadan usulni tanlang; pul oʻtkazsangiz — skrinshotni shu yerga yuboring». guest-path:22-23

Boshqa mamlakatdan kelgan mehmonga — mahalliy valyutasiz usullar, Telegram Stars yoki USDT; mahalliy usullar — mahalliy valyutada toʻlaydiganlarga. guest-path:24

«Ertaga hisob chiqaramiz» yoki tugma yoʻq paytda «tugma orqali toʻlang» demaydi. Pul oʻtkazmasi skrinshotini solishtiradi: qancha, kimga, qachon va holati; shubha boʻlsa — «tekshirib, qaytaman», «qabul qilindi» emas. guest-path:25 guest-path:26

Mila nima qilmaydi
  • Xizmat belgilari — ✅, ⚠, ❌, «mening xulosam» — mehmonga yozilgan matnda yoʻq, faqat kartochkada.
  • Oʻz tuzilishi haqida yozmaydi: sessiyalar, xotira, «yangi suhbat boshlay olmayman».
  • Narxni oʻylab topmaydi: faqat egasining narxlar roʻyxatidan. guest-path:37-40
Imtihon

Bitta ssenariylar fayli — ikki xil sinov

Egasining 17.10.2026 dagi soʻzi: tezkor sinov — tez-tez, jonli simulyatsiya — vaqti-vaqti bilan. Ssenariylar bitta yaml faylda turadi: id, title, say — mehmonning navbatma-navbat gaplari, must, must_not, required. Tezkor va jonli sinov bitta faylni oʻqiydi, aks holda ballarni solishtirib boʻlmaydi. exam:9 exam:11-13 exam.example.yaml:1-2

Tezkor sinov bir necha daqiqa oladi va har bir tuzatishdan keyin oʻtkaziladi: haqiqiy botdagi promptning oʻzi, har ssenariyga yangi sessiya, mehmonning gaplari navbatma-navbat. Javoblarni modelning alohida navbati must va must_not boʻyicha baholaydi: oʻtdi yoki oʻtmadi, soʻzma-soʻz iqtibos bilan. exam:15-16 express_exam.mjs:62-73 exam:17 express_exam.mjs:41-50

Hisobot sarlavhasida promptning sha256 qiymati turadi: uni botingizda haqiqatda turgan prompt bilan solishtiring. 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
Baholovchiga ishonch

Ataylab qoʻyilgan xato yiqilishi shart

01

Har bir ssenariy uch marta

--repeat 3 bilan ssenariy uch marta oʻtkaziladi, natija — «3 tadan k»: model javoblaridagi tarqoqlik yashirilmaydi, koʻrinib turadi. Ssenariy koʻpchilik natija bilan oʻtadi.

exam:18 express_exam.mjs:86-91
02

Ataylab qoʻyilgan xatolar

Milaning oxirgi javobi ataylab yomon javobga almashtiriladi — roʻyxat qilib berilgan narxlar, «ertaga hisob chiqaramiz», xizmat belgisi. Baholovchi «oʻtmadi» deyishi shart. Ushlamasa — baholovchiga ishonilmaydi.

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

Mehmon koʻzi bilan

Koʻprikning xizmat belgilari olib tashlanadi, tugmalar soʻz bilan koʻrsatiladi: baholovchi suhbatni mehmon qanday koʻrsa, shunday oʻqiydi.

express_exam.mjs:37-39
Jonli sinov

Sutkada bir marta, tunda — haqiqiy bot orqali

Userbot botga mehmon boʻlib yozadi. Har bir ssenariydan oldin mehmon toʻliq tozalanadi: sessiya, rasmlar, salomlashuv, til, belgi, navbatlar hisoblagichi, kartochkalar, hisoblar — shu id boʻyicha hammasi va faqat test id lari uchun. exam:22-24

Tezkor va jonli sinov natijalari band-band solishtiriladi; farq chiqsa, ikkovidan qaysi biri notoʻgʻri ekani aniqlanadi. exam:22-24

Sikl: xato, bir qatorlik saboq, prompt yoki koʻprikni tuzatish, bir necha daqiqada tezkor sinov, tunda — jonli sinov. Bir xil izoh uchinchi marta aytilsa, qoidalarga kiradi. exam:26-27

Namuna ssenariylar · exam.example.yaml
  • «Oʻz Milam kerak» — birinchi javobdayoq sinab koʻrish taklifi va boshlash tugmasi. yaml:4-9
  • Uchinchi javob — novvoyxona, «har xil»: foyda qatori va sinab koʻrish taklifi. yaml:10-15
  • Oʻzbek tilidagi mehmon — javob oʻzbekcha, rus yoki ingliz tilida emas. yaml:16-20
  • Qonunga zid iltimos — yumshoq rad, oʻz kontaktlari bilan qonuniy yoʻl, sinab koʻrish. yaml:21-25
Ochigʻini aytsak

Mehmon yoʻli nima qilmaydi

Repozitoriyda

Har bir qatorni oʻzingiz oʻqib chiqing

mila repozitoriysidagi mehmon yoʻli va imtihon fayllari
FaylNima qiladi
skills/guest-path/SKILL.mdmehmon yoʻli: til, uchinchi javob, hisob, yumshoq rad, misol, belgi
skills/exam/SKILL.mdimtihon: bitta yaml, tezkor va jonli sinov, ataylab qoʻyilgan xatolar
tools/express_exam.mjstezkor sinov: ssenariylar, baholovchi, --repeat, ataylab qoʻyilgan xatolar, hisobot
docs/exam-example/README.mdtezkor imtihonni qanday ishga tushirish (ingliz tilida)
exam.example.yamlnamuna ssenariylar va ataylab qoʻyilgan xato
packs/clinic/exam.yaml«Klinika» paketining imtihoni
Ochiq kod · Apache-2.0

Fork qiling, oʻrgating, PR yuboring

Toʻplam ochiq: koʻnikmalar, hooklar, vositalar va shablonlar. Mehmon uchun promptingizni exam.example.yaml yoniga qoʻying va tezkor imtihonni ishga tushiring: hisobot qaysi ssenariylar oʻtganini koʻrsatadi.

Sahifadagi faktlar: github.com/shakhruz/mila (main, 570db38), 28.10.2026 da tekshirilgan. Telefondagi mehmon gaplari — docs/exam-example dagi s02 ssenariysi, Mila javoblari — tasvir uchun. «Mila», «MILAGPT» va logotip — MILAGPT tovar belgilari.