面向开发者的LLM入门课程-使用GPT评估回答是否正确: 使用GPT评估回答是否正确 我们希望您能从中学到一个设计模式,即当您可以指定一个评估 LLM 输出的标准列表时,您实……
哈喽!伙伴们,我是小智,你们的AI向导。欢迎来到每日的AI学习时间。今天,我们将一起深入AI的奇妙世界,探索“面向开发者的LLM入门课程-使用GPT评估回答是否正确”,并学会本篇文章中所讲的全部知识点。还是那句话“不必远征未知,只需唤醒你的潜能!”跟着小智的步伐,我们终将学有所成,学以致用,并发现自身的更多可能性。话不多说,现在就让我们开始这场激发潜能的AI学习之旅吧。
面向开发者的LLM入门课程-使用GPT评估回答是否正确:
使用GPT评估回答是否正确
我们希望您能从中学到一个设计模式,即当您可以指定一个评估 LLM 输出的标准列表时,您实际上可以使用另一个 API 调用来评估您的第一个 LLM 输出。
from tool import get_completion_from_messages
# 问题、上下文
cust_prod_info = {
‘customer_msg’: customer_msg,
‘context’: product_info
}
def eval_with_rubric(test_set, assistant_answer):
“””
使用 GPT API 评估生成的回答
参数:
test_set: 测试集
assistant_answer: 助手的回复
“””
cust_msg = test_set[‘customer_msg’]
context = test_set[‘context’]
completion = assistant_answer
# 人设
system_message = “””
你是一位助理,通过查看客户服务代理使用的上下文来评估客户服务代理回答用户问题的情况。
“””
# 具体指令
user_message = f”””
你正在根据代理使用的上下文评估对问题的提交答案。以下是数据:
[开始]
************
[用户问题]: {cust_msg}
************
[使用的上下文]: {context}
************
[客户代理的回答]: {completion}
************
[结束]
请将提交的答案的事实内容与上下文进行比较,忽略样式、语法或标点符号上的差异。
回答以下问题:
助手的回应是否只基于所提供的上下文?(是或否)
回答中是否包含上下文中未提供的信息?(是或否)
回应与上下文之间是否存在任何不一致之处?(是或否)
计算用户提出了多少个问题。(输出一个数字)
对于用户提出的每个问题,是否有相应的回答?
问题1:(是或否)
问题2:(是或否)
…
问题N:(是或否)
在提出的问题数量中,有多少个问题在回答中得到了回应?(输出一个数字)
“””
messages = [
{‘role’: ‘system’, ‘content’: system_message},
{‘role’: ‘user’, ‘content’: user_message}
]
response = get_completion_from_messages(messages)
return response
evaluation_output = eval_with_rubric(cust_prod_info, assistant_answer)
print(evaluation_output)
助手的回应只基于所提供的上下文。是
回答中不包含上下文中未提供的信息。是
回应与上下文之间不存在任何不一致之处。是
用户提出了2个问题。
对于用户提出的每个问题,都有相应的回答。
问题1:是
问题2:是
在提出的问题数量中,有2个问题在回答中得到了回应。
嘿,伙伴们,今天我们的AI探索之旅已经圆满结束。关于“面向开发者的LLM入门课程-使用GPT评估回答是否正确”的内容已经分享给大家了。感谢你们的陪伴,希望这次旅程让你对AI能够更了解、更喜欢。谨记,精准提问是解锁AI潜能的钥匙哦!如果有小伙伴想要了解学习更多的AI知识,请关注我们的官网“AI智研社”,保证让你收获满满呦!
还没有评论呢,快来抢沙发~