清华发表CharacterGLM,基于大模型的AI角色定制
“CharacterGLM: Customizing Chinese Conversational AI Characters with Large Language Models”
说起角色扮演,大家首先想到的实什么呢?动漫展上的cosplay小姐姐小哥哥,还是游戏中的NPC呢?在大模型出现以前,游戏中的NPC只能回答预先设置的问题。今日,清华大学提出了CharacterGLM,专门用于定制中文AI角色,旨在生成基于角色的对话(CharacterDial),旨在为聊天机器人系统实现角色定制,以满足人们固有的社交需求和情感需求。同时,也将会开源一个中文的角色扮演对话数据集CharacterDial,以促进该研究方向的进一步发展。
论文地址:https://arxiv.org/pdf/2311.16832.pdf
Github地址:https://github.com/thu-coai/CharacterGLM-6B
摘要
本文介绍了CharacterGLM模型,它是基于ChatGLM的一系列模型,模型大小从6B到66B参数不等。CharacterGLM旨在生成基于角色的对话(CharacterDial),以满足人们固有的社交需求和情感需求。该模型可以通过配置角色的属性和行为来定制各种AI角色或社交代理。该模型在人工评估中表现出了比GPT系列等主流闭源大型语言模型更好的一致性、人类般的特点和参与度。作者将发布6B版本的CharacterGLM和一部分训练数据,以促进角色对话生成方向的进一步研究发展。
简介
大型语言模型(LLMs)已经在研究和工业应用中发挥了重要作用。它们在意图理解、指令跟随和任务解决等方面展示了前所未有的能力。然而,现有的LLMs在实现社交目标方面仍然不足,例如与人建立长期社交关系或为人们提供有效的情感支持。为了满足社交需求,研究人员提出了基于角色的对话任务(CharacterDial),通过为用户创建和指定角色配置文件,实现与用户进行个性化对话。这些角色可以是虚构人物或现实人物,系统会根据角色的特点和价值观进行对话,以促进与用户的互动。
本文介绍了一种生成基于角色的对话的新任务——CharacterDial,并提出了一系列大型语言模型CharacterGLM,用于定制虚拟对话AI角色,以实现一致性、人性化和引人入胜的对话。作者从各种来源众包了一个大规模的中文CharacterDial语料库,并开发了CharacterGLM模型,其中包括6B到66B参数的不同版本。作者将6B版本发布给研究社区,其他版本可通过API获得。这项工作填补了角色对话系统研究和开发资源的空白。
CharacterGLM的设计原则
开发对话型AI角色的重点在于创造一个真实、可信和吸引人的虚拟对话伙伴,需要深入理解和模仿人类交流,特别是文本交互形式。人类特质对对话表达有影响,可以分为属性和行为两个主要类别。属性主要反映在回应内容中,而行为则侧重于语气和风格。此外,我们从三个方面评估角色对话的有效性:对话表达与人类特质的一致性(一致性)、对话风格在反映人类之间交互方面的自然程度(人类相似性)以及对话能否吸引和引导用户(参与度)。
AI角色的核心:属性和行为
1)属性。人类是多面向的存在,具有各种属性,包括身份、兴趣、观点、经历、成就、社交关系和其他技能等。这些属性对于将个体复制为对话AI角色至关重要,可以更准确地模拟人类管理交流的方式。在CharacterGLM中,我们考虑了七个主要属性类别。
2)行为。对话AI角色的行为包括语言特征、情感表达和互动模式等动态元素,这些元素对于塑造真实对话环境至关重要。人类的语言表达不仅仅是传递信息,还是一种受社会和心理状态影响的行为形式。将这些方面纳入对话AI角色的行为中,可以实现更自然和人性化的对话流程,这对于保持用户与AI角色的交互兴趣至关重要。在CharacterGLM中,我们考虑了语言特征,包括人物的口头禅、方言、文体特征、常用词汇和句子等。此外,我们还考虑个性作为塑造回应的重要因素,如温和和冷漠。
AI角色的特征:一致性、人类相似性和粘性
1)一致性。对话AI角色需要展现一致的属性和行为,以增强可信度和信任感。保持一致性对于用户的长期满意度和社交连接至关重要。
2)人类化。赋予对话AI角色人类化的特征,使得交互更加自然,类似于人与人之间的交流。人类化可以提高接受度和舒适度,并且能够引发用户的社交反应。
3)参与度。用户与对话AI角色之间的兴趣、互动和情感连接的程度。参与度直接影响用户体验和对话系统的整体效果。参与度高的角色更容易引发用户的共情和连接,从而促进长期连接和积极的用户体验。
CharacterGLM实现
基于角色的对话集
我们考虑了四种角色类别:名人、日常生活、游戏和视频以及虚拟爱情。我们通过三种方式收集数据:
1)人类角色扮演。通过人类角色扮演和众包工人的互动来收集数据。其中一个工人扮演“角色”,另一个工人扮演“玩家”,他们通过对话交流。作者还发布了一部分数据,并提供了统计信息。
2)基于大语言模型的数据合成。为了扩大数据的规模和多样性,我们采用了few-shot的方法,促使GPT-4生成合成数据。我们的流水线包括“角色配置文件生成”,“玩家配置文件生成”和“对话生成”,以准确控制GPT-4的输出符合我们的要求。
3)文献资源提取。我们采用人工抽取的方式,从脚本和小说等来源中获取双方之间的对话。我们的众包工作者也会总结双方的性格特征。
训练LLM用于基于角色的对话生成的
1)角色Prompt设计。通过众包工人将角色描述转化为自然语言描述,用于模型训练的角色提示。
2)有监督微调。使用ChatGLM作为基础模型进行监督微调,训练数据随着角色提示的增加而线性扩展。
3)自我完善。采用LaMDA的自我完善方法,收集人类-原型交互数据,并将其用于监督微调,实现模型的持续自我完善。
实验
逐点评价
实验设置
本文评估了10个主流的中文语言模型,使用三个主要方面评估了CharacterDial模型的性能:一致性、人类相似度和参与度。此外,还评估了模型的质量、安全性和正确性,并引入了“综合”指标来衡量响应的综合质量。通过招募10个注释者,每个注释者与11个模型的两个角色进行交互,评估模型的性能。
表现分析CharacterGLM-66B是一个能够与用户进行自然、人类般的对话的AI角色,其表现在一致性、人类般、参与度等方面均优于大多数基线模型。在总体评估中,CharacterGLM-66B的表现略优于GPT-4,其能够准确地体现自定义角色的特征,并能够持续地进行有趣的对话。此外,CharacterGLM-66B在质量、安全性和正确性等方面的表现也非常出色。总之,CharacterGLM-66B是最接近AI角色理想的模型之一。
CharacterGLM是一个自定义AI角色,其表现出了与自定义AI角色相一致的属性和行为。评估一致性时,需要考虑属性一致性和行为一致性两个方面。CharacterGLM-66B模型在属性一致性方面表现不佳,但在行为一致性方面表现良好,能够更自然地表达自定义角色的语言特征,这对于用户的好奇心和参与度至关重要。
细粒度误差分析本文介绍了一种用于评估对话生成模型性能的方法,通过对每个回合进行细粒度注释,包括六个方面:角色一致性、矛盾、重复、质量、信息量和主动性。通过计算每个模型在这些方面的得分比例,得出了每个模型的总体得分。其中,CharacterGLM-66B表现最佳,尤其在信息量和重复方面表现出色。此外,该模型还展现了推动情节发展的能力,对于吸引用户和维持对话的兴趣至关重要。
成对评价
实验设置
本文对比了CharacterGLM模型与MiniMax模型、GPT-3.5和GPT-4模型在24个角色和三个场景下的表现。通过10个评估员的评估,得出了不同模型在不同角色和场景下的胜负比例。结果详见表格7和表格8。
表现分析
CharacterGLM-66B在四个角色类别中表现优于基线模型,尤其在“名人”类别中表现最好。与MiniMax和GPT-3.5相比,CharacterGLM-66B在这个类别中分别具有14%和4%的优势。此外,在“虚拟爱情”类别中,CharacterGLM-66B比GPT-3.5和GPT-4表现更好,分别具有8%和14%的优势。然而,在“日常生活”类别中,CharacterGLM-66B略逊于MiniMax和GPT-4。总体而言,CharacterGLM-66B在情感交流和个性化交互方面表现出色,但在复杂的日常生活对话中可能存在挑战。
CharacterGLM-66B在三个对话主题上表现优异,尤其在面试场景中表现出色。CharacterGLM-66B在长期交互方面表现强劲,能够维持连贯和相关的对话。长度更长的回复更受欢迎,但CharacterGLM-66B在生成短回复时仍然表现出色。
总结和未来工作
本文介绍了CharacterGLM模型家族,包括6B到66B参数的不同规模模型。其中,CharacterGLM-66B在多个场景下表现出与某些专有模型相当的竞争力。作者还提出了未来工作的几个挑战,包括AI角色的长期记忆和成长、AI角色的自我意识、AI角色之间的社交互动以及AI角色的内在认知过程。作者还公开了CharacterGLM-6B模型和部分训练数据,以促进基于字符的对话系统的研究。