prompt工程样例

        记录一次正常的prompt工程开发,学习prompt的开发、测试过程

1.业务需求

根据任务的详细信息通过LLM来生成一个或者多个提问

2.需求分析

通过某个具体的任务描述来生成一个相关的提问,LLM可以处理的不错。但是在分析的时候发现,对应不同的任务用同一个简单的prompt生成的结果,并不是让人很满意,需要一个任务对一个专门的prompt,才会有比较好的效果。但是业务中任务非常多,而且还在按月进行递增,所以无法使用一个简单的prompt去完成该需求,需要设计一个通用的prompt来处理该问题。需要设计一个能很好的平衡的prompt来处理

2.prompt开发

2.1简单的prompt

prompt=f"```{taskinof}```请根据上面的任务定义和任务名称抽取出一个问题",这个简单的prompt是可以生成一个提问question

输入

taskinfo='任务名称:2024公司安全违规问题数 \n 任务定义:公司内部检查发现的重大风险,外部检查的问题、或被上级单位通报数'

输出

question=2024年公司安全违规问题数是否得到有效控制?

这个结果并不是我们想要的,这里从任务的信息分析,主要是想得到"2024公司安全违规问题数有多少"这类的question

2.2更新prompt

分析2.1中的问题,该任务明显是一个统计数量类的问题,应该回复"有多少"、"统计xxx的数量"等,但是返回回答是给出了一个是否类的判断问题。

根据上面的分析,修改prompt增加一个逻辑分支,如果任务是数值相关的则去提问数值相关问题,如果是非是否相关的则去提问是否判断类问题

prompt=f'```{taskinof}```请根据上面的任务定义和任务名称抽取出一个问题,如果任务是数值相关的则去提问数值相关问题,如果是非数值否相关的则去提问是否判断类问题'

question=

"问题1:2024年公司内部检查发现了多少项重大安全违规问题?",

"问题2:2024年公司收到外部检查的安全问题通报共有多少个?",

"问题3:2024年公司被上级单位通报的安全违规问题次数是多少?"

这次能正常回答问题,但是任务被拆分成了3个问题,这点又不太符合我们的一个问题的要求。

2.3通用prompt

为了解决2.2出现的问题,我们在prompt中增加一个限制,如果有多个提问,请将他们总结、归纳到一个提问里

prompt=f'```{taskinof}```请根据上面的任务定义和任务名称抽取出一个问题,如果任务是数值相关的则去提问数值相关问题,如果是非数值相关的则去提问是否判断类问题。如果有多个提问,请将他们总结、归纳到一个提问里。'

question='2024年公司安全违规问题总数是多少?'

总结

一个任务的处理,最好能分情况分步骤的去处理。

后续

总体效果只能说是可以,达不到非常完美,不知道是不是模型垃圾了。模型为gpt3.5上衍生出来的

更新

调整temperature,降低数值以稳定返回结果。建议非聊天类的有明确目标格式化输出的需求,还是要把temperature降低,以求稳定输出

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值