AI赋能游戏:问答设备人的设计与实现
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">AI发展快速,最适合的应用场景,应该是游戏了。光是NPC的问答、选项,就有<span style="color: black;">非常多</span><span style="color: black;">能够</span>操作的空间。本文从游戏行业出发,分析了问答<span style="color: black;">设备</span>人的实现原理和语料的经验,供<span style="color: black;">大众</span>参考。</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;"><img src="https://q8.itc.cn/q_70/images03/20240626/aee8489e716246ce96276913d06d2d22.jpeg" style="width: 50%; margin-bottom: 20px;"></p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">随着AI这两年的快速发展,游戏厂商跃跃欲试<span style="color: black;">怎样</span>让AI融入游戏。</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">半年前,<span style="color: black;">咱们</span><span style="color: black;">亦</span>在游戏内嵌社区中,上线了一款以大语言模型为核心打造的问答机器人,旨在满足玩家快速获取攻略的<span style="color: black;">需要</span>。</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">这篇<span style="color: black;">文案</span>,将以游戏行业<span style="color: black;">制品</span>经理的<span style="color: black;">方向</span>,分享这款问答<span style="color: black;">设备</span>人的实现原理,及其语料的制作经验。</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;"><span style="color: black;">1、</span><span style="color: black;">为何</span>需要问答<span style="color: black;">设备</span>人 </p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">问答<span style="color: black;">设备</span>人所落地的游戏,是一款三国策略类游戏。游戏中玩家被随机分到魏蜀吴中的一个国家,并<span style="color: black;">经过</span>一系列玩法攻城略地,扩展疆土。玩家<span style="color: black;">能够</span>招募各色三国英雄,并给英雄搭配<span style="color: black;">区别</span>装备、学习<span style="color: black;">区别</span>技能以<span style="color: black;">提高</span>战力,并<span style="color: black;">能够</span>组建<span style="color: black;">区别</span>的英雄阵容去挑战别的玩家以及掠夺别国的城池。<span style="color: black;">因此呢</span>,游戏玩法的自由度给予了玩家<span style="color: black;">非常多</span>策略探索的可能。</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">起初,<span style="color: black;">咱们</span>只是搭建了一个问答社区,供用户<span style="color: black;">发布</span>问题与分享攻略心得。随着玩家人数<span style="color: black;">增多</span>及赛季的深入,玩家对攻略的<span style="color: black;">需要</span>日益<span style="color: black;">显著</span>。官方发布的攻略,不<span style="color: black;">必定</span>能满足玩家快速获取攻略的<span style="color: black;">需要</span>。有时候玩家只想找一个答案,却要看完一整篇攻略。<span style="color: black;">因此呢</span>,<span style="color: black;">咱们</span>想<span style="color: black;">经过</span>智能问答<span style="color: black;">设备</span>人的形式,满足玩家快问快答的痛点,以<span style="color: black;">提高</span>玩家的游戏体验。</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;"><span style="color: black;">咱们</span>的智能<span style="color: black;">设备</span>人名为“诸葛先生”,以H5的形式开展对话。对用户<span style="color: black;">来讲</span><span style="color: black;">无</span><span style="color: black;">繁杂</span>的功能,只要提问,<span style="color: black;">设备</span>人就会回答。</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">(页面样式<span style="color: black;">这儿</span>用原型图代替了哈)</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;"><img src="https://q4.itc.cn/q_70/images03/20240626/f1e64d146bd04eeab6f6b302c2bc2c3b.png" style="width: 50%; margin-bottom: 20px;"></p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;"><span style="color: black;">2、</span><span style="color: black;">设备</span>人技术原理:大语言模型RAG的应用</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">在介绍问答<span style="color: black;">设备</span>人的原理前,先说一个前提,<span style="color: black;">便是</span><span style="color: black;">咱们</span>的大语言模型的语料库中,有一种语料是QA形式的,即一问(question)一答(answer),与<span style="color: black;">通常</span>的段落形<span style="color: black;">文案</span>有所区别。关于语料库的介绍,下边章节会继续细说。<span style="color: black;">这儿</span>将继续讲<span style="color: black;">设备</span>人的运行原理。</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">如下图,在用户提出问题后,<span style="color: black;">咱们</span>的<span style="color: black;">设备</span>人分有两个答案输出<span style="color: black;">规律</span>。<span style="color: black;">首要</span>,用户提问的问题都会先进行内容检索,<span style="color: black;">经过</span>检索模型检索出与用户提问<span style="color: black;">关联</span>的内容。当检索到用户提问有匹配的QA时(即玩家提问匹配到语料库中预设的Question),则程序会直接输出Answer;另一种<span style="color: black;">规律</span>是,当检索模型<span style="color: black;">无</span>检索到匹配的QA,那程序就会继续检索其他内容(如<span style="color: black;">文案</span>段落),并产出一条带内容的提示词(prompt)输入到大语言模型中,由大语言模型生成答案。</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">举个例子,假设用户提问了“赵云怎么培养”,则程序会<span style="color: black;">经过</span>检索模型,先检索<span style="color: black;">是不是</span>存在与“赵云怎么培养”接近的question,存在则输出对应answer,否则找出“赵云培养”<span style="color: black;">关联</span>的内容。<span style="color: black;">咱们</span>比拟程序找到的相关内容为AABB,此时给到大语言模型的提示词(prompt)<span style="color: black;">便是</span>:“AABB,请<span style="color: black;">按照</span><span style="color: black;">以上</span>内容回答:赵云怎么培养。”大语言模型则<span style="color: black;">按照</span><span style="color: black;">以上</span>提示词生成答案。</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;"><img src="https://q7.itc.cn/q_70/images03/20240626/13b35f9a84454433aa796738b7712d3b.png" style="width: 50%; margin-bottom: 20px;"></p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;"><span style="color: black;">为何</span><span style="color: black;">咱们</span>不直接<span style="color: black;">运用</span>大语言模型,而是前置一步加入检索模型呢?</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;"><span style="color: black;">咱们</span><span style="color: black;">晓得</span>,大语言模型基于神经网络模型,<span style="color: black;">运用</span><span style="color: black;">海量</span>的语料库进行训练,<span style="color: black;">例如</span>互联网上的<span style="color: black;">海量</span>文本数据。<span style="color: black;">因此呢</span>,大语言模型能<span style="color: black;">有效</span>准确地回答通用知识类的问题。而游戏属于专有<span style="color: black;">行业</span>,<span style="color: black;">怎样</span>让大语言模型直接回答专有<span style="color: black;">行业</span>知识,则它给出的答案必定会差强人意(答非所问或是回答不出)。<span style="color: black;">因此呢</span><span style="color: black;">咱们</span>会先前置一步进行内容搜索,<span style="color: black;">经过</span>内容来约束大语言模型的生成。<span style="color: black;">这般</span>的技术<span style="color: black;">规律</span><span style="color: black;">亦</span><span style="color: black;">叫作</span>为RAG(Retrieval-Augmented Generation,检索<span style="color: black;">加强</span>生成)。</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">RAG其实<span style="color: black;">便是</span>对大语言模型的检索能力及联想能力的外扩,让大语言模型在可控范围内生成更准确高精的回答,尤其适用于专有<span style="color: black;">行业</span>的问答工具。RAG的原理如下图:</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;"><span style="color: black;">照片</span>源自《Chatbot从0到1》(第2版),作者李佳芮、李卓桓</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">RAG 系统的起点<span style="color: black;">通常</span>是一个文本文档的语料库,简单看起来是<span style="color: black;">这般</span>的: 把文本分割成块,<span style="color: black;">而后</span>把这些分块嵌入到向量与transformer编码器模型,把所有这些向量<span style="color: black;">创立</span>索引,从而<span style="color: black;">查找</span>出与用户提问<span style="color: black;">关联</span>的上下文,最后创建一个带上下文的大语言模型提示语,让模型回答用户的<span style="color: black;">查找</span>。</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;"><span style="color: black;">咱们</span><span style="color: black;">能够</span>对比<span style="color: black;">有没有</span>检索模型对回答的差别:</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">大语言模型<span style="color: black;">一样</span>是ChatGPT3.5,提问“赵云要怎么培养”,单纯<span style="color: black;">运用</span>大语言模型,而<span style="color: black;">无</span>检索模型的约束时,回答的内容就和游戏不沾边(左图)。而<span style="color: black;">运用</span>了检索模型,让大语言模型的回答就完全贴合游戏了(右图)。</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;"><span style="color: black;">3、</span>问答质量的打磨调优 </p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">为了<span style="color: black;">提高</span><span style="color: black;">设备</span>人的回答准确率。<span style="color: black;">咱们</span>的调优有几个方面:</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;"><strong style="color: blue;"><span style="color: black;">加强</span>对用户提问的理解</strong></p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;"><span style="color: black;">针对</span>用户的提问,除了分词切割,<span style="color: black;">咱们</span>还有错字甄别、同义词判定等<span style="color: black;">规律</span>,<span style="color: black;">期盼</span>程序能<span style="color: black;">尽可能</span>清晰理解用户的意向。</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;"><strong style="color: blue;"><span style="color: black;">加强</span>检索模型的召回质量</strong></p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">在众多语料中<span style="color: black;">怎样</span>找到最匹配玩家的内容呢?<span style="color: black;">咱们</span>的检索算法,会在对用户提问进行分词后,会先用BM25算法<span style="color: black;">按照</span>关键词对文档进行<span style="color: black;">第1</span>次评分,<span style="color: black;">而后</span><span style="color: black;">按照</span>评分阈值提取top-k文档进行第二次评分,还有问题和文档稠密向量的<span style="color: black;">关联</span>性评分等。每一步都可能影响检索的内容及LLM的回答结果。</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;"><strong style="color: blue;"><span style="color: black;">选取</span>更智能的语言模型</strong></p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;"><span style="color: black;">设备</span>人上线初期,<span style="color: black;">运用</span>的模型是国内的ChatGLM2.0。但<span style="color: black;">经过</span>拉取用户的<span style="color: black;">实质</span>问答数据,<span style="color: black;">咱们</span><span style="color: black;">发掘</span>答案质量并<span style="color: black;">不睬</span>想,答案中存在较多答非所问、胡编乱造的问题。并且在多次调优检索模型后(<span style="color: black;">加强</span>召回文档的<span style="color: black;">关联</span>性),答案质量仍然<span style="color: black;">不良</span>。</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">于是<span style="color: black;">咱们</span><span style="color: black;">思虑</span>更换大语言模型。<span style="color: black;">咱们</span>找来了两款智能体做对比,分别是ChatGPT3.5及Google旗下的Gemma。三者对比后<span style="color: black;">咱们</span><span style="color: black;">发掘</span>,ChatGLM2.0的幻觉问题较其他两个模型会更为<span style="color: black;">显著</span>。意思<span style="color: black;">便是</span>,<span style="color: black;">倘若</span>检索模型召回的文档中不存在用户提问的<span style="color: black;">关联</span>内容(<span style="color: black;">关联</span>性低),则ChatGLM2.0会一本正经胡说八道。即便是检索模型召回的文档中有用户所需的内容(<span style="color: black;">关联</span>性高),ChatGLM2.0<span style="color: black;">亦</span>可能会回答失准。</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">最后<span style="color: black;">咱们</span><span style="color: black;">选取</span>了ChatGPT3.5。对比下来,ChatGPT3.5在对话生成的流畅度、连贯性以及上下文理解方面的表现都更出色,能够生成更加<span style="color: black;">精细</span>和自然的回答,<span style="color: black;">针对</span><span style="color: black;">没法</span>回答的问题,<span style="color: black;">亦</span>会更直接地<span style="color: black;">通知</span>用户它不清楚。</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;"><span style="color: black;">4、</span>语料的<span style="color: black;">形成</span> </p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;"><span style="color: black;">倘若</span>说模型是问答<span style="color: black;">设备</span>人的肉躯,那语料<span style="color: black;">便是</span>血液。语料足够多,覆盖面足够广,问答<span style="color: black;">设备</span>人才会更具活力。</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;"><span style="color: black;">咱们</span>的语料有几个部分<span style="color: black;">形成</span>:</p>游戏内所有呈现给玩家的文案,<span style="color: black;">包含</span>道具名<span style="color: black;">叫作</span>、说明及玩法简介。这类内容属于短内容,<span style="color: black;">仅有</span>单个句子或单一段落。
发布于官网、论坛的游戏攻略。这类内容属于长内容,由多个段落<span style="color: black;">形成</span>。
QA问答对。一问一答的固定内容。<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">如前所述,<span style="color: black;">咱们</span><span style="color: black;">设备</span>人分了两个答案输出<span style="color: black;">规律</span>,<span style="color: black;">倘若</span>检索模型命中QA,则会更快给玩家产出答案。基于此,<span style="color: black;">咱们</span>加大了QA问答对的产量,以<span style="color: black;">提高</span>问答效率。QA<span style="color: black;">源自</span>于玩家的真实提问,<span style="color: black;">咱们</span>提取了高频问题,以及部分刁钻的提问,做<span style="color: black;">成为了</span>问答对。</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">制作问答对比较费人工,<span style="color: black;">由于</span>answer都是人工写的,有时候还要玩一下游戏验证写的answer<span style="color: black;">是不是</span>正确。为了节约工时,<span style="color: black;">咱们</span>又借用了AI工具<span style="color: black;">帮助</span><span style="color: black;">咱们</span>生产问答对。<span style="color: black;">这儿</span>AI工具的<span style="color: black;">功效</span>不是帮<span style="color: black;">咱们</span>快速生成答案,而是提前生成玩家可能问到的问题并产出答案。<span style="color: black;">咱们</span>给AI喂入<span style="color: black;">以上</span>语料中的2-攻略长内容,并让AI<span style="color: black;">按照</span><span style="color: black;">文案</span>内容中生成QA。<span style="color: black;">不外</span>,虽然生产速度<span style="color: black;">加强</span>了,但内容的实用性却并不高。AI生成的问题并不像玩家的提问,更像是老师出的考题,需要再二次修改问答对的内容。<span style="color: black;">因此呢</span>,<span style="color: black;">日前</span>的问答对<span style="color: black;">守护</span>还是集中在人工生产。</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;"><img src="https://q6.itc.cn/q_70/images03/20240626/5d5f4c7dcd8341d8ad460dcda6268167.png" style="width: 50%; margin-bottom: 20px;"></p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;"><span style="color: black;">5、</span>问答<span style="color: black;">设备</span>人的<span style="color: black;">将来</span>创想 </p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;"><span style="color: black;">咱们</span>的问答<span style="color: black;">设备</span>人还有<span style="color: black;">非常多</span>优化空间。<span style="color: black;">日前</span>,虽然它在<span style="color: black;">提高</span>玩家体验方面<span style="color: black;">已然</span>取得<span style="color: black;">必定</span>成效,但仍存在<span style="color: black;">有些</span>需要改进的<span style="color: black;">地区</span>。例如尚未<span style="color: black;">研发</span>连续对话,玩家无法追问,<span style="color: black;">导致</span>对话交互<span style="color: black;">不足</span>自然流畅。<span style="color: black;">另外</span>,随着游戏内容的<span style="color: black;">持续</span>更新,<span style="color: black;">咱们</span>的语料库<span style="color: black;">亦</span>需要<span style="color: black;">连续</span>地<span style="color: black;">守护</span>和扩充,这<span style="color: black;">亦</span>是需要<span style="color: black;">持续</span>消耗人力的工作。</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;"><span style="color: black;">不外</span>我相信,问答<span style="color: black;">设备</span>人将在<span style="color: black;">将来</span>的游戏世界中<span style="color: black;">装扮</span>更加重要的角色,为玩家带来更加精彩和<span style="color: black;">方便</span>的游戏体验。</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">欢迎在评论区<span style="color: black;">一块</span>探讨问答<span style="color: black;">设备</span>人的<span style="color: black;">更加多</span>可能~</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">作者:杨桃,游戏行业B端<span style="color: black;">制品</span>经理,爱用文字记录观察及想法。</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">本文由 @杨桃 原创发布于人人都是<span style="color: black;">制品</span>经理,未经许可,禁止转载。</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">题图来自 Unsplash,基于CC0协议。<a style="color: black;"><span style="color: black;">返回<span style="color: black;">外链论坛: http://www.fok120.com</span>,查看<span style="color: black;">更加多</span></span></a></p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;"><span style="color: black;">责任编辑:网友投稿</span></p>
你的留言真是温暖如春,让我感受到了无尽的支持与鼓励。
页:
[1]