Nega Claude noto‘g‘ri ish qiladi: 3 ta so‘rov matni
MarkdownClaude sizning niyatingizni tushunmay turib kod yozishga shoshilgani uchun noto‘g‘ri narsani yaratadi. Buning sababini tushuntiraman va avval savollar berishga yordam beradigan, ishlatishga tayyor 3 ta so‘rov matnini beraman.
Maqolani to‘liq o‘qish
Asosiy xulosa
Claude kod yozishga shoshilib, siz nimani xohlaganingizni o‘zi taxmin qilib to‘ldirgani uchun noto‘g‘ri narsani yaratadi. Ko‘pincha bu taxmin xato bo‘ladi. Muammo deyarli hech qachon modelda emas — hatto eng kuchli model ham noaniq topshiriqda mo‘ljalni topolmaydi. Buni bir qadamda tuzataman: avval Claude mendan savollar so‘raydi, niyatimni aniqlashtiradi, shundan keyingina yozishni boshlaydi. Quyida nusxalab ishlatishingiz mumkin bo‘lgan uchta tayyor so‘rov matni bor.
Xizmatdan foydalanish haqida batafsil ma’lumot uchun Ailoot hujjatlarini ko‘ring.
Nega Claude noto‘g‘ri ish qiladi?
Asosiy xulosa
Claude qisqa so‘rov oladi, yetishmayotgan qismlarni darhol o‘zi to‘ldiradi va topshiriqni o‘zicha talqin qilib kod yozishga kirishadi. Uning talqini siznikidan farq qiladi. Natijada, siz bir qatorni o‘zgartirishni kutganingizda, diff 14 ta faylga tegib ketadi. Bunga aytganlaringiz bilan ko‘zlagan maqsadingiz orasidagi tafovut sabab bo‘ladi. Modelning bunga deyarli aloqasi yo‘q.
Siz: “Mahsulotlar sahifasiga filtrlar qo‘shing”, deb yozasiz. Xayolingizda bu bir nechta belgilash katakchasi va yangilangan ro‘yxat. Claude esa shu gapni eshitib, to‘laqonli filtrlash tizimini yaratishga qaror qiladi: alohida holat ombori, kiritishdagi kechikishni boshqarish mantiqi, URL bilan sinxronlash va o‘nlab yordamchi funksiyalar. Bir nechta URL parametri kifoya qiladigan joyda yuzlab qator kod paydo bo‘ladi.
Bunday holatda xulosa aniq: agent xato qilmagan, shunchaki zaruratdagidan ancha katta muammoni hal qilgan. Ayb kerakli natijani qisqa va aniq tasvirlamaganimizda edi.
Bu yerda kalit so‘z — “niyat”. U sizning xayolingizda bor, Claude’da esa yo‘q. U so‘rovingiz matnini va so‘rovgacha bo‘lgan butun kontekstni ko‘radi. Keyin bo‘shliqlarni taxminlar bilan to‘ldiradi. So‘rov qanchalik qisqa bo‘lsa, u shunchalik ko‘p taxmin qiladi — natija esa xohlaganingizdan shunchalik uzoqlashadi.
Anthropic buni Claude Code hujjatlarida ochiq aytadi:
Agar Claude’ni darhol kod yozishga qo‘ysangiz, u noto‘g‘ri muammoni hal qilishi mumkin.
Men ham o‘z loyihamda shunday holatga duch keldim. Bitta avtorizatsiya ekranidagi xatoni tuzatishni so‘radim, ammo diff qo‘shni modulning yarmiga ta’sir qildi. Claude aybdor emasdi: men unga bir qator berdim, u qolganini o‘zi to‘ldirdi. O‘shandan beri imlo xatosini tuzatishdan kattaroq har qanday vazifani savollardan boshlayman — ularni Claude mendan so‘raydi.
Muammo haqiqatan ham modeldami — va nega hatto eng kuchlilari ham mo‘ljaldan adashadi?
Asosiy xulosa
Modelning ahamiyati ko‘pchilik o‘ylaganchalik katta emas. Noaniq topshiriqda hatto eng kuchlisi ham mo‘ljalni topolmaydi: u ham xuddi shunday to‘liq bo‘lmagan ko‘rsatmalarni oladi va bo‘shliqlarni o‘z taxminlari bilan to‘ldiradi. Agentini nazoratda tutadigan dasturchilar eng yuqori darajadagi yoki o‘rta darajadagi modeldan foydalanishidan qat’i nazar, bir xil natijaga erishadi. Hammasi xohlagan narsangizni qanchalik aniq bayon qilishingizga bog‘liq. Bu yerda modelning qudrati ikkinchi darajali.
Har hafta avvalgisidan “aqlliroq” model paydo bo‘ladi va har safar AI nihoyat bir necha so‘zdan bizni tushunadigan payt keldi, deb o‘ylaymiz. Unday bo‘lmaydi. Kuchliroq model kodni tezroq yozadi va murakkab mantiqni yaxshiroq hal qiladi, lekin baribir xayolingizni o‘qiy olmaydi. Vazifa noaniq qo‘yilsa, chiroyli yozilgan, ammo baribir noto‘g‘ri natija olasiz.
Siz uchun xulosa oddiy. AI yaxshiroq taxmin qilsin deb eng yangi modelni quvish — boshi berk ko‘cha. Undan taxmin qilishni talab qilmaydigan tarzda vazifa berishni o‘rganish arzonroq va ishonchliroq. Keyingi qismda shu haqida.
Grilling nima va u AI bilan nomuvofiqlikni qanday bartaraf etadi?
Asosiy xulosa
Grilling — ish boshlashidan oldin AI’dan sizni so‘roq qilishni talab qilish: u o‘zaro tushunishga erishilguncha vazifa haqida batafsil savollar beradi. Maqsad — kodning birinchi qatori yozilishidan oldin muloqotdagi tafovutni bartaraf etish.
Bu aqlga zid tuyuladi. Ishni tezroq bitirish uchun AI’ga murojaat qilamiz, endi esa uni sekinlatib, avval savol berishga undashimiz kerak, deyishyapti. Ammo kod yozishdan oldingi besh daqiqalik savollar keyingi bir soatlik tuzatish ishini tejashi mumkin.
Muammo faqat Claude’ga narsalarni yomon tushuntirganingizda emas. Ko‘pincha vazifaning o‘zini hali yaxshilab o‘ylab chiqmagansiz: qaysi holatlarni hisobga olish, chegaralar qayerda, nima eng muhim. Grilling savollar orqali bularni yuzaga chiqaradi. Suhbat oxirida sizda nafaqat AI tushunadigan vazifa, balki nihoyat batafsil bayon qilingan o‘z vazifangiz ham bo‘ladi.
Kontekst muhandisligi shunday ishlaydi: asosiy ish so‘rov paytida emas, undan oldin bajariladi. Siz sehrli so‘rov matnini izlamaysiz; Claude ortiqcha izohsiz tushunmaguncha unga kerakli narsalarni oldindan bayon qilasiz.
Claude’dan avval sizga savol berishini qanday so‘raysiz?
Asosiy xulosa
Claude’ga vazifaning qisqa tavsifini bering va ish boshlashidan oldin siz bilan savol-javob qilishini aniq so‘rang: tafsilotlar, chekka holatlar va cheklovlar haqida so‘rasin, keyin esa oxirida hammasini texnik topshiriq fayliga jamlasin. Bu Anthropic’ning rasmiy tavsiyasi — Claude Code hujjatlarida tayyor so‘rov shabloni bor. Uni nusxalang, tavsifni o‘zgartiring va sessiya boshida yuboring.
Anthropic bu yondashuvga shunchaki ruxsat bermaydi, balki uni tavsiya qiladi. Hujjatlarda “Claude siz bilan suhbatlashsin” deb nomlangan, tayyor so‘rovli bo‘lim bor. Mana amaliy variant:
So‘rov matni
Grilling uchun so‘rov matni — Claude mendan savol so‘rasin
Men [vazifaning qisqacha tavsifi]ni yaratmoqchiman.
Har qanday kod yozishdan oldin meni batafsil so‘roq qiling. Amalga oshirish, interfeys, chekka holatlar, xavflar va murosalar haqida savollar bering. O‘z-o‘zidan ravshan savollarni bermang — men o‘ylab ko‘rmagan bo‘lishim mumkin bo‘lgan murakkab jihatlarni aniqlang.
Bir vaqtda bittadan savol bering va javobimni kuting. Har bir savoldan so‘ng darhol tavsiya etilgan javobingizni taklif qiling.
Hammasini qamrab olmagunimizcha davom eting. So‘ng yakunda SPEC.md nomli faylda to‘liq texnik topshiriqni tuzing.
Ushbu so‘rov matnini shunchaki bezak emas, foydali qiladigan uchta tafsilot bor. Birinchisi — “bir vaqtda bittadan savol”. AI birdaniga o‘nta savol tashlasa, boshingiz qotadi va yuzaki javob berasiz. Ikkinchisi — “javobingizni taklif qiling”: hammasini noldan o‘ylab topishingiz shart emas, taklifga qo‘shilishingiz yoki uni tuzatishingiz mumkin. Uchinchisi — “texnik topshiriqni faylga jamlang”: sizdan aniqlangan niyat hujjatga aylanadi va yo‘qolib ketmaydi.
Anthropic natijani sarflangan mehnat bilan bog‘lab shunday ta’riflaydi:
Texnik topshiriqni to‘g‘ri shakllantirishga ketgan vaqt amalga oshirishni kuzatishga ketgan vaqtdan qimmatroqdir.
Suhbatdan keyin yangi sessiya ochib, tayyor texnik topshiriqni unga bering. Toza kontekst va aniq bayon qilingan niyat — shunda Claude birinchi urinishdayoq mo‘ljalni topadi.
“Reja eng yaxshisi ekanini isbotla” usuli
Asosiy xulosa
AI’dan shunchaki savol berishni emas, qarorini ham himoya qilishni so‘rang. Men vazifaga qo‘shimcha talab kiritaman: taklif qilingan reja xayolga kelgan birinchi variant emas, balki eng yaxshisi ekanini va bir necha qadam oldinni o‘ylab tuzilganini isbotlasin. Bu Claude’ni “shunga o‘xshash bir narsa qilaman” holatidan tanqidchi holatiga o‘tkazadi, toki amalga oshirishga vaqt sarflashdan oldin o‘z ishini tekshiradi.
Grilling niyatingizni yuzaga chiqaradi. Ammo AI’da yana bir odat bor: ishonarli ko‘ringan birinchi yechimni tanlaydi. Anthropic buni “ishon, lekin tekshir” tafovuti deb ataydi: Claude ishonarli ko‘ringan, ammo chekka holatlarda ishlamaydigan yechim yaratadi. Kod yozilishidan oldin dalil so‘rash muammoni hal qiladi.
Natijani tekshira olmasangiz, uni topshirmang.
Men deyarli har doim so‘rov matnimga “isbotla” bo‘limini qo‘shaman. Mana aynan ishlatadigan matnim:
So‘rov matni
So‘rov matni — AI rejani himoya qilsin
Kod yozishdan oldin vazifani tanqidchi sifatida tahlil qiling.
Uni hal qilishning 2-3 usulini toping. Har biri uchun, o‘z-o‘zicha murakkablik qo‘shish o‘rniga, aynan vazifamni hal qilishini isbotlang. Faqat kod yozish uchun kod yozmang.
So‘ng bittasini tanlang va bir necha qadam oldinni o‘ylab, bu eng yaxshi yechim ekanini isbotlang. Loyiha kengaygani sari nima buziladi? Hozir nimani nazardan qochiryapmiz?
Shundan keyingina amalga oshirish variantini taklif qiling.
Bu bo‘limsiz Claude ishlaydigan birinchi variantni beradi. U bilan esa Claude boshi berk yo‘llarni o‘zi chiqarib tashlaydi, tanlovini izohlaydi va birorta faylga tegishdan oldin fikrlash jarayonini ko‘rsatadi. Tayyor kod kutilgandek ishlamasligining sababini bir soat davomida aniqlash o‘rniga, ikki daqiqada o‘qiladigan qisqa matnni ko‘rib chiqasiz.
Oldindan muvaffaqiyatsizlik tahlili: boshlashdan avval AI’dan muvaffaqiyatsizlikning 10 sababini topishni so‘rang
Asosiy xulosa
Oldindan muvaffaqiyatsizlik tahlili — AI’dan loyiha allaqachon muvaffaqiyatsiz tugaganini tasavvur qilib, sabablarini aytishni so‘rash usuli. Claude optimistik “buni uddalayman” holatidan chiqib, aks holda bir haftalik ishdan keyin yuzaga chiqadigan zaif tomonlarni izlay boshlaydi. Loyihaga vaqt sarflashdan oldin xavflar ro‘yxatini olasiz va ularni oldindan bartaraf etishingiz mumkin.
Bu mening eng sevimli usulim, uning ta’siri psixologik. AI’dan “yaxshi ish qilishni” so‘rasangiz, u muvaffaqiyatga yo‘naltiriladi va kamchiliklarni ko‘zdan qochiradi. Muvaffaqiyatsizlikni tasavvur qilishni so‘rang — avval e’tiborsiz qoldirgan narsalarni ko‘ra boshlaydi. So‘rov matni qisqa:
So‘rov matni
Oldindan muvaffaqiyatsizlik tahlili uchun so‘rov — boshlashdan oldin kamchiliklarni toping
Tasavvur qiling, oradan bir yil o‘tibdi. Biz rejalashtirayotgan loyiha muvaffaqiyatsiz yakunlangan.
Nima sababdan shunday bo‘lganini 10 ta bandda yozing. Boshida nimani hisobga olmadik, nimani past baholadik, qayerda ishni chala qildik va qaysi taxminlarimiz noto‘g‘ri chiqdi?
So‘ng har bir sabab bo‘yicha, uni bartaraf etish uchun hozir nimani tuzata olishimizni ayting.
Rejani tasdiqlashdan oldin shu so‘rov matnidan foydalanaman. Sabablarning yarmi bema’nilik bo‘lib chiqadi, ammo qolgan yarmi bir haftadan keyin duch kelishim mumkin bo‘lgan haqiqiy tuzoqlardir. Rejalashtirish bosqichida ularni bartaraf etish o‘n daqiqa oladi. Tayyor loyiha ichida ularga duch kelish esa bir necha kunlik tekshiruv ishini talab qiladi.
Birgalikdagi usul oddiy: grilling niyatni yuzaga chiqaradi, “isbotla” qarorni himoya qiladi, oldindan muvaffaqiyatsizlik tahlili esa kamchiliklarni topadi. Kod yozishdan avval yuboriladigan uchta qisqa matn. Ular Claude’ni shoshqaloq ijrochidan avval o‘ylaydigan hamkorga aylantiradi.
Haddan tashqari to‘lgan kontekst Claude’ni nega aqlsizroq tutishga majbur qiladi?
Asosiy xulosa
Claude’ning kontekst oynasi cheklangan — bu uning bir paytda yodda ushlab tura oladigan ma’lumot miqdori. Oyna yarmidan ko‘proq to‘lganda, u muhim tafsilotlarni yo‘qota boshlaydi, oldingi kelishuvlarni chalkashtiradi va eslash o‘rniga bo‘shliqlarni taxminlar bilan to‘ldiradi. Har narsani muhokama qiladigan uzun sessiya — kun oxirida AI ertalab kelishganingizdan butunlay boshqacha ish qilishining keng tarqalgan sababidir.
Hatto juda aniq qo‘yilgan vazifa ham tartibsiz kontekstda bajarilsa, barbod bo‘ladi. Bu shunday ishlaydi: har bir yangi so‘rovingiz butun suhbat tarixini Claude’ning ish kontekstiga olib kiradi. Sessiya qancha uzun bo‘lsa, oyna shuncha tez to‘ladi. Uni yarmidan ko‘p to‘ldirmang; aks holda AI aqlsizroq tutib, boshida muhokama qilgan muhim narsalarni yo‘qota boshlaydi.
Meni eng ko‘p asabiylashishdan qutqaradigan qoida mana bu: bitta vazifa, bitta chat. Funksiya tugadimi? Chatni yoping va keyingi vazifa uchun yangisini oching. Ha, hammasini bitta oynada qilish ba’zan qulayroq, ammo buning evaziga kontekst yo‘qolishi va mavzudan chetga chiqqan javoblarni olasiz.
Anthropic bu xato holatini “keraksiz narsalar tortmasi sessiyasi” deb ataydi. Yechim oddiy: aloqasiz vazifalar orasida oynani tozalash va oldingi vazifadan ortiqcha narsalarni yangisiga olib o‘tmaslik uchun /clear buyrug‘idan foydalaning.
Agar uzoq sessiyalar o‘tkazib, pul va AI diqqati qayerga ketayotganini tushunmasangiz, bu haqda Claude Code tokenlari qayerga ketishi qo‘llanmasida alohida yozganman. Claude har safar ishga tushganda o‘qiydigan doimiy kontekst asoslarini esa CLAUDE.md faylini sozlash qo‘llanmasida jamlaganman.
Grilling va Plan Mode: farqi nimada va ular qanday birga ishlaydi?
Asosiy xulosa
Grilling va Plan Mode bir muammoning turli qismlarini hal qiladi. Grilling reja tuzilishidan oldin savollar orqali niyatingizni aniqlashtiradi. Plan Mode esa allaqachon tushunilgan vazifa uchun o‘zgarishlar rejasini ko‘rsatadi va siz tasdiqlamaguningizcha hech narsaga tegmaydi. Ular birga eng yaxshi ishlaydi: avval grilling nimani qurayotganimizni aniqlashtiradi, keyin Plan Mode aynan qanday qilishni ko‘rsatadi.
Odamlar bu ikki usulni ko‘pincha chalkashtirib yuboradi yoki ulardan faqat bittasi kerak deb o‘ylaydi. Aslida ular jarayonning turli bosqichlariga tegishli.
| Xususiyat | Grilling | Plan Mode |
|---|---|---|
| Qachon bo‘ladi | Rejadan oldin — niyatni aniqlashtiradi | Keyin — o‘zgarishlar rejasini tuzadi |
| Kim kimdan so‘raydi | AI siz bilan suhbatlashadi | Siz rejani o‘qib, tasdiqlaysiz |
| Natija | Vazifa texnik topshirig‘i | Fayllar kesimidagi o‘zgarishlar rejasi |
| Asosiy foyda | “Men buni xohlamagandim” holatining oldini oladi | “Boshqa hech narsaga tegmang” holatining oldini oladi |
Anthropic to‘rt bosqichli namunaviy ish jarayonini ta’riflaydi: avval Explore (Claude o‘rganadi va savollar beradi), keyin Plan (o‘zgarish qilmay reja tuzadi), undan so‘ng Implement (reja bo‘yicha kod yozadi), oxirida esa Commit (natijani qayd etadi). Grilling birinchi bosqichda, Plan Mode esa ikkinchisida qo‘llanadi. Ikkinchi bosqichni batafsil ko‘rib chiqish uchun Claude Code’dagi Plan Mode qo‘llanmasiga qarang.
Anthropic’ning o‘zidan muhim bir izoh: kichik vazifalarni bu jarayon bilan ortiqcha murakkablashtirmang.
O‘zgarishni bir jumlada tasvirlay olsangiz, rejadan voz keching.
Imlo xatosi, nomni o‘zgartirish yoki bir qatorlik tuzatish uchun shunchaki to‘g‘ridan-to‘g‘ri yozing — suhbat yoki reja shart emas. Grilling noaniqligi va xato qilish narxi katta vazifalarda foyda beradi. Oddiy vazifalarda esa faqat vaqtingizni oladi.
AI’ni noto‘g‘ri ish qilishga olib keladigan vazifani qo‘yishdagi 5 xato
Asosiy xulosa
AI’ning deyarli har bir xatosi vazifani qo‘yishdagi beshta xatodan biriga borib taqaladi: noaniq bir qatorlik so‘rov, cheklovlarning yo‘qligi, avval tushunish bosqichisiz “kod yoz”, “bajarildi” ta’rifining yo‘qligi va barcha ishlar uchun cheksiz davom etadigan bitta sessiya. Har biri Claude’ni vazifani taxminlar bilan to‘ldirishga majbur qiladi. Quyida ularning ko‘rinishi va o‘rniga nima qilish kerakligi berilgan.
Keng tarqalgan xatolarni jadvalda jamladim. Chap tomonda odamlar odatda nima qilishi va xato qilishi, o‘ng tomonda esa buning o‘rniga nima qilish kerakligi ko‘rsatilgan.
| Xato | Odatda qanday aytiladi | Buning o‘rniga nima qilish kerak |
|---|---|---|
| Noaniq bir qatorlik so‘rov | “Boshqaruv panelini yaxshilang” | Vazifani tasvirlab, grilling sessiyasini boshlang — AI savollar orqali tafsilotlarni aniqlashtirsin |
| Cheklovlar yo‘q | “Avtorizatsiya qo‘shing” | Nima buzilmasligi, qaysi kutubxonalarni qo‘shmaslik va nimalar vazifaga kirmasligini ayting |
| Darhol “kod yoz” deyish | So‘rov — va darhol kod yozishni boshlash | Avval “tushun va savol ber”, keyin kod yoz |
| “Bajarildi” ta’rifi yo‘q | Natijani AI taxmin qilishini kutasiz | “Ishlaydi” degani nimani anglatishini ko‘rsatish uchun misol, namuna skrinshot yoki test bering |
| Hamma narsa uchun bitta sessiya | Kun bo‘yi bitta chatda qolish | Kontekst tartibsizlashmasligi uchun bitta vazifa, bitta yangi chat |
AI noto‘g‘ri javob bergan oxirgi so‘rov matningizni ko‘rib chiqing. Bu beshta xatodan biri sabab bo‘lganiga deyarli shubha yo‘q. Ko‘pincha birinchi xato uchraydi: Claude qolganini to‘g‘ri to‘ldiradi deb, unga qisqa ibora berdingiz. U qolganini to‘ldirdi — faqat siz ko‘zlagan tarzda emas.
Keyin nima: AI sizni bir necha so‘zdan tushunadigan tizim yarating
Asosiy xulosa
Alohida so‘rov matnlari alohida vazifalarni hal qiladi. AI har safar uzoq izohsiz sizni tushunishi uchun tizim kerak: grilling har bir vazifa bo‘yicha niyatni yuzaga chiqaradi, Second Brain loyiha bilimlarini saqlaydi, kontekst muhandisligi esa Claude so‘rovdan oldin o‘qiydigan barcha ma’lumotni birlashtiradi. Shunda uning noto‘g‘ri ish qilishiga sabab qolmaydi: taxmin qilishdan qochishi uchun doim yetarlicha konteksti bo‘ladi.
Ushbu qo‘llanmadagi uchta so‘rov matni — grilling, “isbotla” va oldindan muvaffaqiyatsizlik tahlili — ayni vazifani hal qiladi. Buning o‘zi katta yordam: sizga kerak bo‘lgani bir qatorlik o‘zgarish bo‘lsa, endi 14 ta faylga tegadigan diff olmaysiz.
Ammo grillingning chegarasi bor. Har safar niyatingizni boshidan aniqlashtirish ko‘p vaqt oladi. Haqiqiy o‘zgarish ba’zi kontekst doim mavjud bo‘lganda yuz beradi: loyiha haqidagi bilimlar papkasida, Claude har safar ishga tushganda o‘qiydigan CLAUDE.md faylida va ko‘nikmalarda kodlangan metodologiyangizda. Shunda AI vazifaga biznesingiz, maqsadlaringiz va uslubingizni bilgan holda keladi — kontekstning yarmini oldindan bayon qilganingiz uchun sizni bir necha so‘zdan tushunadi.
Anthropic’ning yaqindagi tahlili bu ish ko‘lamini ko‘rsatadi: dasturchilar ishining taxminan 60% ida AI’dan foydalanadi, ammo vazifalarning atigi 0-20% ida unga to‘liq ishonishi mumkin. Qolganlari uchun sizning tushunishingiz, nazoratingiz va nima qurish kerakligini tushuntira olishingiz zarur. Eng aqlli modelni quvish emas, rivojlantirishga arziydigan ko‘nikma shu.
Manbalar
Ailoot bilan tanishing.
Batafsil
Ko‘p beriladigan savollar
Qachon koddan oldin intervyu topshirig‘ini ishlatish kerak?
Natija, chekka holatlar yoki cheklovlar noaniq va xatolar qimmat bo‘lsa ishlating. Bittadan savol so‘rab, kelishilgan natijani SPEC.md’ga saqlang. Imlo xatosi yoki aniq bir satrlik o‘zgarishni bevosita so‘rash mumkin.
Taklif qilingan rejani qabul qilishdan oldin nimani tekshiraman?
Ikki yoki uch yondashuv so‘rab, har birini spetsifikatsiya va cheklovlar bilan solishtiring. Keyin pre-mortem topshirig‘ini bajartiring, muvaffaqiyatsizlik sabablarini ko‘ring va tegishli xatarlarni amalga oshirishdan oldin hal qiling.