




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Prompt
Engineering
Author:LeeBoonstra
PromptEngineering
Acknowledgements
Contentcontributors
MichaelShermanYuanCao
ErickArmbrust
AnantNawalgariaAntonioGulli
SimoneCammel
CuratorsandEditors
AntonioGulli
AnantNawalgariaGraceMollison
TechnicalWriter
JoeyHaymaker
Designer
MichaelLanning
February20252
Tableofcontents
Introduction6
Promptengineering··7
LLMoutputconfiguration8
Outputlength.8
Samplingcontrols9
Temperature9
Top-Kandtop-P··10
Puttingitalltogether11
Promptingtechniques·13
Generalprompting/zeroshot·13
One-shot&few-shot.15
System,contextualandroleprompting18
Systemprompting·19
Roleprompting·21
Contextualprompting23
Step-backprompting25
ChainofThought(CoT)·29
Self-consistency32
TreeofThoughts(ToT)·36
ReAct(reason&act)·37
AutomaticPromptEngineering·40
Codeprompting42
Promptsforwritingcode42
Promptsforexplainingcode··44
Promptsfortranslatingcode46
Promptsfordebuggingandreviewingcode48
Whataboutmultimodalprompting?54
BestPractices·54
Provideexamples54
Designwithsimplicity··55
Bespecificabouttheoutput56
UseInstructionsoverConstraints56
Controlthemaxtokenlength58
Usevariablesinprompts·58
Experimentwithinputformatsandwritingstyles··59
Forfew-shotpromptingwithclassificationtasks,mixuptheclasses59
Adapttomodelupdates·60
Experimentwithoutputformats·60
JSONRepair61
WorkingwithSchemas·62
Experimenttogetherwithotherpromptengineers63
CoTBestpractices·64
Documentthevariouspromptattempts64
Summary·66
Endnotes68
PromptEngineering
Youdon’tneedtobeadata
scientistoramachinelearningengineer–everyonecanwriteaprompt.
Introduction
Whenthinkingaboutalargelanguagemodelinputandoutput,atextprompt(sometimes
accompaniedbyothermodalitiessuchasimageprompts)istheinputthemodeluses
topredictaspecificoutput.Youdon’tneedtobeadatascientistoramachinelearning
engineer–everyonecanwriteaprompt.However,craftingthemosteffectivepromptcanbecomplicated.Manyaspectsofyourpromptaffectitsefficacy:themodelyouuse,themodel’strainingdata,themodelconfigurations,yourword-choice,styleandtone,structure,and
contextallmatter.Therefore,promptengineeringisaniterativeprocess.Inadequatepromptscanleadtoambiguous,inaccurateresponses,andcanhinderthemodel’sabilitytoprovidemeaningfuloutput.
February20256
PromptEngineering
February20257
WhenyouchatwiththeGeminichatbot,1youbasicallywriteprompts,howeverthis
whitepaperfocusesonwritingpromptsfortheGeminimodelwithinVertexAIorbyusingtheAPI,becausebypromptingthemodeldirectlyyouwillhaveaccesstotheconfigurationsuchastemperatureetc.
Thiswhitepaperdiscussespromptengineeringindetail.Wewilllookintothevariouspromptingtechniquestohelpyougettingstartedandsharetipsandbestpracticestobecomeapromptingexpert.Wewillalsodiscusssomeofthechallengesyoucanfacewhilecraftingprompts.
Promptengineering
RememberhowanLLMworks;it’sapredictionengine.Themodeltakessequentialtextas
aninputandthenpredictswhatthefollowingtokenshouldbe,basedonthedataitwas
trainedon.TheLLMisoperationalizedtodothisoverandoveragain,addingthepreviouslypredictedtokentotheendofthesequentialtextforpredictingthefollowingtoken.Thenexttokenpredictionisbasedontherelationshipbetweenwhat’sintheprevioustokensandwhattheLLMhasseenduringitstraining.
Whenyouwriteaprompt,youareattemptingtosetuptheLLMtopredicttherightsequenceoftokens.Promptengineeringistheprocessofdesigninghigh-qualitypromptsthatguide
LLMstoproduceaccurateoutputs.Thisprocessinvolvestinkeringtofindthebestprompt,optimizingpromptlength,andevaluatingaprompt’swritingstyleandstructureinrelationtothetask.InthecontextofnaturallanguageprocessingandLLMs,apromptisaninputprovidedtothemodeltogeneratearesponseorprediction.
PromptEngineering
February20258
Thesepromptscanbeusedtoachievevariouskindsofunderstandingandgenerationtaskssuchastextsummarization,informationextraction,questionandanswering,textclassification,languageorcodetranslation,codegeneration,andcodedocumentationorreasoning.
PleasefeelfreetorefertoGoogle’spromptingguides2,3withsimpleandeffectivepromptingexamples.
Whenpromptengineering,youwillstartbychoosingamodel.Promptsmightneedtobe
optimizedforyourspecificmodel,regardlessofwhetheryouuseGeminilanguagemodelsinVertexAI,GPT,Claude,oranopensourcemodellikeGemmaorLLaMA.
Besidestheprompt,youwillalsoneedtotinkerwiththevariousconfigurationsofaLLM.
LLMoutputconfiguration
Onceyouchooseyourmodelyouwillneedtofigureoutthemodelconfiguration.MostLLMscomewithvariousconfigurationoptionsthatcontroltheLLM’soutput.Effectiveprompt
engineeringrequiressettingtheseconfigurationsoptimallyforyourtask.
Outputlength
Animportantconfigurationsettingisthenumberoftokenstogenerateinaresponse.
GeneratingmoretokensrequiresmorecomputationfromtheLLM,leadingtohigherenergyconsumption,potentiallyslowerresponsetimes,andhighercosts.
PromptEngineering
February20259
ReducingtheoutputlengthoftheLLMdoesn’tcausetheLLMtobecomemorestylisticallyortextuallysuccinctintheoutputitcreates,itjustcausestheLLMtostoppredictingmoretokensoncethelimitisreached.Ifyourneedsrequireashortoutputlength,you’llalso
possiblyneedtoengineeryourprompttoaccommodate.
OutputlengthrestrictionisespeciallyimportantforsomeLLMpromptingtechniques,likeReAct,wheretheLLMwillkeepemittinguselesstokensaftertheresponseyouwant.
Beaware,generatingmoretokensrequiresmorecomputationfromtheLLM,leadingtohigherenergyconsumptionandpotentiallyslowerresponsetimes,whichleadstohighercosts.
Samplingcontrols
LLMsdonotformallypredictasingletoken.Rather,LLMspredictprobabilitiesforwhatthenexttokencouldbe,witheachtokenintheLLM’svocabularygettingaprobability.Thosetokenprobabilitiesarethensampledtodeterminewhatthenextproducedtokenwillbe.
Temperature,top-K,andtop-Parethemostcommonconfigurationsettingsthatdeterminehowpredictedtokenprobabilitiesareprocessedtochooseasingleoutputtoken.
Temperature
Temperaturecontrolsthedegreeofrandomnessintokenselection.Lowertemperatures
aregoodforpromptsthatexpectamoredeterministicresponse,whilehighertemperaturescanleadtomorediverseorunexpectedresults.Atemperatureof0(greedydecoding)is
PromptEngineering
February202510
deterministic:thehighestprobabilitytokenisalwaysselected(thoughnotethatiftwotokenshavethesamehighestpredictedprobability,dependingonhowtiebreakingisimplementedyoumaynotalwaysgetthesameoutputwithtemperature0).
Temperaturesclosetothemaxtendtocreatemorerandomoutput.Andastemperaturegetshigherandhigher,alltokensbecomeequallylikelytobethenextpredictedtoken.
TheGeminitemperaturecontrolcanbeunderstoodinasimilarwaytothesoftmaxfunction
usedinmachinelearning.Alowtemperaturesettingmirrorsalowsoftmaxtemperature(T),emphasizingasingle,preferredtemperaturewithhighcertainty.AhigherGeminitemperaturesettingislikeahighsoftmaxtemperature,makingawiderrangeoftemperaturesaround
theselectedsettingmoreacceptable.Thisincreaseduncertaintyaccommodatesscenarioswherearigid,precisetemperaturemaynotbeessentiallikeforexamplewhenexperimentingwithcreativeoutputs.
Top-Kandtop-P
Top-Kandtop-P(alsoknownasnucleussampling)4aretwosamplingsettingsusedinLLMstorestrictthepredictednexttokentocomefromtokenswiththetoppredictedprobabilities.Liketemperature,thesesamplingsettingscontroltherandomnessanddiversityof
generatedtext.
•Top-KsamplingselectsthetopKmostlikelytokensfromthemodel’spredicted
distribution.Thehighertop-K,themorecreativeandvariedthemodel’soutput;the
lowertop-K,themorerestiveandfactualthemodel’soutput.Atop-Kof1isequivalenttogreedydecoding.
PromptEngineering
February202511
•Top-Psamplingselectsthetoptokenswhosecumulativeprobabilitydoesnotexceedacertainvalue(P).ValuesforPrangefrom0(greedydecoding)to1(alltokensintheLLM’svocabulary).
Thebestwaytochoosebetweentop-Kandtop-Pistoexperimentwithbothmethods(orbothtogether)andseewhichoneproducestheresultsyouarelookingfor.
Puttingitalltogether
Choosingbetweentop-K,top-P,temperature,andthenumberoftokenstogenerate,
dependsonthespecificapplicationanddesiredoutcome,andthesettingsallimpactoneanother.It’salsoimportanttomakesureyouunderstandhowyourchosenmodelcombinesthedifferentsamplingsettingstogether.
Iftemperature,top-K,andtop-Pareallavailable(asinVertexStudio),tokensthatmeet
boththetop-Kandtop-Pcriteriaarecandidatesforthenextpredictedtoken,andthen
temperatureisappliedtosamplefromthetokensthatpassedthetop-Kandtop-Pcriteria.Ifonlytop-Kortop-Pisavailable,thebehavioristhesamebutonlytheonetop-KorPsettingisused.
Iftemperatureisnotavailable,whatevertokensmeetthetop-Kand/ortop-Pcriteriaarethenrandomlyselectedfromtoproduceasinglenextpredictedtoken.
Atextremesettingsofonesamplingconfigurationvalue,thatonesamplingsettingeithercancelsoutotherconfigurationsettingsorbecomesirrelevant.
PromptEngineering
February202512
•Ifyousettemperatureto0,top-Kandtop-Pbecomeirrelevant–themostprobable
tokenbecomesthenexttokenpredicted.Ifyousettemperatureextremelyhigh(above1–generallyintothe10s),temperaturebecomesirrelevantandwhatevertokensmakeitthroughthetop-Kand/ortop-Pcriteriaarethenrandomlysampledtochooseanextpredictedtoken.
•Ifyousettop-Kto1,temperatureandtop-Pbecomeirrelevant.Onlyonetokenpassesthetop-Kcriteria,andthattokenisthenextpredictedtoken.Ifyousettop-Kextremelyhigh,liketothesizeoftheLLM’svocabulary,anytokenwithanonzeroprobabilityofbeingthenexttokenwillmeetthetop-Kcriteriaandnoneareselectedout.
•Ifyousettop-Pto0(oraverysmallvalue),mostLLMsamplingimplementationswillthenonlyconsiderthemostprobabletokentomeetthetop-Pcriteria,makingtemperatureandtop-Kirrelevant.Ifyousettop-Pto1,anytokenwithanonzeroprobabilityofbeingthe
nexttokenwillmeetthetop-Pcriteria,andnoneareselectedout.
Asageneralstartingpoint,atemperatureof.2,top-Pof.95,andtop-Kof30willgiveyou
relativelycoherentresultsthatcanbecreativebutnotexcessivelyso.Ifyouwantespeciallycreativeresults,trystartingwithatemperatureof.9,top-Pof.99,andtop-Kof40.Andifyouwantlesscreativeresults,trystartingwithatemperatureof.1,top-Pof.9,andtop-Kof20.Finally,ifyourtaskalwayshasasinglecorrectanswer(e.g.,answeringamathproblem),startwithatemperatureof0.
NOTE:Withmorefreedom(highertemperature,top-K,top-P,andoutputtokens),theLLMmightgeneratetextthatislessrelevant.
WARNING:Haveyoueverseenaresponseendingwithalargeamountoffillerwords?Thisisalsoknownasthe"repetitionloopbug",whichisacommonissueinLargeLanguage
Modelswherethemodelgetsstuckinacycle,repeatedlygeneratingthesame(filler)word,phrase,orsentencestructure,oftenexacerbatedbyinappropriatetemperatureandtop-k/
PromptEngineering
February202513
top-psettings.Thiscanoccuratbothlowandhightemperaturesettings,thoughfordifferentreasons.Atlowtemperatures,themodelbecomesoverlydeterministic,stickingrigidlytothehighestprobabilitypath,whichcanleadtoaloopifthatpathrevisitspreviouslygenerated
text.Conversely,athightemperatures,themodel'soutputbecomesexcessivelyrandom,
increasingtheprobabilitythatarandomlychosenwordorphrasewill,bychance,leadbacktoapriorstate,creatingaloopduetothevastnumberofavailableoptions.Inbothcases,themodel'ssamplingprocessgets"stuck,"resultinginmonotonousandunhelpfuloutput
untiltheoutputwindowisfilled.Solvingthisoftenrequirescarefultinkeringwithtemperatureandtop-k/top-pvaluestofindtheoptimalbalancebetweendeterminismandrandomness.
Promptingtechniques
LLMsaretunedtofollowinstructionsandaretrainedonlargeamountsofdatasotheycan
understandapromptandgenerateananswer.ButLLMsaren’tperfect;thecleareryour
prompttext,thebetteritisfortheLLMtopredictthenextlikelytext.Additionally,specific
techniquesthattakeadvantageofhowLLMsaretrainedandhowLLMsworkwillhelpyougettherelevantresultsfromLLMs
Nowthatweunderstandwhatpromptengineeringisandwhatittakes,let’sdiveintosomeexamplesofthemostimportantpromptingtechniques.
Generalprompting/zeroshot
Azero-shot5promptisthesimplesttypeofprompt.ItonlyprovidesadescriptionofataskandsometextfortheLLMtogetstartedwith.Thisinputcouldbeanything:aquestion,astartofastory,orinstructions.Thenamezero-shotstandsfor’noexamples’.
PromptEngineering
February202514
Let’suseVertexAIStudio(forLanguage)inVertexAI,6whichprovidesaplaygroundtotestprompts.InTable1,youwillseeanexamplezero-shotprompttoclassifymoviereviews.
Thetableformatasusedbelowisagreatwayofdocumentingprompts.Yourpromptswilllikelygothroughmanyiterationsbeforetheyendupinacodebase,soit’simportanttokeeptrackofyourpromptengineeringworkinadisciplined,structuredway.Moreonthistable
format,theimportanceoftrackingpromptengineeringwork,andthepromptdevelopmentprocessisintheBestPracticessectionlaterinthischapter(“Documentthevariouspromptattempts”).
Themodeltemperatureshouldbesettoalownumber,sincenocreativityisneeded,andweusethegemini-prodefaulttop-Kandtop-Pvalues,whicheffectivelydisablebothsettings(see‘LLMOutputConfiguration’above).Payattentiontothegeneratedoutput.Thewordsdisturbingandmasterpieceshouldmakethepredictionalittlemorecomplicated,asboth
wordsareusedinthesamesentence.
PromptEngineering
February202515
Name
1_1_movie_classification
Goal
Classifymoviereviewsaspositive,neutralornegative.
Model
gemini-pro
Temperature
0.1
TokenLimit
5
Top-K
N/A
Top-P
1
Prompt
ClassifymoviereviewsasPOSITIVE,NEUTRALorNEGATIVE.
Review:"Her"isadisturbingstudyrevealingthedirection
humanityisheadedifAIisallowedtokeepevolving,
unchecked.Iwishthereweremoremovieslikethismasterpiece.Sentiment:
Output
POSITIVE
Table1.Anexampleofzero-shotprompting
Whenzero-shotdoesn’twork,youcanprovidedemonstrationsorexamplesintheprompt,whichleadsto“one-shot”and“few-shot”prompting.Generalprompting/zeroshot
One-shot&few-shot
WhencreatingpromptsforAImodels,itishelpfultoprovideexamples.Theseexamplescanhelpthemodelunderstandwhatyouareaskingfor.Examplesareespeciallyusefulwhenyouwanttosteerthemodeltoacertainoutputstructureorpattern.
Aone-shotprompt,providesasingleexample,hencethenameone-shot.Theideaisthemodelhasanexampleitcanimitatetobestcompletethetask.
Afew-shotprompt7providesmultipleexamplestothemodel.Thisapproachshowsthe
modelapatternthatitneedstofollow.Theideaissimilartoone-shot,butmultipleexamplesofthedesiredpatternincreasesthechancethemodelfollowsthepattern.
PromptEngineering
February202516
Thenumberofexamplesyouneedforfew-shotpromptingdependsonafewfactors,
includingthecomplexityofthetask,thequalityoftheexamples,andthecapabilitiesofthegenerativeAI(genAI)modelyouareusing.Asageneralruleofthumb,youshoulduseatleastthreetofiveexamplesforfew-shotprompting.However,youmayneedtousemoreexamplesformorecomplextasks,oryoumayneedtousefewerduetotheinputlength
limitationofyourmodel.
Table2showsafew-shotpromptexample,let’susethesamegemini-promodel
configurationsettingsasbefore,otherthanincreasingthetokenlimittoaccommodatetheneedforalongerresponse.
Goal
ParsepizzaorderstoJSON
Model
gemini-pro
Temperature
0.1
TokenLimit
250
Top-K
N/A
Top-P
1
Prompt
Parseacustomer'spizzaorderintovalidJSON:
EXAMPLE:
Iwantasmallpizzawithcheese,tomatosauce,andpepperoni.JSONResponse:
、、、
{
"size":"small","type":"normal",
"ingredients":[["cheese","tomatosauce","peperoni"]]}
、、、
Continuesnextpage...
PromptEngineering
February202517
Prompt
EXAMPLE:
CanIgetalargepizzawithtomatosauce,basilandmozzarella
{
"size":"large","type":"normal",
"ingredients":[["tomatosauce","bazel","mozzarella"]]}
Now,Iwouldlikealargepizza,withthefirsthalfcheeseandmozzarella.Andtheothertomatosauce,hamandpineapple.
JSONResponse:
Output
、、、
{
"size":"large",
"type":"half-half",
"ingredients":[["cheese","mozzarella"],["tomatosauce","ham","pineapple"]]
}
、、、
Table2.Anexampleoffew-shotprompting
Whenyouchooseexamplesforyourprompt,useexamplesthatarerelevanttothetaskyouwanttoperform.Theexamplesshouldbediverse,ofhighquality,andwellwritten.Onesmallmistakecanconfusethemodelandwillresultinundesiredoutput.
Ifyouaretryingtogenerateoutputthatisrobusttoavarietyofinputs,thenitisimportanttoincludeedgecasesinyourexamples.Edgecasesareinputsthatareunusualorunexpected,butthatthemodelshouldstillbeabletohandle.
PromptEngineering
February202518
System,contextualandroleprompting
System,contextuaIandroIepromptingareaIItechniquesusedtoguidehowLLMsgeneratetext,buttheyfocusondifferentaspects:
•SystempromptingsetstheoveraIIcontextandpurposefortheIanguagemodeI.It
definesthe,bigpicture,ofwhatthemodeIshouIdbedoing,IiketransIatingaIanguage,cIassifyingareviewetc.
•ContextualpromptingprovidesspecificdetaiIsorbackgroundinformationreIevanttothecurrentconversationortask.ItheIpsthemodeItounderstandthenuancesofwhat,sbeingaskedandtaiIortheresponseaccordingIy.
•RolepromptingassignsaspecificcharacteroridentityfortheIanguagemodeItoadopt.ThishelpsthemodelgenerateresponsesthatareconsistentwiththeassignedroleanditsassociatedknowIedgeandbehavior.
TherecanbeconsiderabIeoverIapbetweensystem,contextuaI,androIeprompting.E.g.apromptthatassignsaroIetothesystem,canaIsohaveacontext.
However,eachtypeofpromptservesasIightIydifferentprimarypurpose:
•Systemprompt:DefinesthemodeI,sfundamentaIcapabiIitiesandoverarchingpurpose.
•ContextuaIprompt:Providesimmediate,task-specificinformationtoguidetheresponse.It,shighIyspecifictothecurrenttaskorinput,whichisdynamic.
•RoIeprompt:FramesthemodeI,soutputstyIeandvoice.ItaddsaIayerofspecificityandpersonaIity.
PromptEngineering
February202519
Distinguishingbetweensystem,contextual,androlepromptsprovidesaframeworkfor
designingpromptswithcIearintent,aIIowingforflexibIecombinationsandmakingiteasiertoanaIyzehoweachprompttypeinfluencestheIanguagemodeI,soutput.
Let,sdiveintothesethreedifferentkindsofprompts.
Systemprompting
Table3containsasystemprompt,whereIspecifyadditionalinformationonhowtoreturntheoutput.IincreasedthetemperaturetogetahighercreativityI
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 思政类创新课题申报书
- 项目成功评价的试题及答案
- 学期心理健康档案管理计划
- 加强教师职业道德的教研活动计划
- 分析项目管理考试的备考信条与策略试题及答案
- 2025年银行从业资格证考试判断题试题与答案
- 税务风险管理基本概念试题及答案
- 课题申报书 双面
- 探索项目实施的控制与调整的关键考题试题及答案
- 项目经理的角色定位与职责详解试题及答案
- 环保管理制度(适用于软件企业)
- 全国青少年机器人技术等价考试三级全套课件
- 适老化改造培训课件(PPT 31页)
- DB 33-T 1015-2021居住建筑节能设计标准(高清正版)
- 钢结构门式刚架厂房设计土木工程毕业设计
- 幼儿园儿歌100首
- 光伏并网逆变器调试报告正式版
- 市政道路大中修工程管理指引
- SF_T 0097-2021 医疗损害司法鉴定指南_(高清版)
- 易学书籍大全291本
- ISP98《备用信用证惯例》中英文
评论
0/150
提交评论