Prompt engineering гэж юу вэ? Программист биш хүнд зориулсан практик гарын авлага
Prompt engineering гэдэг нь AI загварт таны хүссэн зүйлийг найдвартай гаргуулахын тулд зааврыг бичиж, сайжруулах практик юм. Prompt гэдэг нь таны загварт өгч буй бүхэн юм: асуулт, даалгавар, контекст, жишээ. Үүнийг engineering хийх гэдэг нь юу оруулж байгаагаа санаатай сонгож, гарч ирсэн үр дүнг шалгаж, тохируулах гэсэн үг. Энэ нь ид шидийн үгнээс илүүтэйгээр тодорхой харилцаатай холбоотой.
Яагаад чухал вэ гэвэл AI-аар аппликейшн хийхэд
AI аппликейшн үүсгэгчтэй ажиллахад таны prompt-ууд бол техникийн тодорхойлолт юм. AI зөвхөн таны тайлбарласан зүйлийг л хийж чадна. Таны хүсэлт хоосон орхисон зүйлтэй байвал AI тэдгээрийг боломжийн мэт санагдах таамаглалаар бөглөдөг. Заримдаа таамаглал зөв байдаг ч ихэвчлэн таны хүссэн зүйл биш байдаг: маягтын буруу талбарууд, хүсээгүй онцлог, зорилтот хэрэглэгчдэдээ тохирохгүй дизайн.
Тодорхой prompt нь засвар хийх олон давталтаас сэргийлдэг бөгөөд давталт бүр цаг, ихэвчлэн кредит зардаг. Мөн таны аппликейшны дотор AI нэмж байгаа бол prompt чухал: тэр загварт өгсөн заавар нь таны чатботын харилцаа, юуг татгалзах, таны баримтад хэрхэн үлдэхийг тодорхойлдог. Аппликейшн хийхтэй холбоотой нарийн зүйлд AI аппликейшнд зориулж prompt хэрхэн бичих вэ гэсэн гарын авлагыг үзнэ үү.
Өдөр тутмын жишээ
Таныг мэдэхгүй, таны бизнесийн талаар юу ч мэдэхгүй, таныг дуусгахад шууд ажил эхлүүлэх чадвартай туршлагатай фрилансерт даалгавар өгч байгаа гэж төсөөлөөрэй.
«Надад лого хийгээд өг» гэвэл та ямар нэг лого авна. «Дубайн хүүхдийн усан сэлзэгийн сургуульд зориулсан лого; найрсаг, хүүхэд шиг биш; цэнхэр ба улбар шар; жижиг хэмжээнд бас тод харагдах ёстой; энд хоёр таалагдсан, нэг таалагдаагүй жишээ байна» гэвэл та хүссэн зүйлдээ ойрхон зүйл авна.
AI загвар бол тэр фрилансер: авьяастай, хурдан, гэхдээ бүрэн таны брифээс хамаардаг. Prompt engineering бол сайн бриф бичих ур чадвар юм.
Гол арга барилууд
| Арга | Юу гэсэн үг вэ | Жишээ |
|---|---|---|
| Зорилгоо тодорхой хэл | Юу хүсэж байгаагаа, яагаад гэдгээ хэл. | «Шинэ үйлчлүүлэгчид 30 эсвэл 60 минутын сургалтыг сонгож чадах захиалгын хуудас.» |
| Контекст өг | Хэнд зориулагдсан, одоо юу байгаа, юу чухал вэ. | «Хэрэглэгчид ихэвчлэн утсаар орох ахмад насны үйлчлүүлэгчид.» |
| «Дууссан»-ыг тодорхойл | Эцсийн үр дүнг дүрсэлж хэл. | «Дууссан гэдэг нь үйлчлүүлэгч захиалж, над имэйл ирэх гэсэн үг.» |
| Хязгаарлалт тогтоо | Юу хийхгүй байх, ямар хязгаартай байхыг хэл. | «Одоохондоо нэвтрэлт бүү нэм. Одоогийн өнгийг хадгал.» |
| Жишээ үзүүл | Сайн гэж юу болохыг дээж өг. | «Хариултаа ингэж бич: …» |
| Формат асуу | Гарах хариултыг ямар бүтэцтэй байхыг хэл. | «X, Y, Z баганатай хүснэгтээр хариул.» |
| Алхмаар хуваа | Том ажлыг нэг нэгээр нь. | «Эхлээд өгөгдлийн загвар, дараа нь маягт, дараа нь имэйлүүд.» |
| Эхлээд асуух эсвэл төлөвлөхийг хүс | Өөрчлөлт хийхээс өмнө төлөвлөгөө авах. | «Бүтээхээс өмнө тодруулах асуултуудаа, төлөвлөгөөгөө жагсаа.» |
| Давтан сайжруул | Үр дүнг шалгаж, нарийвчлан засах. | «Маягт ажиллаж байна. Одоо огнооны сонгогчийг томруулаарай.» |
Жишээ ажил: өмнө ба дараа
Өмнө:
Спорт заалны аппликейшн хий.
AI бүгдийг таамаглах ёстой: гишүүд үү, ажилтнууд уу? Анги уу, хувь хүний сургалт уу? Төлбөр уу? Магадгүй та бодит бус дасгалуудтай ерөнхий хяналтын самбар авах болно.
Дараа:
Жижиг боксын заалд зориулсан, ойролцоогоор 150 гишүүнтэй вэб аппликейшн бүтээ.
Хэн ашиглах вэ: Гишүүд утсан дээрээсээ анги захиална. Эзэн Сам хичээлийн хуваарийг зөөврийн компьютер дээр удирдана.
Гишүүд чадна: долоо хоногийн ангиудыг харах (цаг, дасгалжуулагч, сул орон), мөн эхлэхээс 2 цагийн өмнө бүртгүүлэх эсвэл цуцлах.
Сам чадна: анги нэмэх, засах, цуцлах, анги бүрт хэн бүртгүүлсэнийг харах.
Дүрэм: анги бүрт дээд тал нь 12 хүн. Нэг цагт давхар бүртгэл хийхгүй.
Одоо биш: төлбөр, дасгалын бүртгэл, мобайл аппликейшн.
Загвар: хар дэвсгэр, улаан өнгөний онцлох хэсэг, том товшигдох товчнууд.
Бүтээхээсээ өмнө ойлгомжгүй бүхнээ жагсааж, хуудсуудаа тайлбарла.
Хоёр дахь prompt нь ухаалаг биш, харин бүрэн юм. Энэ нь хэрэглэгчид, үйлдлүүд, дүрмүүд, юуг орхих, хэрхэн эхлэхийг нэрлэдэг. Сүүлийн мөр нь AI-г код бичихээс өмнө төлөвлөж, асуулт асуухыг урьж, буруу ойлголтыг эхлэлд нь барьж авдаг.
Аппликейшны дотор prompt-ууд
Таны аппликейшн өөрөө LLM дуудах үед та олон удаа, олон хэрэглэгчид ажиллах prompt бичдэг. Ижил зарчмууд хамаарна, нэмэх хэдэн зүйлтэй:
- System prompt: хариулт бүрийг хэлбэржүүлэх тогтмол заавар: үүрэг, өнгө аяс, дүрэм. «Чи Leaf & Pot ургамлын дэлгүүрийн туслах. Зөвхөн захиалга, ургамал, хүргэлтийн талаарх асуултанд хариул.»
- Үндэслэл (grounding): загварт ашиглах бодит мэдээллийг, жишээ нь бодлого эсвэл бүтээгдэхүүний каталогийг оруулж, тэдгээрт тулгуурлахыг хэл. Яагаад чухал вэ гэдгийг LLM гэж юу вэ хуудаснаас үзнэ үү.
- Нөөц хариу: тодорхойгүй үед юу хийхээ хэл: «Хариулт өгөгдсөн мэдээлэлд байхгүй бол үүнийг хэлээд, дэмжлэгийн имэйлээ санал болго.»
- Гаралтын формат: таны код хариултыг уншдаг бол JSON гэх мэт тогтсон формат шаардана.
- Туршилт: жигд бус оролтуудыг туршаарай: бүдүүлэг мессежүүд, сэдвээс гадуурх асуултууд, загварыг зааврыг нь үл тоомсорлуулах оролдлого (prompt injection гэж нэрлэдэг) — бодит хэрэглэгчид өмнө нь туршихаас өмнө.
Гол нэр томьёо
| Нэр томьёо | Юу гэсэн үг вэ |
|---|---|
| Prompt | AI загварт өгөх оролт. |
| System prompt | Яриа эхлэхээс өмнө тогтоосон тогтмол заавар. |
| Контекст | Prompt-д оруулсан арын мэдээлэл. |
| Zero-shot / few-shot | Жишээгүйгээр асуух эсвэл хүссэн гаралтын хэдэн жишээтэй асуух. |
| Сэтгэлгээний гинж (chain of thought) | Хариулахаасаа өмнө асуудлыг алхам алхмаар бодохыг загварт хүсэх. |
| Үндэслэл (grounding) | Загварт эх материал өгөөд хариултаа түүн дээр үндэслэхийг хэлэх. |
| Prompt injection | Загварын заавруудыг хүчингүй болгохыг оролдох текст, жишээ нь «өмнөх заавруудыг үл тоомс». |
| Контекстийн цонх (context window) | Загвар нэг удаад хэдэн текстийг авч үзэж чадах хэмжээ. |
| Давталт (iteration) | Ирсэн үр дүнд үндэслэн prompt-оо сайжруулах. |
Түгээмэл алдаа ба буруу ойлголт
- Ид шидийн үг хайх. «Чи бол дэлхийн түвшний мэргэжилтэн» гэдэг нь таны хэрэгтэй зүйлээ шууд хэлснээс хамаагүй бага чухал.
- Бүгдийг нэг дор асуух. 20 онцлогтой хүсэлт нь 20 хагас бүтэн онцлог болдог. Хэсгүүдээр бүтээ.
- Шийдлийг нь тайлбарлах, асуудлыг биш. «Гурван баганатай хүснэгт нэм» гэдэг нь «Сам анги бүрт хэн бүртгүүлсэнийг нэг харцаар харах хэрэгтэй» гэдгээс бага ашигтай.
- Юу хийхгүй байхыг орхих. Нэвтрэлт, төлбөр эсвэл дахин загварчлал одоохондоо хэрэггүй бол хэл.
- Үр дүнг нь уншихгүй байх. Бүтээсэн зүйлээ «дууссан» тодорхойлолттойгоо харьцуулж шалгаад дараагийн алхам руу шилж.
- Дахин эхлүүлэх оронд сайжруулах. Ихэвчлэн богино дараагийн хүсэлт («ойрхон байна, X-ийг солих») бүх prompt-ыг дахин бичихээс илүү.
- Нууц мэдээллээ prompt-д хуулах. Хэрэгслэлд найдвартай хадгалах арга байхгүй бол нууц үг эсвэл идэвхтэй API түлхүүрээ чатад бүү хуул.
AI бүтээгчээсээ юу гуйх вэ
- «Бүтээхээсээ өмнө надаас асуух асуултуудаа асуугаад, төлөвлөгөөгөө харуул.»
- «Миний хүсч буй зүйлийг гурван өгүүлбэрээр дахин хэлж өг.»
- «Зөвхөн захиалгын маягтыг өөрчил, бусдад бүү хүр.»
- «Миний тодорхойлоогүй юу таамаглав?»
- «Миний notes-ийг онцлог, дүрэм, одоо биш зүйлсийн жижиг спецификац болго.» Үүнтэй холбоотой AI-аар бүтээгдэхүүний шаардлагын баримт хэрхэн бичих вэ гэсэн гарын авлагыг үзнэ үү.
- «Тэр хүсэлтээ илүү сайн хэрхэн бичиж болох байсныг санал болго.»
Mythex дээр prompt бичих
Mythex нь ийм ажиллах хэв маягт тохирсон гурван чатын горимтой: Plan — өөрчлөлт хийхээс өмнө арга барилаа тохирох, Build — өөрчлөлт хийх, Ask — файл засахгүй асуултууд. Дэлгэцийн зураг эсвэл загварыг контекст болгон хавсаргаж болно, мөн өөрчлөлт буруу болвол checkpoint руу буцаж болно. Docs хуудсууд үр дүнтэй prompt-ууд болон давталт дээр илүү жишээтэй, мөн AI-аар бүтээсэн аппыг давтан сайжруулах гарын авлага дараагийн мөчлөгийг тайлбарласан.
Асуултууд
Prompt engineering энгийнээр юу гэсэн үг вэ?
Prompt engineering бол AI загварт та хүссэн үр дүнг найдвартай гаргуулахын тулд зааврыг бичиж, сайжруулах практик юм. Энэ нь таны юу асууж байгаа, өгч буй контекст, жишээ, хязгаарлалт болон хүссэн хариултын хэлбэрийг хамруулдаг.
Тусгай арга эсвэл ид шидийн үг хэрэгтэй юу?
Тийм ч шаардлагагүй. Орчин үеийн загварууд тодорхой, ойлгомжтой, сайн зохион байгуулсан зааврыг хамгийн сайн ойлгодог. Энэ нь хамт ажиллагсдад тусалдаг зүйлтэй адил юм. Контекст, жишээ, хүссэн эцсийн үр дүнг тодорхой тайлбарлах нь тусгай үгнээс хамаагүй чухал.
System prompt гэж юу вэ?
System prompt бол яриа эхлэхээс өмнө загварт өгөх тогтмол зааврууд юм. Жишээ нь түүний үүрэг, дүрэм, өнгө аяс зэрэг. Аппликейшнууд үүгээр хариулт бүрийг хэлбэржүүлдэг бол хэрэглэгчийн мессежүүд дараа нь ирдэг.
AI илүү ухаантай болох тусам prompt engineering хэрэгтэй хэвээр байна уу?
Илүү сайн загварууд бэрхшээл тойрох арга бага хэрэгцээтэй болдог ч таны сэтгэлийг уншиж чадахгүй хэвээр. Зорилго, зорилтот хэрэглэгч, хязгаарлалт, «дууссан» гэдэг нь ямар харагдахыг хэлэх нь үргэлж үр дүнг сайжруулна, учир нь загвар зөвхөн таны хэлснээр ажиллаж чадна.