← 返回列表

AI serijos interviu 12: Kaip optimizuoti promptą?

Prompt optimizavimas (Prompt Engineering / Optimization) yra pagrindinis įgūdis, leidžiantis didiesiems kalbos modeliams "klausyti", ypač RAG sistemose, kur jis tiesiogiai lemia, ar modelis ištikimai remsis gauta informacija, vengs haliucinacijų ir laikysis išvesties formato.


1. Pagrindiniai prompt optimizavimo principai

  1. Aiškumas > Sudėtingumas: Paprastos, tiesioginės instrukcijos dažnai veiksmingesnės už įmantrias mąstymo grandines.
  2. Nustatykite pakankamai ribojimų: Aiškiai pasakykite modeliui, ką gali ir ko negali daryti.
  3. Pateikite pavyzdžių: Kelių pavyzdžių (few-shot) metodas yra stabilesnis nei be pavyzdžių (zero-shot).
  4. Patikrinamumas: Paprašykite modelio pateikti nuorodas ar pasitikėjimo lygį, kad būtų lengviau įvertinti rezultatą.
  5. Iteratyvus tobulinimas: Pradėkite nuo bazinės versijos, keiskite tik vieną kintamąjį ir lyginkite rezultatus.

2. Konkretūs optimizavimo patarimai (nuo lengvų iki sudėtingų)

1. Vaidmens nustatymas (Sistemos prompt)

Jūs esate profesionalus klientų aptarnavimo asistentas. Galite atsakyti tik pagal toliau pateiktą 【Medžiagą】. Jei nežinote atsakymo, tiesiog pasakykite „Medžiagoje nėra atitinkamos informacijos“, nesukurkite atsakymo patys.
  • Poveikis: Nustato ribas ir toną.
  • Optimizavimo taškai: Tonas (profesionalus/draugiškas), ribojimų griežtumas (griežtas/laisvas).

2. Aiškios instrukcijos

❌ Blogai: „Atsakykite į vartotojo klausimą.“
✅ Gerai: „Remkitės tik toliau pateikta 【Medžiaga】. Jei medžiagoje nėra atsakymo, atsakykite „Negaliu atsakyti į šį klausimą“.“

3. Išvesties formato valdymas

Pateikite atsakymą JSON formatu:
{
  "answer": "jūsų atsakymas",
  "confidence": "aukštas/vidutinis/žemas",
  "sources": [1, 3]
}
  • Naudojimas: Palengvina tolesnį apdorojimą, nuorodų naudojimą ir derinimą.

4. Pavyzdžiai su keliais atvejais (labai veiksminga)

1 pavyzdys:
Klausimas: Kiek dienų yra kasmetinės atostogos?
Medžiaga: Kasmetinių atostogų taisyklės: vieneri metai – 5 dienos, dešimt metų – 10 dienų.
Atsakymas: Vieneri metai – 5 dienos, dešimt metų – 10 dienų.

2 pavyzdys:
Klausimas: Kaip apskaičiuojami viršvalandžiai?
Medžiaga: Darbo dienomis – 1,5 karto, savaitgaliais – 2 kartus.
Atsakymas: Darbo dienomis – 1,5 karto, savaitgaliais – 2 kartus.

Dabar atsakykite:
Klausimas: {用户问题}
Medžiaga: {检索内容}
Atsakymas:
  • Patarimas: Pavyzdžiai turėtų apimti skirtingus sudėtingumo lygius, geriausia įtraukti vieną, kai negalima atsakyti.

5. Privalomas citavimas

Atsakymo pabaigoje pažymėkite šaltinio numerį naudodami [citation:X]. Pavyzdžiui: „Kasmetinės atostogos – 5 dienos [citation:1].“ Jei naudojate kelis šaltinius, pažymėkite kiekvieną atskirai.

6. Atsisakymo slenksčio nustatymas

  • Griežtas ribojimas: „Jei medžiaga visiškai nesusijusi su klausimu, atsakykite „Medžiaga nesusijusi“.“
  • Minkštas ribojimas: Derinkite su paieškos patikimumo balu; jei jis žemesnis už slenkstį, automatiškai pereikite prie atsisakymo.

7. Mąstymo grandinė (Chain-of-Thought) kelių žingsnių samprotavimui

Klausimas: Kas yra Zhang San viršininkas?
Žingsniai: 1. Pirmiausia nustatykite Zhang San skyrių. 2. Tada raskite to skyriaus vadovą. 3. Pateikite galutinį atsakymą.
Atsakykite pagal šiuos žingsnius.

8. Neigiamos instrukcijos (Negative Prompting)

Nesukurkite atsakymų. Nenaudokite neaiškių žodžių, tokių kaip „galbūt“ ar „tikriausiai“. Nepateikite jokių skaičių, kurių nėra medžiagoje.

3. Kaip įvertinti prompt kokybę?

Rodiklis Reikšmė Kaip matuoti
Ištikimybė Ar atsakymas griežtai pagrįstas medžiaga Rankiniu būdu arba RAGAS Faithfulness
Atsisakymo tikslumas Ar teisingai atsisakoma atsakyti, kai reikia Skaičiuojama testiniame rinkinyje be atsakymų
Formato laikymasis Ar atsakymas atitinka reikalaujamą JSON / citavimą Reguliariosios išraiškos
Vartotojo pasitenkinimas Ar atsakymas naudingas Atsiliepimai / A/B testavimas

Rekomendacija: Paruoškite nedidelį testinį rinkinį (20–50 ribinių atvejų), po kiekvieno prompt pakeitimo paleiskite jį ir užrašykite pokyčius.

4. Dažni spąstai ir optimizavimo kryptys

Problema Galima priežastis Optimizavimo būdas
Modelis ignoruoja medžiagą ir atsako savarankiškai Instrukcijos nepakankamai griežtos Pakeiskite į „Remkitės tik šia medžiaga“, naudokite kelis pavyzdžius, rodančius atsisakymą
Modelis visada sako „nežinau“ Atsisakymo slenkstis per aukštas Sumažinkite slenkstį arba patikrinkite paieškos kokybę
Išvesties formatas netvarkingas, neatitinka JSON Instrukcijos neaiškios Pridėkite griežtą formato pavyzdį arba naudokite funkcijų iškvietimą
Atsakymas per ilgas/trumpas Nenurodytas ilgis „Atsakykite ne daugiau kaip 3 sakiniais“
Klaidos kelių žingsnių samprotavime Modelio samprotavimo gebėjimai nepakankami Reikalaukite nuoseklaus samprotavimo arba naudokite stipresnį modelį
Atsiranda haliucinuoti skaičiai/datos Modelis remiasi savo žiniomis Pabrėžkite „Nenaudokite jokių iš atminties žinomų skaičių, remkitės tik medžiaga“

评论

暂无已展示的评论。

发表评论(匿名)