← 返回列表

AI շարքի հարցազրույց 12. Ինչպե՞ս օպտիմիզացնել Prompt-ը:

Prompt-ի օպտիմիզացումը (Prompt Engineering / Optimization) հիմնական հմտություն է մեծ լեզվական մոդելին «հնազանդեցնելու» համար, հատկապես RAG համակարգերում, որտեղ ուղղակիորեն որոշում է, թե մոդելը պատրա՞ստ է հավատարիմ մնալ վերցված բովանդակությանը, խուսափել հալյուցինացիաներից և պահպանել ելքի ձևաչափը:


1. Prompt-ի օպտիմիզացման հիմնական սկզբունքներ

  1. Պարզություն > Բարդություն՝ պարզ ուղիղ հրահանգները հաճախ ավելի արդյունավետ են, քան զարդարուն մտքի շղթաները:
  2. Տալ բավարար սահմանափակումներ՝ հստակ ասել մոդելին «ինչ կարող է անել, ինչ չի կարող»:
  3. Տրամադրել օրինակներ՝ Few-shot-ն ավելի կայուն է, քան Zero-shot-ը:
  4. Ստուգելիություն՝ թույլ տալ մոդելին տալ հղումներ կամ վստահության աստիճան՝ հետագա գնահատման համար:
  5. Իտերատիվ օպտիմիզացում՝ սկսել բազային տարբերակից, ամեն անգամ փոխել միայն մեկ փոփոխական և համեմատել արդյունքները:

2. Օպտիմիզացման կոնկրետ տեխնիկաներ (պարզից դժվար)

2.1. Դերային նշանակում (System Prompt)

Դուք պրոֆեսիոնալ հաճախորդների սպասարկման օգնական եք: Դուք կարող եք պատասխանել միայն ստորև տրված 【Հղումներին】 համապատասխան: Եթե չգիտեք պատասխանը, ասեք «Տվյալներում համապատասխան տեղեկություն չկա», մի հորինեք:
  • Նշանակություն՝ սահմանել շրջանակը և տոնայնությունը:
  • Օպտիմիզացման կետեր՝ տոնայնություն (պրոֆեսիոնալ/բարեկամական), սահմանափակման ուժգնություն (խիստ/ազատ):

2.2. Հստակ հրահանգներ

❌ Վատ՝ «Պատասխանել օգտատիրոջ հարցին:»
✅ Լավ՝ «Միայն ստորև տրված 【Հղումներին】 հիման վրա պատասխանել: Եթե հղումները չեն պարունակում պատասխանը, ասել «Ես չեմ կարող պատասխանել այս հարցին»:

2.3. Ելքի ձևաչափի վերահսկում

Խնդրում եմ տրամադրել ելքը հետևյալ JSON ձևաչափով՝
{
  "answer": "Ձեր պատասխանը",
  "confidence": "բարձր/միջին/ցածր",
  "sources": [1, 3]
}
  • Նպատակ՝ հեշտացնել հետագա վերլուծությունը, հղումները և վրիպազերծումը:

2.4. Few-shot օրինակներ (շատ արդյունավետ)

Օրինակ 1:
Հարց՝ Քանի՞ օր է արձակուրդը:
Հղումներ՝ Արձակուրդի կանոններ՝ 1 տարի՝ 5 օր, 10 տարի՝ 10 օր:
Պատասխան՝ 1 տարի՝ 5 օր, 10 տարի՝ 10 օր:

Օրինակ 2:
Հարց՝ Ինչպե՞ս է հաշվարկվում արտաժամյա վարձատրությունը:
Հղումներ՝ Աշխատանքային օրերին՝ 1.5 անգամ, հանգստյան օրերին՝ 2 անգամ:
Պատասխան՝ Աշխատանքային օրերին՝ 1.5 անգամ, հանգստյան օրերին՝ 2 անգամ:

Այժմ պատասխանեք՝
Հարց՝ {Օգտատիրոջ հարցը}
Հղումներ՝ {Վերցված բովանդակություն}
Պատասխան՝
  • Հնարք՝ օրինակները պետք է ընդգրկեն տարբեր դժվարության մակարդակներ, ցանկալի է ներառել «չեմ կարող պատասխանել» օրինակ:

