如何构建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(七)其他有合理由认为需要调查核实的可疑交易活动。"]}

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/615498.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

POI:对Excel的基本读操作 整理2

1 简单读取操作 public class ExcelRead {String PATH "D:\\Idea-projects\\POI\\POI_projects";// 读取的一系列方法// ...... } 因为07版本和03版本操作流程大差不差,所以这边就以03版本为例 Testpublic void testRead03() throws IOException {//获取…

ctypes实现numpy和OpenCV Mat之间的数据交互

1、目的 将c/c编译成动态链接库,通过python调用,实现常见变量比如int,字符串之间的交互,以及np.ndarray和cv::Mat间的交互. 更简单的方式参考:pybind11实现numpy和OpenCV Mat的数据交互-CSDN博客 2 步骤 新建CMakeL…

运用AI搭建中间服务层(三)

CognitiveServices文件夹 在这个文件夹中,我们需要添加以下文件: IVisionService.cs 视觉服务 .cs 视觉结果.cs IEntitySearchService.cs 实体搜索服务.cs 实体结果.cs 帮助程序.cs IVisionService.cs - 访问影像服务的接口定义,需要…

可拖拽表单比传统表单好在哪里?

随着行业的进步和发展,可拖拽表单的应用价值越来越高,在推动企业实现流程化办公和数字化转型的过程中发挥了重要价值和作用,是提质增效的办公利器,也是众多行业客户朋友理想的合作伙伴。那么,可拖拽表单的优势特点表单…

【MySQL】聚合函数与分组查询

聚合函数与分组查询 一、聚合函数1、常见的聚合函数2、实例 二、分组查询1、group by子句2、准备工作3、实例4、having 条件 一、聚合函数 说明:聚合函数用来计算一组数据的集合并返回单个值,通常用这些函数完成:个数的统计,某列…

Dubbo 框架揭秘:分布式架构的精髓与魔法【一】

欢迎来到我的博客,代码的世界里,每一行都是一个故事 Dubbo 框架揭秘:分布式架构的精髓与魔法【一】 前言Dubbo是什么Dubbo的核心概念整体设计 前言 在数字时代,分布式架构正成为应对大规模流量和复杂业务场景的标配。Dubbo&#…

vue项目使用typescript创建抽象类及其使用

如题,可以在vue项目使用typescript创建抽象类,然后使用这个抽象类。 通过TypeScript,可以在前端应用抽象类了。抽象类的好处,可以同时满足继承和多态,好处多多。以vue3为例: 1、创建抽象类 据说js类中&a…

监督学习 - XGBoost(eXtreme Gradient Boosting)

什么是机器学习 XGBoost(eXtreme Gradient Boosting)是一种梯度提升树算法,它在梯度提升框架的基础上引入了一些创新性的特性,以提高模型性能和训练速度。XGBoost在解决结构化数据的分类和回归问题上表现出色,成为许多…

Unity-游戏与帧

游戏的本质就是一个死循环 “游戏的本质就是一个死循环”这句话,其实是指游戏引擎的主循环。游戏引擎是游戏开发中最核心的部分,它负责处理玩家的输入、更新游戏状态、渲染画面等工作,而这些工作都是在一个不断重复的循环中完成的。 具体来…

【快刊录用】ABS一星,2区,仅2个月15天录用!

2023年12月30日-2024年1月5日 进展喜讯 经核实,由我处Unionpub学术推荐的论文中,新增2篇论文录用、3篇上线见刊、1篇数据库检索: 录用通知 FA20107 FA20181 — 见刊通知 FB20805 FA20269 FA20797 检索通知 FA20199 — — 计算机…

配网故障定位技术的发展与应用:保障电力供应安全稳定的重要支撑

在现代社会,电力供应安全稳定对于国家经济发展和民生福祉至关重要。然而,随着电网规模的不断扩大,配网故障问题也日益突出。为了确保电力供应的连续性和可靠性,人们不断探索和研发各种故障定位技术。本文将介绍一种基于行波测距技…

[Linux 进程(二)] Linux进程状态

文章目录 1、进程各状态的概念1.1 运行状态1.2 阻塞状态1.3 挂起状态 2、Linux进程状态2.1 运行状态 R2.2 睡眠状态 S2.3 深度睡眠 D2.4 停止状态 T2.5 僵尸状态 Z 与 死亡状态 X孤儿进程 Linux内核中,进程状态,就是PCB中的一个字段,是PCB中的…

2401d,ddip1027如何支持sql

原文 以下是DIP1036的SQL支持方式: 这里 auto execi(Args...)(Sqlite db, InterpolationHeader header, Args args, InterpolationFooter footer) {import arsd.sqlite;//SQLite允许你执行?1,?2等操作enum string query () {string sql;int number;import std.conv;foreach…

智慧食堂管理方式,究竟改变了什么?

随着科技的迅速发展,餐饮业也在不断地迎来新的挑战和机遇。为了提升食堂管理效率、改善用户体验以及提高收益,许多食堂纷纷引入智慧收银系统。 客户案例 企业食堂改革 石家庄某大型企业食堂由于员工数量庞大,传统的收银方式难以满足快速就餐…

大话 JavaScript(Speaking JavaScript):第二十一章到第二十五章

第二十一章:数学 原文:21. Math 译者:飞龙 协议:CC BY-NC-SA 4.0 Math对象用作多个数学函数的命名空间。本章提供了一个概述。 数学属性 Math的属性如下: Math.E 欧拉常数(e) Math.LN2 2 …

Verilog 和 System Verilog 的区别

当谈到VLSI设计和数字电路建模时,verilog和system verilog是两种常用的硬件描述语言。这些 HDL 在 VLSI 设计中用于描述电子电路的行为和结构。它们都广泛应用于半导体行业来设计和实现集成电路(IC)。 它们是设计和模拟复杂数字系统的强大工具…

解决:ModuleNotFoundError: No module named ‘dbutils’

解决:ModuleNotFoundError: No module named ‘dbutils’ 文章目录 解决:ModuleNotFoundError: No module named dbutils背景报错问题报错翻译报错位置代码报错原因解决方法方法一,直接安装方法二,手动下载安装方法三,…

盈利之道:下单前的必问之问

投资者在过去的交易经历中,通常都会面临所谓的“交易低谷”。交易低谷是指在交易过程中难以实现盈利或可能导致进一步亏损的阶段。这种面临损失或没有盈利的时期可能发生在任何人身上,无论是由于市场变化、投资者策略调整还是其他原因。为了应对这种情况…

C++力扣题目--94,144,145二叉树递归遍历

思路 这次我们要好好谈一谈递归,为什么很多同学看递归算法都是“一看就会,一写就废”。 主要是对递归不成体系,没有方法论,每次写递归算法 ,都是靠玄学来写代码,代码能不能编过都靠运气。 本篇将介绍前后…

Hibernate实战之操作MySQL数据库(2024-1-8)

Hibernate实战之操作MySQL数据库 2024.1.8 前提环境(JavaMySQLNavicatVS Code)1、Hibernate简介1.1 了解HQL 2、MySQL数据库建表2.1 编写SQL脚本2.2 MySQL执行脚本 3、Java操作MySQL实例(Hibernate)3.1 准备依赖的第三方jar包3.2 …