index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html
![]()
本文总结了互联网上通用prompt的设计原则,旨在提升评估的准确性和鲁棒性。核心在于任务描述的清晰、评估标准的精细、推理步骤的加入以及输出格式的明确。同时,文章还介绍了多种提升评估准确性的方法,例如提供few-shot示例、引用参考、使用思维链(CoT)以及采用多轮分析和陪审团机制。此外,还提到了引入奖励机制来提高回答正确性的有趣发现。最后强调,在设计prompt时,可以参考社会学中的问卷设计,减少模型偏见,并根据实际应用场景灵活调整。
🎯 任务描述清晰是prompt设计的基础,明确告知模型需要做什么(Your task is to do X)以及输入信息(You will be provided with Y)。
⚖️ 评估标准精细化,通过详细的评分细则(如1-5分制)或明确的属性判断标准(Property Z is present if ...)来指导模型进行更准确的评估。
🤔 加入推理评估步骤,要求模型在评分前进行必要的推理(To judge this task, you must first make sure to read sample Y carefully to identify ..., then ...),有助于提高评估的深度和准确性。
📝 明确输出格式,例如使用JSON格式并添加特定字段(如Score和Reasoning),可以提升输出的一致性和可读性。
💡 采用多种技术提升评估准确性,包括提供少量示例、引用参考内容、使用思维链(CoT)、进行多轮分析以及采用陪审团机制等。
我总结的互联网上通用 prompt 的通用设计原则如下:
Your task is to do X (你的任务是 X)
.You will be provided with Y (你拿到的信息是 Y)
.
You should evaluate property Z on a scale of 1 - 5, where 1 means ... (根据属性 Z 的表现进行评分,评分范围为 1 - 5,其中 1 分表示 ...)
You should evaluate if property Z is present in the sample Y. Property Z is present if ... (请指出样本 Y 中是否具备属性 Z,如果具备,那么 ...)
To judge this task, you must first make sure to read sample Y carefully to identify ..., then ... (评估此任务之前,请先仔细阅读样本 Y,识别出 ...,然后再 ...)
Your answer should be provided in JSON, with the following format {"Score": Your score, "Reasoning": The reasoning which led you to this score} (以 JSON 格式回答,格式为 {"Score": 评分, "Reasoning": 评分推理过程})
Prompt 书写灵感可以参考MixEval或MTBench的 prompt 模板。
MixEvalhttps://github.com/huggingface/lighteval/blob/main/src/lighteval/tasks/extended/mix_eval/judge_prompts.pyyMTBenchhttps://github.com/huggingface/lighteval/blob/main/src/lighteval/tasks/extended/mt_bench/judge_prompt_templates.py
其他要点:
成对比较比对输出评分更能反映人类的偏好,且通常更稳健https://arxiv.org/abs/2403.16950如果任务确实需要对输出评分为具体的值,建议使用整数,并详细解释每个分值的代表含义,或添加说明 prompt 如 provide 1 point for this characteristic of the answer, 1 additional point if ... (回答具备某项特性得 1 分,如果 ... 再加 1 分)
等https://x.com/seungonekim/status/1749289437165769177尽量每评估一项能力就使用专门评分 prompt,会得到更好而鲁棒的结果
提升评估准确性
可以通过以下方式或技术来提升评估准确性 (有可能会增加成本):
Few-shot 示例:提供少量示例可以帮助模型理解和推理,但也会增加上下文长度。思维链 (CoT) :要求模型 在评分之前 给出推理过程,可以提高准确性(参考这篇帖子)。https://arxiv.org/abs/2212.08073https://x.com/seungonekim/status/1749289437165769177多轮分析:可以更好地检测事实性错误https://arxiv.org/abs/2305.13281陪审团机制:汇总多个评价模型的结果比单一模型的结果更好。https://arxiv.org/abs/2404.18796社区意外发现,prompt 引入奖励机制 (例如:回答正确将得到一只小猫
) 可以提高回答正确性。这个方法的效果视场景而异,你可以根据需求灵活调整。
注:如要减少模型偏见,可以参考社会学中的问卷设计,然后根据使用场景来书写 prompt。如想使用模型来替代人工评估,可以设计类似的评价指标:如计算标注员一致性,使用正确的问卷方法来减少偏见等。
不过在实际应用中,大多数人并不需要完全可复现且高质量无偏的评估,快速且略显粗糙的 prompt 就能满足需求。(只要知悉使用后果,这种情况也是能接受的)。
英文原文:https://raw.githubusercontent.com/huggingface/evaluation-guidebook/refs/heads/main/translations/zh/contents/model-as-a-judge/designing-your-evaluation-prompt.md
原文作者: clefourrier
译者: SuSung-boy
审校: adeenayakup
内容中包含的图片若涉及版权问题,请及时与我们联系删除