2.5. Հարկադիր հղում

Պատասխանի վերջում նշել աղբյուրի համարը՝ [citation:X] ձևաչափով: Օրինակ՝ «Արձակուրդը 5 օր է[citation:1]:» Եթե մի քանի աղբյուրից է, առանձին նշել:

2.6. Մերժման շեմի սահմանում

  • Կոշտ սահմանափակում՝ «Եթե հղումները լիովին կապ չունեն հարցի հետ, պատասխանել «Տվյալները կապ չունեն»:
  • Փափուկ սահմանափակում՝ զուգակցել վերցված վստահության գնահատականի հետ. եթե ցածր է շեմից, ավտոմատ անցնել մերժման ճյուղ:

2.7. Մտքի շղթա (Chain-of-Thought) բազմաքայլ հետևությունների համար

Հարց՝ Ո՞վ է Չժան Սանի ղեկավարը:
Քայլեր՝ 1. Նախ պարզել Չժան Սանի բաժինը: 2. Այնուհետև պարզել այդ բաժնի ղեկավարին: 3. Տալ վերջնական պատասխանը:
Խնդրում եմ մտածել ըստ քայլերի, ապա տրամադրել ելքը:

2.8. Բացասական հրահանգներ (Negative Prompting)

Մի հորինեք պատասխաններ: Մի օգտագործեք «հնարավոր է», «միգուցե» և այլ անորոշ բառեր: Մի տվեք հղումներից դուրս որևէ թվեր:

3. Ինչպե՞ս գնահատել Prompt-ի որակը:

Ցուցանիշ Իմաստ Ինչպես չափել
Հավատարմություն Պատասխանը խստորեն հիմնվա՞ծ է հղումների վրա Ձեռքով կամ RAGAS-ի Faithfulness-ով
Մերժման ճշգրտություն Արդյո՞ք պետք է մերժել, երբ պետք է Հաշվարկել առանց պատասխանի թեստային հավաքածուի վրա
Ձևաչափի պահպանման գործակից Արդյո՞ք ելքը JSON է / պարունակում է հղումներ Կանոնավոր արտահայտություններով
Օգտատիրոջ գոհունակություն Պատասխանը օգտակա՞ր է Առցանց հետադարձ կապ / A/B թեստավորում

Առաջարկություն՝ պատրաստել փոքր թեստային հավաքածու (20-50 եզրային դեպք), ամեն անգամ prompt-ը փոխելուց հետո վազեցնել և գրանցել փոփոխությունները:

4. Տարածված ծուղակներ և օպտիմիզացման ուղղություններ

Խնդրի դրսևորում Հնարավոր պատճառ Օպտիմիզացման մեթոդ
Մոդելը անտեսում է հղումները, ինքնուրույն պատասխանում Հրահանգը բավականաչափ պարտադիր չէ Փոխել «միայն հետևյալ տվյալներով», ցույց տալ մերժում few-shot-ով
Մոդելը միշտ ասում է «չգիտեմ» Մերժման շեմը չափազանց բարձր է Իջեցնել շեմը կամ ստուգել վերցման որակը
Ելքի ձևաչափը խառն է, JSON չի հետևում Հրահանգը ոչ հստակ Ավելացնել խիստ ձևաչափի օրինակ կամ օգտագործել function calling
Պատասխանը չափազանց երկար/կարճ է Երկարությունը նշված չէ «Պատասխանել ոչ ավելի, քան 3 նախադասությամբ»
Բազմաքայլ հետևությունների սխալ Մոդելի հետևելու կարողությունը անբավարար է Պահանջել ցույց տալ քայլերը, կամ օգտագործել ավելի ուժեղ մոդել
Հալյուցինացիաներ թվեր/ամսաթվեր Մոդելը հիմնվում է սեփական գիտելիքի վրա Ընդգծել «մի օգտագործեք ձեր հիշած որևէ թիվ, միայն նայեք հղումներին»

评论

暂无已展示的评论。

发表评论(匿名)