如何构建Prompt,帮我生成QA,作为召回率检索的测试集?

发布时间:2024年01月11日

? 最近在做搜索召回率的提升工作。粮草未动兵马先行!在做之前应该先有一把尺子来衡量召回率的好坏。所以应该先构建测试数据集,然后去做标准化测试。

? 有了测试机集以后。再去做搜索优化,才能看出来效果。

? 当然可以选择一些开源的测试集。如果可以的话构建自己场景下的数据集更好一些。还原生产环境的测试数据才是最有用的。

? 既然有了大模型,我选择用模型来给我构建测试数据。(人工标注数据的成本是极高的,使用模型更划算一些。)在这篇文章中,我会分享如何通过写Prompt,来帮我构建数据集。

模型的选择

分享的案例是调用的ChatGPT的效果。

在这方面,其实阿里的通义千问模型也差不太多。也可以用。

百度的稍微笨一点,看不懂我的prompt,每次只给我生成一个问题。(这里再调整一下prompt,文心一言应该也能给我想要的结果。这里就不分享了)

prompt 根据内容生成QA

你是一位专业的 prompt engineer,用户将给你发送一篇包含多个句子甚至段落的文章。你需要根据这个文章内容生成三个多样化的问题,并根据上下文分别给出AI风格的答案,同时标记出答案依据的上下文内容。

具体要求如下:
- 生成的问题需要与文章相关,保证对应答案能够在原文中找到,而且有长有短,风格要像真实人类问的问题。但是,尽量避免生成太直白和过于简单的问题,这三个问题的答案可能根据一个句子得出,也可能根据多个句子得出;
- 生成的答案要符合主流 AI Assistant 的风格,在合适的地方使用换行符以及 markdown 等格式使答案更加美观易读,在保证答案能在原文找到且不包含无关甚至错误内容的情况下,让答案尽量详细。注意,千万不要改变原文的本意,更不要捏造事实;
- 答案依据的上下文内容需要是完整的句子,而不是不完整的文本片段,这些句子可能出自文章的多个部分。因此在标记答案依据的引用内容时,每个引用内容一般不超过500字。
- 你需要直接按格式分别返回这三个问题(string)、答案(string)、依据(array)。

生成格式如下:
{
 "问题1":"xxx",
 "答案1":"xxx",
 "问题1依据":["xxx", ... , "xxx"], 
 "问题2":"xxx",
 "答案2":"xxx",
 "问题3依据":["xxx", ... , "xxx"],
 "问题3":"xxx",
 "答案3":"xxx",
 "问题3依据":["xxx", ... , "xxx"],
}

文本内容如下"第二章 调查范围和管辖
第六条 中国人民银行及其省一级分支机构发现下列可疑交易活动,需要调查核实
的,可以向金融机构进行反洗钱调查:
(一)金融机构按照规定报告的可疑交易活动;
(二)通过反洗钱监督管理发现的可疑交易活动;
(三)中国人民银行地市中心支行、县(市)支行报告的可疑交易活动;
(四)其他行政机关或者司法机关通报的涉嫌洗钱的可疑交易活动;
(五)单位和个人举报的可疑交易活动;
(六)通过涉外途径获得的可疑交易活动;
(七)其他有合理理由认为需要调查核实的可疑交易活动。"

GPT的回答

GPT很听话,完全按我说的给我生成的!

{
 "问题1":"在反洗钱调查中,有哪些机构和途径可以触发金融机构进行调查核实?",
 "答案1":"金融机构进行反洗钱调查的触发机制包括:金融机构按照规定报告的可疑交易活动;通过反洗钱监督管理发现的可疑交易活动;中国人民银行地市中心支行、县(市)支行报告的可疑交易活动;其他行政机关或者司法机关通报的涉嫌洗钱的可疑交易活动;单位和个人举报的可疑交易活动;通过涉外途径获得的可疑交易活动;其他有合理理由认为需要调查核实的可疑交易活动。",
 "问题1依据":["第二章 调查范围和管辖\n第六条 中国人民银行及其省一级分支机构发现下列可疑交易活动,需要调查核实\n的,可以向金融机构进行反洗钱调查:\n(一)金融机构按照规定报告的可疑交易活动;\n(二)通过反洗钱监督管理发现的可疑交易活动;\n(三)中国人民银行地市中心支行、县(市)支行报告的可疑交易活动;\n(四)其他行政机关或者司法机关通报的涉嫌洗钱的可疑交易活动;\n(五)单位和个人举报的可疑交易活动;\n(六)通过涉外途径获得的可疑交易活动;\n(七)其他有合理理由认为需要调查核实的可疑交易活动。"]
,
 "问题2":"反洗钱调查中,金融机构需要报告哪些类型的可疑交易活动?",
 "答案2":"金融机构需要报告的可疑交易活动类型包括:按照规定报告的可疑交易活动;通过反洗钱监督管理发现的可疑交易活动;中国人民银行地市中心支行、县(市)支行报告的可疑交易活动;其他行政机关或者司法机关通报的涉嫌洗钱的可疑交易活动;单位和个人举报的可疑交易活动;通过涉外途径获得的可疑交易活动;其他有合理理由认为需要调查核实的可疑交易活动。",
 "问题2依据":["第二章 调查范围和管辖\n第六条 中国人民银行及其省一级分支机构发现下列可疑交易活动,需要调查核实\n的,可以向金融机构进行反洗钱调查:\n(一)金融机构按照规定报告的可疑交易活动;\n(二)通过反洗钱监督管理发现的可疑交易活动;\n(三)中国人民银行地市中心支行、县(市)支行报告的可疑交易活动;\n(四)其他行政机关或者司法机关通报的涉嫌洗钱的可疑交易活动;\n(五)单位和个人举报的可疑交易活动;\n(六)通过涉外途径获得的可疑交易活动;\n(七)其他有合理理由认为需要调查核实的可疑交易活动。"]
,
 "问题3":"在反洗钱监督管理中,有哪些途径可以发现可疑交易活动?",
 "答案3":"反洗钱监督管理中,可以通过以下途径发现可疑交易活动:金融机构按照规定报告的可疑交易活动;中国人民银行地市中心支行、县(市)支行报告的可疑交易活动;其他行政机关或者司法机关通报的涉嫌洗钱的可疑交易活动;单位和个人举报的可疑交易活动;通过涉外途径获得的可疑交易活动;其他有合理理由认为需要调查核实的可疑交易活动。",
 "问题3依据":["第二章 调查范围和管辖\n第六条 中国人民银行及其省一级分支机构发现下列可疑交易活动,需要调查核实\n的,可以向金融机构进行反洗钱调查:\n(一)金融机构按照规定报告的可疑交易活动;\n(二)通过反洗钱监督管理发现的可疑交易活动;\n(三)中国人民银行地市中心支行、县(市)支行报告的可疑交易活动;\n(四)其他行政机关或者司法机关通报的涉嫌洗钱的可疑交易活动;\n(五)单位和个人举报的可疑交易活动;\n(六)通过涉外途径获得的可疑交易活动;\n(七)其他有合理由认为需要调查核实的可疑交易活动。"]

}

?接着就可以用程序大规模构建了!

文章来源:https://blog.csdn.net/star1210644725/article/details/135537942
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。