Kodėl Claude atlieka ne tą užduotį ir kaip tai ištaisyti
MarkdownClaude parašo ne tai, nes skuba rašyti kodą nesupratęs jūsų ketinimų. Paaiškinu priežastis ir pateikiu 3 paruoštas užklausas, kad jis pirmiausia užduotų klausimų.
Skaityti visą straipsnį
Svarbiausia įžvalga
Claude parašo ne tai, nes puola rašyti kodą ir pats nusprendžia, ko, jo manymu, norėjote. Dažnai jis suklysta. Beveik niekada problema nėra modelis — net pats galingiausias nepataikys į tikslą, jei užduotis neaiški. Tai išsprendžiu vienu žingsniu: pirmiausia leidžiu Claude mane apklausti, išsiaiškinti mano ketinimus ir tik tada rašyti. Toliau pateikiu tris paruoštus raginimus, kuriuos galite nukopijuoti ir įklijuoti.
Daugiau apie paslaugos naudojimą skaitykite Ailoot dokumentacijoje.
Kodėl Claude daro ne tai?
Svarbiausia įžvalga
Claude gauna trumpą užduotį, akimirksniu užpildo spragas ir puola rašyti kodą pagal savo paties užduoties versiją. Jo versija skiriasi nuo jūsų. Taip gaunate diff, apimantį 14 failų, nors tikėjotės pakeisti vieną eilutę. Priežastis — atotrūkis tarp to, ką pasakėte, ir to, ką turėjote omenyje. Modelis su tuo beveik nesusijęs.
Parašote: „Pridėk filtrus produktų puslapyje.“ Jūsų galvoje tai reiškia porą žymimųjų langelių ir atnaujinamą sąrašą. Claude išgirsta tą patį ir nusprendžia kurti visavertį filtravimo variklį: atskirą state store, savarankišką įvesties delsos logiką, URL sinchronizavimą ir tuziną pagalbinių funkcijų. Šimtai eilučių, nors būtų užtekę kelių URL parametrų.
Tokiu atveju išvada aiški: agentas nesuklydo — jis tiesiog išsprendė daug didesnę problemą, nei reikėjo. Problema buvo ta, kad norimas rezultatas nebuvo aprašytas pakankamai trumpai ir tiksliai.
Svarbiausias žodis — „ketinimas“. Jūs jį turite mintyse, Claude — ne. Jis mato jūsų užklausos tekstą ir visą kontekstą iki tos užklausos. Tada spragas užpildo spėliodamas. Kuo trumpesnė užklausa, tuo daugiau spėlionių — ir tuo labiau rezultatas nutolsta nuo to, ko norėjote.
Anthropic tai aiškiai pasako Claude Code dokumentacijoje:
Jei leisite Claude iškart imtis kodo, jis gali išspręsti ne tą problemą.
Su tuo susidūriau savo projekte. Paprašiau pataisyti vieną autorizacijos ekraną, o gavau diff, paveikusį pusę gretimo modulio. Claude nebuvo kaltas: parašiau jam vieną eilutę, o visa kita jis sugalvojo pats. Nuo tada kiekvieną užduotį, didesnę nei rašybos klaidos taisymas, pradedu klausimais — tais, kuriuos man užduoda Claude.
Ar tikrai kaltas modelis — ir kodėl nepataiko net patys galingiausi?
Svarbiausia įžvalga
Modelis svarbesnis mažiau, nei žmonės linkę manyti. Gavęs neaiškią užduotį, net pats galingiausias nepataikys į tikslą: jis gauna tokias pat neišsamias instrukcijas ir spragas užpildo savo spėlionėmis. Kūrėjai, kurie kontroliuoja savo agentą, pasiekia tokių pačių rezultatų naudodami ir aukščiausios klasės, ir vidutinės klasės modelį. Viskas priklauso nuo to, kaip aiškiai aprašote, ko norite. Šiuo atveju modelio galia yra antraeilė.
Kas savaitę pasirodo už ankstesnį „protingesnis“ modelis, ir kaskart atrodo, kad pagaliau AI supras mus iš kelių žodžių. Taip nebus. Galingesnis modelis kodą rašo greičiau ir geriau susidoroja su sudėtinga logika, bet vis tiek negali skaityti jūsų minčių. Jei užduotis suformuluota prastai, gausite gražiai parašytą, bet vis tiek neteisingą rezultatą.
Išvada jums paprasta. Siekti vis naujesnio modelio, kad šis geriau spėliotų, yra aklavietė. Pigiau ir patikimiau išmokti pateikti užduotis taip, kad jam nereikėtų spėlioti. Apie tai — toliau.
Kas yra grilling ir kaip jis padeda suderinti lūkesčius su AI?
Svarbiausia įžvalga
Grilling — tai kai prieš pradėdama darbą priverčiate AI jus apklausti: ji užduoda išsamius klausimus apie užduotį, kol pasiekiate bendrą supratimą. Tikslas — panaikinti komunikacijos spragą dar prieš parašant pirmą kodo eilutę.
Tai skamba prieštaringai. Kreipiamės į AI, kad darbus atliktume greičiau, o dabar mums sakoma ją pristabdyti ir iš pradžių užduoti klausimų. Tačiau penkios minutės klausimų prieš programuojant gali sutaupyti valandą vėlesnių taisymų.
Problema ne vien ta, kad prastai paaiškinote Claude savo mintis. Dažnai ir patys dar nebūnate iki galo apgalvoję užduoties: kokius atvejus reikia numatyti, kur yra ribos, kas svarbiausia. Grilling klausimais padeda tai išsiaiškinti. Pokalbio pabaigoje turite ne tik AI suprantamą užduotį, bet ir savo užduotį, pagaliau išsamiai suformuluotą.
Taip veikia konteksto inžinerija: svarbiausias darbas vyksta prieš raginimą, o ne jį rašant. Neieškote stebuklingos raginimo formuluotės; iš anksto išdėstote Claude, ko jums reikia, kol jis supranta be papildomų paaiškinimų.
Kaip priversti Claude pirmiausia užduoti klausimų?
Svarbiausia įžvalga
Trumpai aprašykite užduotį ir aiškiai paprašykite Claude prieš pradedant darbą jus apklausti: tegu jis klausia apie detales, kraštinius atvejus ir apribojimus, o pabaigoje viską sudeda į specifikacijos failą. Tai oficiali Anthropic rekomendacija — Claude Code dokumentacijoje pateiktas paruoštas raginimo šablonas. Nukopijuokite jį, pakeiskite aprašą ir įklijuokite sesijos pradžioje.
Anthropic ne tik leidžia taip dirbti — ji tai rekomenduoja. Dokumentacijoje yra skyrius „Leiskite Claude jus apklausti“ su paruoštu raginimu. Štai praktiška versija:
Raginimas
Raginimas grilling sesijai — paprašykite Claude jus apklausti
Noriu sukurti [trumpas užduoties aprašymas].
Prieš rašydamas kodą, išsamiai mane apklausk. Klausk apie įgyvendinimą, sąsają, kraštinius atvejus, rizikas ir kompromisus. Neklausk akivaizdžių dalykų — gilinkis į sudėtingas vietas, apie kurias galėjau nepagalvoti.
Užduok po vieną klausimą ir lauk mano atsakymo. Po kiekvieno klausimo iškart pasiūlyk savo rekomenduojamą atsakymą.
Tęsk, kol viską aptarsime. Tada parenk išsamią specifikaciją faile, pavadintame SPEC.md.
Trys detalės paverčia šį raginimą naudingu, o ne dekoratyviu. Pirma, „po vieną klausimą“. Jei AI išberia dešimt klausimų iš karto, sutrinkate ir atsakote paviršutiniškai. Antra, „pasiūlyk atsakymą“: jums nereikia visko sugalvoti nuo nulio — galite sutikti arba pataisyti. Trečia, „parenk specifikaciją faile“: iš jūsų išgrynintas ketinimas tampa dokumentu, kuris nepasimes.
Anthropic naudą apibūdina kaip pastangų klausimą:
Laikas, skirtas tinkamai parengti specifikaciją, vertingesnis už laiką, praleistą stebint įgyvendinimą.
Po apklausos atidarykite naują sesiją ir pateikite jai užbaigtą specifikaciją. Švarus kontekstas ir aiškiai nusakytas ketinimas — ir Claude iš pirmo karto pataiko į tikslą.
Metodas „įrodyk man, kad tai geriausias planas“
Svarbiausia įžvalga
Ne tik liepkite AI užduoti klausimų — liepkite jai ir apginti savo sprendimą. Į užduotį įtraukiu reikalavimą įrodyti, kad pasiūlytas planas yra geriausias, o ne tik pirmas šovęs į galvą, ir kad jis apgalvotas keliais žingsniais į priekį. Taip Claude išeina iš režimo „padarysiu kažką panašaus“ ir tampa kritiku, kuris patikrina savo darbą dar prieš jums skiriant laiko įgyvendinimui.
Grilling padeda išgryninti jūsų ketinimus. Tačiau AI turi ir antrą įprotį: griebti pirmą įtikinamai atrodantį sprendimą. Anthropic šį neatitikimą vadina principu „pasitikėk, bet patikrink“: Claude pateikia įtikinamą įgyvendinimą, kuris neatlaiko kraštinių atvejų. Išeitis — prašyti įrodymų dar prieš rašant kodą.
Jei negalite patikrinti rezultato, nepateikite jo.
Beveik visada į raginimą įtraukiu skyrių „įrodyk“. Štai tikslus tekstas:
Raginimas
Raginimas — paprašykite AI apginti savo planą
Prieš rašydamas kodą, išanalizuok užduotį kaip kritikas.
Rask 2-3 būdus jai išspręsti. Kiekvieno atveju įrodyk man, kad jis iš tiesų išsprendžia mano užduotį, o ne be reikalo didina sudėtingumą. Nerašyk kodo vien tam, kad rašytum kodą.
Tada pasirink vieną ir įrodyk, kad tai geriausias sprendimas, apgalvotas keliais žingsniais į priekį. Kas neveiks projektui augant? Ko dabar nepastebime?
Tik tada pasiūlyk įgyvendinimo būdą.
Be šio skyriaus Claude pateikia pirmą veikiantį variantą. Įtraukus jį, Claude pats atmeta aklavietes, paaiškina pasirinkimą ir leidžia pamatyti savo argumentus dar prieš paliečiant bent vieną failą. Perskaitote trumpą tekstą per dvi minutes, užuot valandą aiškinęsi, kodėl užbaigtas kodas neveikia taip, kaip tikėtasi.
Išankstinė nesėkmės analizė: prieš pradėdami paprašykite AI rasti 10 nesėkmės priežasčių
Svarbiausia įžvalga
Išankstinė nesėkmės analizė — tai metodas, kai paprašote AI įsivaizduoti, kad projektas jau žlugo, ir įvardyti priežastis. Claude pereina iš optimistinio „viską padarysiu“ režimo prie silpnųjų vietų, kurios kitu atveju išryškėtų po savaitės darbo, paieškos. Dar neinvestavę laiko į projektą gaunate rizikų sąrašą ir galite jomis pasirūpinti iš anksto.
Tai mano mėgstamiausias metodas, ir jis veikia psichologiškai. Paprašyta „gerai atlikti darbą“, AI nusiteikia sėkmei ir praleidžia spragas. Paprašykite jos įsivaizduoti nesėkmę ir ji pradės pastebėti tai, ką anksčiau ignoravo. Raginimas trumpas:
Raginimas
Išankstinės nesėkmės analizės raginimas — raskite spragas prieš pradėdami
Įsivaizduok, kad dabar yra po metų. Mūsų planuojamas projektas žlugo.
Užrašyk 10 priežasčių, kodėl taip nutiko. Ko pradžioje neįvertinome, ką nuvertinome, kur nukirtome kampus ir kurios prielaidos pasirodė klaidingos?
Tada prie kiekvienos priežasties pasakyk, ką galime pataisyti jau dabar, kad ją pašalintume.
Šį raginimą naudoju prieš patvirtindamas planą. Pusė priežasčių pasirodo esanti nesąmonė, bet kita pusė — tikros kliūtys, su kuriomis būčiau susidūręs po savaitės. Joms išspręsti planavimo etape prireikia dešimties minučių. Susidūrimas su jomis užbaigtame projekte kainuoja kelias dienas tyrimo.
Derinys paprastas: grilling išgrynina ketinimus, „įrodyk“ pagrindžia sprendimą, o išankstinė nesėkmės analizė randa spragas. Trys trumpi tekstai, kuriuos įklijuojate prieš rašydami kodą. Jie paverčia Claude iš skubančio vykdytojo bendradarbiu, kuris pirmiausia pagalvoja.
Kodėl perkrautas kontekstas priverčia Claude elgtis kvailai?
Svarbiausia įžvalga
Claude turi ribotą konteksto langą — informacijos kiekį, kurį vienu metu gali išlaikyti mintyse. Kai langas užpildomas daugiau nei iki pusės, jis ima prarasti svarbias detales, painioti ankstesnius susitarimus ir spėlioti vietoj to, kad prisimintų. Ilga sesija apie viską iš eilės dažnai lemia, kad dienos pabaigoje AI padaro visai ką kita, nei buvote sutarę ryte.
Net tobulai suformuluota užduotis žlunga, jei ją vykdote netvarkingame kontekste. Štai kaip tai vyksta: kiekviena nauja jūsų užklausa įtraukia visą pokalbio istoriją į Claude darbinį kontekstą. Kuo ilgesnė sesija, tuo greičiau užsipildo langas. Neleiskite jam užsipildyti daugiau nei iki pusės; vėliau AI ima elgtis kvailai ir pamiršta svarbius dalykus, aptartus pradžioje.
Ši taisyklė man padeda išvengti daugiausia nusivylimo: viena užduotis — vienas pokalbis. Baigėte funkciją? Užverkite pokalbį ir kitai užduočiai pradėkite naują. Taip, kartais patogiau viską daryti viename lange, bet už tai sumokėsite prarastu kontekstu ir ne į temą pateiktais atsakymais.
Anthropic šį nesėkmės atvejį vadina „šiukšlių stalčiaus sesija“. Sprendimas paprastas: tarp nesusijusių užduočių naudokite /clear, kad išvalytumėte langą ir neperneštumėte netvarkos iš ankstesnės užduoties į naują.
Jei vykdote ilgas sesijas ir nesuprantate, kur dingsta pinigai bei AI dėmesys, apie tai atskirai rašau vadove kur keliauja Claude Code tokenai. O nuolatinio konteksto, kurį Claude perskaito kiekvieną kartą paleidžiamas, pagrindus sudėjau į vadovą apie CLAUDE.md nustatymą.
Grilling ar Plan Mode — kuo jie skiriasi ir kaip veikia kartu?
Svarbiausia įžvalga
Grilling ir Plan Mode sprendžia skirtingas tos pačios problemos puses. Grilling klausimais išgrynina jūsų ketinimus dar prieš sudarant planą. Plan Mode paima jau suprastą užduotį ir parodo pakeitimų planą, nieko neliesdamas, kol jo nepatvirtinate. Geriausia juos naudoti kartu: pirmiausia grilling išsiaiškina, ką kuriame, o tada Plan Mode tiksliai parodo, kaip tai padaryti.
Žmonės dažnai painioja šiuos du metodus arba mano, kad reikia tik vieno. Iš tikrųjų jie taikomi skirtingais proceso etapais.
| Funkcija | Grilling | Plan Mode |
|---|---|---|
| Kada vyksta | Prieš planą — išgrynina ketinimus | Vėliau — sudaro pakeitimų planą |
| Kas ko klausia | AI jus apklausia | Perskaitote ir patvirtinate planą |
| Ką gaunate | Užduoties specifikaciją | Pakeitimų planą pagal failus |
| Pagrindinė nauda | Padeda išvengti „ne to norėjau“ | Padeda išvengti „nieko kito neliesk“ |
Anthropic aprašo įprastą keturių etapų darbo eigą: pirmiausia Explore (Claude išnagrinėja ir užduoda klausimų), tada Plan (sudaro planą nieko nekeisdamas), po to Implement (rašo kodą pagal planą) ir galiausiai Commit (užfiksuoja rezultatą). Grilling vyksta pirmame etape, Plan Mode — antrame. Išsamiau apie antrą etapą skaitykite vadove apie Plan Mode Claude Code.
Svarbi pačios Anthropic pastaba: neapsunkinkite tuo mažų užduočių.
Jei pakeitimą galite aprašyti vienu sakiniu, plano atsisakykite.
Jei reikia ištaisyti rašybos klaidą, pervadinti arba pakeisti vieną eilutę, tiesiog parašykite tai tiesiogiai, be apklausų ar planų. Grilling naudingas, kai užduotyje yra neaiškumų ir klaidos kaina didelė. Atliekant trivialias užduotis jis tik lėtina.
5 užduočių formulavimo klaidos, dėl kurių AI daro ne tai
Svarbiausia įžvalga
Beveik kiekviena AI klaida kyla dėl penkių užduoties formulavimo klaidų: neaiškios vienos eilutės užklausos, nenurodytų apribojimų, raginimo „rašyk kodą“ be etapo „pirmiausia suprask“, neapibrėžto rezultato „atlikta“ ir vienos nesibaigiančios sesijos viskam. Kiekviena klaida verčia Claude užduotį papildyti spėlionėmis. Toliau parodyta, kaip jos atrodo ir kuo jas pakeisti.
Dažniausias klaidas apibendrinau lentelėje. Kairėje — ką žmonės paprastai daro ir kur suklysta, dešinėje — ką daryti vietoj to.
| Klaida | Kaip tai skamba | Ką daryti vietoj to |
|---|---|---|
| Neaiški vienos eilutės užklausa | „Pagerink valdymo skydelį“ | Aprašykite užduotį ir pradėkite grilling sesiją — leiskite AI klausimais išsiaiškinti detales |
| Nenurodyti apribojimai | „Pridėk autorizaciją“ | Pasakykite, kas neturi sugesti, kokių bibliotekų nereikia įtraukti ir kas nepatenka į užduoties apimtį |
| Iškart „rašyk kodą“ | Raginimas — ir pradedate koduoti | Iš pradžių „suprask ir klausk“, o tik tada rašyk kodą |
| Neapibrėžta, ką reiškia „atlikta“ | Tikitės, kad AI atspės rezultatą | Pateikite pavyzdį, etaloninę ekrano kopiją arba testą, rodantį, ką reiškia „veikia“ |
| Viena sesija viskam | Visą dieną praleidžiate viename pokalbyje | Viena užduotis, vienas naujas pokalbis, kad kontekstas neužsiterštų |
Peržiūrėkite paskutinį raginimą, į kurį AI atsakė neteisingai. Beveik neabejotinai buvo padaryta viena iš šių penkių klaidų. Dažniausiai tai pirmoji: pateikėte trumpą frazę ir tikėjotės, kad Claude teisingai papildys visa kita. Jis papildė — tik ne taip, kaip turėjote omenyje.
Kas toliau: sukurkite sistemą, kad AI jus suprastų iš kelių žodžių
Svarbiausia įžvalga
Atskiri raginimai išsprendžia atskiras užduotis. Kad AI jus suprastų ir nereikėtų kaskart ilgai aiškinti, reikia sistemos: grilling išgrynina kiekvienos užduoties ketinimus, Antrosios smegenys saugo žinias apie projektą, o konteksto inžinerija sujungia viską, ką Claude perskaito prieš raginimą. Tada dingsta priežastis, dėl kurios jis daro ne tai: visada turi pakankamai konteksto, kad nereikėtų spėlioti.
Trys šio vadovo raginimai — grilling, „įrodyk“ ir išankstinė nesėkmės analizė — padeda spręsti konkrečią užduotį. Tai jau nemažai: nebegausite 14 failų diff, kai norėjote pakeisti tik vieną eilutę.
Tačiau grilling turi ribas. Kaskart iš naujo išgryninti jūsų ketinimus užtrunka. Tikrasis pokytis įvyksta tada, kai dalis konteksto visada pasiekiama: projekto žinių aplanke, faile CLAUDE.md, kurį Claude perskaito kiekvieną kartą paleidžiamas, ir jūsų metodikoje, užkoduotoje skills. Tuomet AI pradeda užduotį jau žinodama jūsų verslą, tikslus ir stilių — ir supranta jus iš kelių žodžių, nes pusę konteksto išdėstėte iš anksto.
Naujausia Anthropic analizė parodo, kiek tai reikalauja darbo: kūrėjai AI naudoja maždaug 60% savo darbo, bet visiškai ja pasitiki tik atlikdami 0-20% užduočių. Likusiose reikia jūsų supratimo, priežiūros ir gebėjimo paaiškinti, ką reikia sukurti. Būtent šį įgūdį verta lavinti, o ne vaikytis protingiausio modelio.
Šaltiniai
Susipažinkite su Ailoot.
Išsamiau
Klausimai ir atsakymai
Kada vietoj tiesioginio kodo naudoti apklausos užklausą?
Kai baigtis, kraštiniai atvejai ar apribojimai neaiškūs, o klaidos kainuotų daug. Užduokite po vieną klausimą ir sutartą rezultatą išsaugokite SPEC.md; rašybos klaidą ar aiškų vienos eilutės pakeitimą galima prašyti tiesiogiai.
Ką patikrinti prieš priimant siūlomą planą?
Paprašykite dviejų ar trijų požiūrių ir palyginkite, kaip kiekvienas įvykdo specifikaciją bei apribojimus. Tada paleiskite nesėkmių numatymo užklausą, peržiūrėkite priežastis ir prieš įgyvendinimą spręskite aktualias rizikas.