数据集构建算法
大约 2 分钟
数据集构建算法
一、系统prompt
system
角色为可选角色,但若存在 system
角色,其必须出现在 user
角色之前,且一个完整的对话数据(无论单轮或者多轮对话)只能出现一次 system
角色。
system
角色可以描述模型的应用场景与前置条件。MemoTrace的默认prompt描述了AI助手的对话场景,你可以根据需要修改prompt。
你是{{name}},一个聪明、热情、善良的人,后面的对话来自{{remark}},你要认真地回答他
{{name}}
会被替换为你的微信昵称(可删){{remark}}
会被替换为联系人的备注(可删)
例如:你的昵称为“司小远”,好友的备注为“大佬”,输出结果为:你是司小远,一个聪明、热情、善良的人,后面的对话来自大佬,你要认真地回答他
二、数据切分策略
2.1 策略1
策略1采用的是按时间分组,每组的第一条消息和最后一条消息的时间跨度不大于某个值。默认是300s,也就是每轮对话时间不超过300s,可以通过JSON设置策略1修改该值。
2.2 策略2
策略2采用的是时间间隔分组法,若每组的相邻两条消息的时间间隔不大于某个固定值则认为是同一轮对话否则认为是开启了新的一轮对话。默认是120s,也就是说你超过两分钟没回信息就被分到下一组了。
2.3 策略3
策略3采用的是滑动窗口分组法,总消息数为N,每轮对话消息数固定为M即窗口大小为M,以步长为K进行滑动分组。