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

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

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

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

既然有了大模型,我选择用模型来给我构建测试数据。(人工标注数据的成本是极高的,使用模型更划算一些。)在这篇文章中,我会分享如何通过写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(七)其他有合理由认为需要调查核实的可疑交易活动。"]

}

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

相关推荐
这个男人是小帅12 分钟前
【GAT】 代码详解 (1) 运行方法【pytorch】可运行版本
人工智能·pytorch·python·深度学习·分类
__基本操作__14 分钟前
边缘提取函数 [OPENCV--2]
人工智能·opencv·计算机视觉
Doctor老王18 分钟前
TR3:Pytorch复现Transformer
人工智能·pytorch·transformer
热爱生活的五柒18 分钟前
pytorch中数据和模型都要部署在cuda上面
人工智能·pytorch·深度学习
HyperAI超神经2 小时前
【TVM 教程】使用 Tensorize 来利用硬件内联函数
人工智能·深度学习·自然语言处理·tvm·计算机技术·编程开发·编译框架
扫地的小何尚4 小时前
NVIDIA RTX 系统上使用 llama.cpp 加速 LLM
人工智能·aigc·llama·gpu·nvidia·cuda·英伟达
埃菲尔铁塔_CV算法6 小时前
深度学习神经网络创新点方向
人工智能·深度学习·神经网络
艾思科蓝-何老师【H8053】7 小时前
【ACM出版】第四届信号处理与通信技术国际学术会议(SPCT 2024)
人工智能·信号处理·论文发表·香港中文大学
weixin_452600697 小时前
《青牛科技 GC6125:驱动芯片中的璀璨之星,点亮 IPcamera 和云台控制(替代 BU24025/ROHM)》
人工智能·科技·单片机·嵌入式硬件·新能源充电桩·智能充电枪
学术搬运工7 小时前
【珠海科技学院主办,暨南大学协办 | IEEE出版 | EI检索稳定 】2024年健康大数据与智能医疗国际会议(ICHIH 2024)
大数据·图像处理·人工智能·科技·机器学习·自然语言处理