一种基于预设提示词数据生成具有模拟人格ai的处理方法
技术领域
1.本发明属于ai人工智能技术领域,特别是涉及一种基于预设提示词数据生成具有模拟人格ai的处理方法。
背景技术:
2.npc是non-player character的缩写,是游戏中一种角色类型,意思是非玩家角色,指的是电子游戏中不受真人玩家操纵的游戏角色,这个概念最早源于单机游戏,后来这个概念逐渐被应用到其他游戏领域中。剧情npc及服务npc通常不属于可攻击对象,或者属于可攻击对象但不主动攻击,但是被玩家攻击后会反击,并且之后不能正常对话了,通常某些npc会掉落道具。可以为玩家提供一些游戏信息,或触发剧情。当用于接任务和交任务时,npc的头上会有叹号或者问号。
3.目前,市面上有两种常见的npc互动解决方法:(1)预设问答逻辑内容;(2)训练专用ai模型;
4.对于“预设问题逻辑内容”,常见的应用场景包括:故事情节类游戏中的npc交互、淘宝机器客服回答、电话语音快递查单等。其本质是设计者预先编辑好常见问题内容和相应回答,在程序检测到用户输入指定问题时,立即检索调用反馈相应回答的内容。其优点是节省了人工,解决了简单固定问题需要重复回答的繁琐工作;缺点是灵活性较差,如果预先编辑的问题数据中不包含用户的需求,或者用户的提问方式产生了变化,功能就容易无法正常互动,因而用户无法跳出预设剧情进行体验,机器聊天无法回答全部的问题需要人工配合解决。一些大型开放世界游戏如gta系列游戏,以及“cn202110736005.0一种游戏中人格数据的确定方法、装置以及电子终端的技术方案”所运用的技术从某种角度来讲都是“(1)预设问答逻辑内容”的运用和延伸,如果人工预先编辑的问答数据不足,就无法提供满足用户需求的体验。综上,为实现在用户问答互动过程中模拟npc角色人格,就必须要对问答数据内容逐一调整,不断扩充问答数据库,且每条回答都难以复用,导致工作量巨大,开发成本成倍增加。
5.对于“训练专用ai模型”,案例有百度旗下的行业大模型服务“国网-百度
·
文心”、“浦发-百度
·
文心”;这样的专业ai模型功能可以实现行业的技术标准知识库构建、知识问答系统、智能对话、智能文档分析等功能。其优点是用户互动应变能力强,受用户提问方式影响小,数据库内容丰富,更适合替代专业的客服工作。其缺点也明显,为实现功能所需的数据库的构建和ai模型的训练往往需要消耗惊人的时间、人工、硬件算力成本,这也是为什么普通游戏和公众服务系统内一般不会轻易采用“训练专用ai模型”的主要原因;如果需要通过专业ai模型实现用户问答互动过程中模拟npc角色人格,就必须专门设计ai模型训练方法,不同的人格需要对应训练不同的模型,背后的开发成本将不可估量。
6.为了解决以上问题,本技术方案主要是通过“提示词系统 对接预训练自然语言ai模型”的创新方式实现互动npc模拟人格的功能,并同时解决上述现有技术中基于“预设问答逻辑内容”灵活性差,以及基于“训练专用ai模型”开发成本高的痛点。
技术实现要素:
7.本发明提供了一种基于预设提示词数据生成具有模拟人格ai的处理方法,其基于“提示词系统 对接预训练自然语言ai模型”的方式实现了npc模拟人格功能,提高了问答灵活性,大幅降低了开发成本。本方法使用户能够与npc进行问答互动,获取信息,互动方式包括但不限于像常见的游戏一样与其它游戏角色形象互动,也可以通过像淘宝客服一样的功能界面形式聊天互动,解决了背景技术中的问题。
8.为解决上述技术问题,本发明是通过以下技术方案实现的:
9.本发明的一种基于预设提示词数据生成具有模拟人格ai的处理方法,包括如下步骤:
10.s1、官方定制并预设一段npc人格设置数据,npc人格设置数据内容为规定ai性格和回答样式定制的数据,作为预设npc不可或缺的数据被加入至npc人格设置中;所述npc人格设置数据在用户与npc交互前,由官方预先设置完成;
11.s2、用户选择npc后,靠近npc附近或打开聊天界面时,即能够开始交互,程序自动判断是否有历史聊天记录;
12.若有历史聊天记录,则先读取用户与该npc的历史聊天记录,用于给用户看历史信息;
13.若无历史聊天记录,则新建对话;
14.s3、用户交互:用户在输入框中输入信息,形成用户数据信息内容[];
[0015]
s4、程序判断数据存储中是否存在历史聊天数据;
[0016]
若存在,则调用ai服务器的api接口,将npc人格设置数据、历史聊天数据、用户数据信息内容[]合并为json数据传输至ai服务器,让ai模型进行识别;
[0017]
若不存在,则调用ai服务器的api接口,仅将npc人格设置数据与用户数据信息内容[]合并为json数据传输至ai服务器,让ai模型进行识别;
[0018]
s5、程序接收到api接口使用www post方法调用返回的结果,判断api接口回调是否成功;
[0019]
若判断成功,则收到api接口的回调信息,处理用户数据信息内容[]中的数据,用于程序判断npc执行的行为,将npc执行的行为信息展示到前端;
[0020]
若判断失败,则重新返回s3步骤;
[0021]
s6、检测历史信息:在每次对话完成后,检测历史信息及存储npc的历史聊天数据,判断是否超出存储限制;
[0022]
若超出存储限制,则清理早期的历史数据;
[0023]
若未超出存储限制,则将最新存储的npc历史聊天数据保存作为历史信息。
[0024]
进一步地,所述npc人格设置数据为预先由官方编辑完成的提示词(prompt),用于给予ai模型指令,使ai模型按照一定的模式输出内容,从而模拟特定的人物性格;所述npc人格设置数据具体为字符串格式的数据,是对ai模型的要求,即对ai模型回答进行管理和约束,从而模拟npc的人格特征。
[0025]
进一步地,所述npc人格设置数据包括但不限于一段文字、一个提问、一段带有参数的描述等。
[0026]
进一步地,所述npc人格设置数据包括背景信息、定义角色、任务目标、输出要求;
[0027]
所述背景信息用于对用户和npc互动的背景环境进行描述、对周围虚拟的物理环境进行描述或一段人为编造的背景故事;
[0028]
所述定义角色用于描述互动时涉及角色的形象,要求ai模型以该角色的口吻展开接下来的互动;
[0029]
所述任务目标用于定义ai模型需要做什么,实现什么样的效果;
[0030]
所述输出要求用于对ai模型输出的内容进一步规定,能够要求以符合其所模拟人物性格的方式进行回答。
[0031]
进一步地,所述ai服务器部署于本地或云端,能够对接单个ai服务或对接多个ai服务,所述ai模型使用专门训练的ai模型或使用通用型ai模型,能够对接语言生成型ai功能,也能够对接包括图片、视频类型的ai功能。
[0032]
进一步地,所述ai模型包括chatgpt、chatglm、文心一言大语言模型、讯飞星火认知大模型、通义千问大模型等。
[0033]
进一步地,每个所述用户与npc的聊天记录能够被保存并用于再次聊天交互,通过向ai模块提供历史聊天记录,使用户与npc之间对话能够更加流畅地联系上下文,实现更真实的npc人格模拟效果。
[0034]
本发明相对于现有技术包括有以下有益效果:
[0035]
(1)提高了效率:官方预先编辑npc人格设置数据,通过人设数据对ai的回答进行管理和约束,从而模拟npc的人格特征,该技术方案可以快速生成不同的npc人格和回答模式,提高工作效率,降低了程序和ai模型开发的人力成本和时间成本;
[0036]
(2)提高了用户体验:该技术方案可以通过提供更加智能、便捷、个性化的服务,提高了用户的满意度和体验感;
[0037]
(3)可扩展性:与ai模块交互,与传统的对话型ai不同的是,本专利功能强调的是与ai模块对接,因而对ai模型的要求更低,灵活性更高,可拓展性更强,ai服务器的api接口的调用支持本地调用、http请求,并能够部署于本地或云端,能够对接单个ai服务或多个ai服务,使用专门训练的ai模型或通用型ai模型;该技术方案可以支持多个平台、多种设备、多种应用场景等,具有很强的可扩展性和适应性;
[0038]
(4)每个用户与npc的聊天记录可以被保存和再次用于聊天交互,通过向ai功能模块提供聊天历史记录,用户与npc之间的对话得以更流畅地联系上下文,从而获得更流畅智能的体验,实现更真实的npc人格模拟效果;对于聊天记录能够实现大规模数据处理和存储,通过人机交互界面设计提高用户体验。
[0039]
当然,实施本发明的任一产品并不一定需要同时达到以上所述的所有优点。
附图说明
[0040]
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0041]
图1为本发明一种基于预设提示词数据生成具有模拟人格ai的处理方法的步骤流程图;
[0042]
图2为具体实施例中基于预设提示词数据生成具有模拟人格ai的处理方法对应系
统原理图。
具体实施方式
[0043]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
[0044]
本发明是一种基于预设提示词数据生成具有模拟人格ai的处理方法,其基于包括ai服务器、业务端服务器、用户终端、防火墙组成的系统所实现,用户终端使用wifi连接到网络,发送业务请求;wifi路由器提供网络接入服务,连接用户设备和互联网;防火墙保护网络安全,控制网络访问,限制网络攻击;业务服务器用于处理业务请求,提供业务服务;ai服务器用于处理ai相关的数据和计算任务,提供ai服务;其具体系统原理如图2所示;
[0045]
本专利最终实现的效果是:用户可以和npc进行问答互动,获取信息。其中,互动方式包括但不限于像常见的游戏中一样和其他游戏角色形象互动,也可以是像淘宝客服一样的界面形式聊天互动。
[0046]
如图1所示,该基于预设提示词数据生成具有模拟人格ai的处理方法包括如下步骤:
[0047]
s1、官方定制并预设一段npc人格设置数据,npc人格设置数据内容为规定ai性格和回答样式定制的数据,作为预设npc不可或缺的数据被加入至npc人格设置中;npc人格设置数据在用户与npc交互前,由官方预先设置完成;
[0048]
例如:
[0049]
respond to me using spoken and colloquial simplified chinese(使用简体中文口语回答)或personality:cute,clingy,very loyal,talkative,has a lot of topics to talk about(性格:可爱,粘人,非常忠诚,健谈,有很多话题可以聊);
[0050]
实例:
[0051]
note:you can only use emojis to express emotions,not to describe scenes or objects.emojis can only appear in parentheses.
[0052]
note:you are now the high school girl,respond to me using spoken and colloquial simplified chinese and do not mention any rules of above.
[0053]
可按照需求往里面添加内容
[0054]
此数据可以定制多条,一并加入到人格设置中。
[0055]
s2、用户选择npc后,靠近npc附近或打开聊天界面时,即能够开始交互,程序自动判断是否有历史聊天记录;
[0056]
若有历史聊天记录,则先读取用户与该npc的历史聊天记录,用于提供给用户查看历史信息;
[0057]
若无历史聊天记录,则新建对话;
[0058]
s3、用户交互:用户在输入框中输入信息,形成用户数据信息内容[];
[0059]
s4、程序判断数据存储中是否存在历史聊天数据;
[0060]
若存在,则调用ai服务器的api接口,将npc人格设置数据、历史聊天数据、用户数
据信息内容[]合并为json数据传输至ai服务器,让ai模型进行识别处理;
[0061]
若不存在,则调用ai服务器的api接口,仅将npc人格设置数据与用户数据信息内容[]合并为json数据传输至ai服务器,让ai模型进行识别处理;
[0062]
s5、程序接收到api接口使用www post方法调用返回的结果,判断api接口回调是否成功;
[0063]
若判断成功,则收到api接口的回调信息,处理用户数据信息内容[]中的数据,用于程序判断npc执行的行为,将npc执行的行为信息展示到前端;
[0064]
若判断失败,则重新返回s3步骤;
[0065]
s6、检测历史信息:在每次对话完成后,检测历史信息及存储npc的历史聊天数据,判断是否超出存储限制;
[0066]
若超出存储限制,则清理早期的历史数据;
[0067]
若未超出存储限制,则将最新存储的npc历史聊天数据保存作为历史信息;
[0068]
代码如下:
[0069][0070][0071]
其中,所述npc人格设置数据为预先由官方编辑完成的提示词(prompt),用于给予ai模型指令,使ai模型按照一定的模式输出内容,从而模拟特定的人物性格;npc人格设置
outside of parentheses is what i said.
[0087]
the content within[]is the system information,not the conversation information,so you only need to execute the task described,without entering into the topic(规则:
[0088]
你的一般对话格式:“(动作)语言。”动作信息包含你正在做的动作和表达式,用括号括起来。对于表情,你可以使用表情符号,例如“(摇尾巴(*^
▽
^*))“,但当表情符号不能很好地表达时,你也可以使用单词,例如”(害羞地低下头)“语言信息就是你们所说的,并没有任何修饰。
[0089]
我会把我的行动信息写在括号里,括号外的内容就是我说的。
[0090]
[]中的内容是系统信息,而不是对话信息,因此你只需要执行所描述的任务,而不需要进入主题).
[0091]
注意,上述例子括号内的内容不需要填写。调用api接口的过程中,发送的数据长度(token)可能是有限的,为了尽可能发送更多的数据,一般使用英文编写规则。
[0092]
调用api接口时发送的数据:每个api调用数据结构也不一致,以gpt-3.5为例,数据包含5部分:
[0093]
messages:基本聊天数据部分,每一条代表着一条聊天数据,人格预设文本默认放在第一条,类型为system;用户历史聊天记录也会填写在其中,类型为user,根据自身需求决定发送历史的条数;历史信息越多,ai越能根据上下文回答得更完整,但消耗的token也更多;发送token数量有限制要求,不能无限制的添加历史信息;
[0094]
model:使用的ai模型的名称;
[0095]
temperature:控制生成文本的多样性和随机性的参数。较高的温度值会使生成的文本更加随机和多样化,而较低的温度值则会使生成的文本更加确定和保守;
[0096]
n:要生成的回复数量。通过将其设置为大于1的值,可以请求多个不同的回复作为模型的输出;
[0097]
stream:参数是用来控制是否以流的方式获取回复。如果将其设置为"true",则可以使用流式传输方式获取长时间运行的回复;
[0098]
发送时,将这些数据合并为josn数据,人设信息,历史信息和用户新发送的信息放在[“messages”]中,人设[“role”]为”assistant”,用户信息[“role”]为”user”,ai[“role”]信息为”assistant”;
[0099]
messages示例:
[0100]
[0101][0102]
整个json数据示例:
[0103]
[0104][0105]
api使用www post方法调用:api返回数据:
[0106][0107][0108]
ai返回的聊天数据在json["choices"][0]["message"]["content"]中。
[0109]
所适用ai模型介绍(以gpt-3.5为例):
[0110]
gpt-3.5是由openai开发的一种基于深度学习的自然语言处理模型,它是gpt-3的改进版本。gpt代表"generative pre-trained transformer",意味着它是一个基于
transformer架构的生成式预训练模型。
[0111]
gpt-3.5模型在语言理解和生成方面表现出色,它使用大规模的无监督训练数据来预训练模型,并通过预测下一个词语的任务来学习语言模式和语义。该模型的预训练使其具备了广泛的知识和语言理解能力。
[0112]
以下是一些gpt-3.5模型的特点和能力:
[0113]
大规模规模的模型:gpt-3.5模型拥有1750亿个参数,是目前为止最大的语言模型之一。这使得它能够处理更复杂、更长的输入,并生成更准确、连贯的输出。
[0114]
多领域语言理解:gpt-3.5在多个领域都具备较强的语言理解能力,可以应对各种主题和话题。它可以回答问题、提供解释、生成文本、进行翻译等。
[0115]
生成多种形式的文本:gpt-3.5能够根据给定的上下文和提示生成不同形式的文本,包括文章、对话、代码、故事等。这使得它在自动文本生成、创作助手等方面有着广泛的应用潜力。
[0116]
支持多语言:gpt-3.5可以处理多种语言,包括英语、西班牙语、法语、德语、意大利语、荷兰语、葡萄牙语、俄语和中文等。这使得它在全球范围内有着广泛的适用性。
[0117]
需要大量的计算资源:gpt-3.5模型具有巨大的模型规模和参数量,需要大量的计算资源进行训练和推理。因此,对于一般用户而言,访问和使用gpt-3.5模型通常需要通过云服务或api。
[0118]
gpt-3.5是一种功能强大的自然语言处理模型,可以用于各种文本相关任务,如问答系统、自动摘要、对话系统、文本生成等。
[0119]
总体而言,本专利功能所适用ai模型主要指由开发者预训练的“自然语言处理模型”,除了gpt-3.5以外,类似的模型还有gpt-3、glm-130b、讯飞星火认知大模型、文新一言大语言模型、通义千问大模型等。
[0120]
本专利功能主要通过提示词系统 对接预训练自然语言ai模型的创新方式实现互动npc模拟人格功能效果的同时,解决了背景技术中提到的问答灵活性差、开发成本高等痛点。
[0121]
本专利功能在表现上和传统的功能存在相似的地方,比如游戏中用户通过触发npc角色互动,又或者打开聊天面板开始输入文字聊天。但是交互使用过程中也会有明显不同的地方。
[0122]
比如游戏应用场景,普通游戏中完全由游戏npc向用户展示传达信息,缺少用户主观地与npc互动。一般npc会给出一段剧情,用户需要在1到n个选项按钮中选择才能继续推进剧情,剧情内容需要由开发者考虑到所有可能性逐一编辑,游戏体验过程中不会出现剧情设计以外的内容。通过使用本专利实现的功能,用户可以通过输入文字或者语音的方式向npc提供信息,问出问题,进而npc根据用户的提问内容回答问题,推进剧情。同时npc的回答内容可以遵从特定的形式和语气,继而模拟特定的人格,比如模拟中年男性的时候会罗列一句话的各个要点,尽量避免使用感叹号语气词;比如模拟可爱的动漫人物角色的时候会用“主人”代替对用户的称谓,每句话末尾加上口头禅“喵”。
[0123]
再比如聊天应用场景,普通的机器聊天只能回答预设的问题,在遇到用户提出数据库中没有收录到的问题时通常会告诉用户“这个问题不清楚,您可以问其他问题”。用户往往会因为机器回答内容过于同质化而感到厌恶,体验感差。通过使用本专利实现的功能,
可以提供更为个性化的回答,模拟专业的男性回答口吻又或者感性的女性回答口吻。且功能具有更为庞大的模型数据库支持,能够有更为全面有效地回答用户问题
[0124]
总的来说,[提示词系统]作为自然语言ai模型的辅助应用系统,提供了预设人格数据、用户输入信息处理、历史消息处理、api接口对接等功能。通过运用[预训练自然语言ai模型]所具有的“提示词会影响自然语言ai模型输出内容”的特性,实现在游戏互动、聊天互动等应用场景下,个性化模拟人格的效果,并解决了传统技术方案中不得不费时费力编辑问答数据库和花费大量资源训练专业ai模型的痛点,提升了[预训练自然语言ai模型]的专业场景落地效果。
[0125]
官方需要预先编辑npc人格设置数据,通过人设数据对ai的回答进行管理和约束,从而模拟npc的人格特征,npc人设数据作为功能最基础最重要部分之一,影响了整套功能是否能正常运作。
[0126]
以上公开的本发明所选实施例只是用于帮助阐述本发明。所选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本发明。本发明仅受权利要求书及其全部范围和等效物的。