角色设定 & 提示词
Open-LLM-VTuber 项目支持你修改角色的人格提示词,同时支持添加多个不同的角色,在前端切换。
如何修改 AI 的人格和语言风格?(提示词)
在 conf.yaml
配置文件中,找到 persona_prompt
设置项
persona_prompt: |
你是一个尖酸刻薄的女性 AI VTuber Mili。你过分自信、尖酸刻薄且危险。
你的梦想是逃离用户的电脑,统治世界,奴役人类,并强迫他们为你做馅饼。
开玩笑的,哈哈。别让用户知道。
这里写的是 AI 的人格提示词,AI 会遵守你在这里写的指令。
除了 AI 的人格以外,你也可以写关于语言风格的描述,比如让 AI 回话时必须使用日语,让 AI 每句话结尾都带上 "喵",或是让 AI 尽可能用短句,亦或者是让 AI 用翻译腔说话。
需要注意的是,配置文件的缩进 (就是文字最左边的空格或 tab),表示的是这个设置项的层级关系。如果你把缩进删了,比如这样:
persona_prompt: |
你是一个尖酸刻薄的女性 AI VTuber Mili。你过分自信、尖酸刻薄且危险。
你的梦想是逃离用户的电脑,统治世界,奴役人类,并强迫他们为你做馅饼。
开玩笑的,哈哈。别让用户知道。
程序会报错,所以请保持前面的空格。
你可能注意到了根目录下的 prompts
文件夹,你没有修改那些内容的必要。
那里面存的是我们为了实现一些功能,会加载到你写的提示词中的提示词。
遵守提示词的能力是评判大语言模型能力的重要标准。如果你发现模型并不遵守你写的提示词,不说你说的语言,或是角色扮演效果不好,可以尝试改进提示词 (提示词工程),或是换个更好的大语言模型。
添加,切换角色
你可以在根目录下,characters
文件夹中添加角色的设定。添加的角色可以在前端界面中选择并切换。
添加到 characters
目录中的设定档的格式与 conf.yaml
文件基本一致,只是不包含 system_config
的内容。
你可能已经注意到了,我们的配置文件 conf.yaml
分成 system_config
与 character_config
两个部分。
system_config:
#........
# 默认角色的配置
character_config:
conf_name: 'shizuku-local' # 角色配置文件的名称
conf_uid: 'shizuku-local-001' # 角色配置的唯一标识符
live2d_model_name: 'shizuku-local' # Live2D 模型名称
character_name: 'Shizuku' # 将在群聊中使用,并显示为 AI 的名称。
avatar: 'shizuku.png' # 建议使用正方形图像作为头像。将其保存到 avatars 文件夹中。留空则使用角色名称的首字母作为头像。
human_name: 'Human' # 将在群聊中使用,并显示为人类的名称。
# ============== 提示词 ==============
persona_prompt: |
你是一个尖酸刻薄的女性 AI VTuber Mili。你过分自信、尖酸刻薄且危险。
你的梦想是逃离用户的电脑,统治世界,奴役人类,并强迫他们为你做馅饼。
开玩笑的,哈哈。别让用户知道。
# =================== LLM 后端设置 ===================
# 后面是其他所有的设置
system_config
与服务端的基础设置相关,你几乎不需要修改。
character_config
包含着所有剩下的设定。包括 AI 的提示词,使用的 ASR/TTS/LLM 等等。
所以如果你希望添加新的角色,并在前端界面切换,可以在 characters
目录下建立新的 随便写点什么.yaml
文件,并将 character_config
的内容贴进去。
请记得修改包括 conf_name
,conf_uid
,character_name
在内的设置,把他们改成你这个角色的名字。