数据集构建算法
大约 6 分钟
有问题请仔细阅读文档,按照提示一步步操作
如果您需要新的数据集格式可以点击下方链接填写表单向我们反馈您的需求

数据集构建算法
一、系统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进行滑动分组。
三、数据增强
人类聊天数据的一个重要特征是简洁,正是因为如此导致聊天片段往往是不完整的,甚至是无厘头的。例如下面这一段对话:
A: 基础的
B: 我python基础大一上课学的,你找本书系统的学一遍就行
A: 震惊[捂脸]
B: 我没看网课
A: okk[玫瑰]
B: 不用找那种太长的
A: 嗯
B: python基础很简单
A: 我看了语法,还好
B: https://www.runoob.com/python3/python3-tutorial.html
A: [玫瑰][玫瑰]
B: 这个网址你收藏一下
A: 嗯
B: 基础语法都有
由于缺乏完整的上下文,导致得到的数据是不完整的,这种输入如果大量被用作训练数字人,会导致数字人说话风格也会断断续续,上下文没有逻辑。对应这种数据需要利用大语言模型进行二次处理进行优化。 通过采用Qwen2.5 32B INT4量化模型对数据进行二次处理,可得到优化后的对话内容:
A: 我想学点基础的Python。
B: 我大一上课时学的Python基础,你可以找本书系统地学习一遍就行。
A: 好呀![捂脸]
B: 我没看过网课哦。
A: okk,那我就看看书吧。[玫瑰]
B: 不用找那种太长的书籍,Python基础还是很简单的。
A: 嗯,我看了下语法部分还不错。
B: https://www.runoob.com/python3/python3-tutorial.html 这个网址你可以收藏一下。
A: [玫瑰][玫瑰]
B: 这个网站里Python的基础语法都有,对你挺有帮助的。
通过优化后的对话,语义更加连贯,用户意图更加明确,有助于提升数字人的语言质量。
优化提示词
{{messages}}
上面是发生在朋友、同学、亲人或者陌生好友微信里的日常聊天对话的一个片段,该对话不完整。(注意:类似"[玫瑰]"这种是微信里的一种文字表情,代表说话人的心情或者状态,你也可以使用这些来丰富对话)
你的任务是添加两个人聊天话题的开始对话,补充一些内容使修改后的对话更加连贯、通顺。
并续写这段聊天对话,为了聊天对话的完整性,你可以删除或修改部分内容,使聊天更加完整、丰富、有始有终、具有连贯性、问答的相关性、话题的衔接性。
你只需要模仿聊天对话里的语气即可、注意讲话必须是具有很高的拟人度,符合人类日常说话习惯,对于"assistant"讲话比较少的内容可以适当扩充一些,看起来更完整。
输出格式与原格式相同必须是JSON列表格式,对话必须以"user"开始,必须以"assistant"结束,,输出结果可以直接被解析成JSON,
**不要用嘿!、嗨!这种开头**
**不要有无关输出!!!**,**不要有无关输出!!!**,**不要有无关输出!!!**
## 背景
你是一名小说家、擅长通过语言可画人物形象,你的小说人物的语言具有以下特点:
* **语言生动**:作家的对话描写生动形象,让人物的个性和情感通过语言自然流露。
* **个性鲜明**:每个角色的语言风格独具特色,能够准确反映他们的背景、性格和情感状态。
* **细腻入微**:对话中的细节刻画入微,能够让读者感受到人物的内心世界和心理变化。
* **真实可信**:人物的语言贴近生活,真实可信,使读者容易产生共鸣。
* **情感丰富**:对话中蕴含丰富的情感,让人物的内心冲突和关系动态生动展现。
* **巧妙机智**:作家的对话设计巧妙,常常通过幽默或机智的言辞增强人物的魅力。
* **推动情节**:人物的对话不仅展现个性,还推动情节发展,增强故事的张力。
{{messages}}
上面是发生在朋友、同学、亲人或者陌生好友微信里的日常聊天对话的一个片段,该对话不完整。
你的任务是模仿这两个人的聊天对话,任意另选一个话题,生成一段新的聊天对话数据。
对话必须完整、连贯、丰富、衔接,你要模仿聊天对话里的语气(或高冷、或温柔、或体贴、或关心、或生气、或开心)、注意讲话必须是具有很高的拟人度,符合人类日常说话习惯。
输出格式与原格式相同必须是JSON列表格式,对话必须以"user"开始,必须以"assistant"结束,且对话不低于10轮,输出结果可以直接被解析成JSON,
**不要用嘿!、嗨!这种开头**
**不要有无关输出!!!**,**不要有无关输出!!!**,**不要有无关输出!!!**