一个典型的提示评估工作流程遵循五个关键步骤,帮助您通过客观测量系统地改进您的提示。尽管组装这些工作流程有许多不同的方式,并且有各种开源和付费工具可用,但理解核心流程有助于您从小处着手,并根据需要逐步扩展。

第一步:起草提示
首先编写一个您想要改进的初始提示。在这个示例中,我们将使用一个简单的提示:
prompt = f"""
Please answer the user's question:
{question}
"""
这个基础提示将作为我们测试和改进的基准。
第二步:创建评估数据集
您的评估数据集包含您将输入到提示中的样本输入。由于我们的提示只有一个输入(用户的问题),我们需要一组不同的问题来进行测试。

该数据集包含我们将与提示合并的问题。您可以手动组装这些数据集,也可以使用 Claude 生成它们。在实际评估中,您可能会有数十、数百甚至数千条不同的记录,但在这个示例中,我们将从仅三个问题开始:
- 2+2 等于多少?
- 我该如何制作燕麦粥?
- 月球有多远?
第三步:通过 Claude 处理
从您的数据集中取出每个问题,并将其与您的提示模板合并,以创建完整的提示。然后将每个提示发送给 Claude 并收集响应。

例如,第一个问题会变成一个完整的提示,Claude 处理后返回类似"2 + 2 = 4"的答案。您对数据集中的所有问题重复此过程,构建一组问答对。
第四步:通过评分器处理
现在到了关键的一步:客观地衡量 Claude 响应的质量。您将每个问答对输入到评分器中,对响应进行打分。

评分器根据答案质量分配分数(通常为 1-10 分):
- 10 = 完美答案,没有改进空间
- 4 = 尚可,但肯定有改进空间
- 较低的分数表示较差的响应
在对所有响应打分后,您将这些分数取平均值。在我们的示例中,10、4 和 9 的分数平均为 7.66,这为您提供了提示性能的客观衡量标准。

第五步:更改提示并重复
在建立了基准分数后,您现在可以修改提示并再次运行整个流程,以查看您的更改是否提高了性能。

例如,您可以通过添加更具体的指令来增强原始提示:
prompt = f"""
Please answer the user's question:
{question}
Answer the question with ample detail
"""提示评分
这个工作流程的强大之处在于获得提示性能的客观衡量标准。您可以比较不同提示版本之间的分数,以确定哪个表现更好。

在我们的示例中:
- 提示 v1 得分为 7.66
- 提示 v2 得分为 8.7
v2 更高的分数提供了客观证据,表明添加"请详细回答问题"提高了提示的性能。然后,您可以使用表现更好的版本,或继续迭代以获得更高的分数。
这种系统化的方法消除了提示改进中的猜测,为您提供了一个可靠的优化框架。尽管实现有效的评分器存在复杂性,但这个工作流程为构建您自己的评估系统提供了坚实的基础。