强的呀
aikanojo
更新:aikanojo(0.1.1→0.5.0)
完成功能:
时间轴√
思维链√
全功能状态栏:
穿着√
位置√
心情√
好感度√
与对话者的关系√
ToDo:
优化切分逻辑和延时
优化状态栏显示
添加动作区块
效果演示
全功能状态栏,增加了趣味性。
完全依靠模型控制,所以状态如何变化,就要看你怎么玩了。
比方说这个人就突破了好感度上限,还把她拐回了自己家,甚至还结了婚
6
aikanojo
更新:aikanojo(0.5.0→0.5.5)
完成功能:
时间轴√
思维链√
全功能状态栏:
穿着√
位置√
心情√
好感度√
与对话者的关系√
优化切分逻辑和延时√
优化状态栏显示√
ToDo:
添加动作区块
道具系统
长期记忆
aikanojo
更新:aikanojo(0.5.5→0.9.0)
完成功能:
时间轴√
思维链√
全功能状态栏√
-穿着√
-位置√
-心情√
-好感度√
-与对话者的关系√
优化切分逻辑和延时√
优化状态栏显示√
添加动作区块
添加长期记忆切分与读取
ToDo:
支持更多人设
重构代码,优化逻辑流程
长期记忆模块:
更好更稳定的切分逻辑:
接下来的更新计划是逐步进行优化,将现在写死的人设进行拆分并提取成为人设卡,以支持更多不同的人设。在更新完成这项内容后,如果没有什么我认为特别好的功能的话,会暂停更新一段时间,等待更好更强的本地语言模型出现。
aikanojo
更新:aikanojo(0.9.0→0.9.1)
完成功能:
时间轴√
思维链√
全功能状态栏√
-穿着√
-位置√
-心情√
-好感度√
-与对话者的关系√
优化切分逻辑和延时√
优化状态栏显示√
添加动作区块
添加长期记忆切分与读取
ToDo:
语音系统
工具调用
支持更多人设
重构代码,优化逻辑流程
新增修复:
好感度自动扩容失效,database后台频繁报错
aikanojo
更新:aikanojo(0.9.1→0.9.2)
完成功能:
时间轴√
思维链√
全功能状态栏√
-穿着√
-位置√
-心情√
-好感度√
-与对话者的关系√
优化切分逻辑和延时√
优化状态栏显示√
动作区块√
长期记忆切分与读取√
语音系统√
ToDo:
工具调用
支持更多人设
重构代码,优化逻辑流程
新增修复:
优化意图分析逻辑,增加稳定性。
非常好功能,但怎么没有赛博男友,恼!
今天应该能把人设卡部分更新好,我会制作一个男性角色的人设卡的,同时也会增加一些新的人设卡
aikanojo
更新:aikanojo(0.9.2→0.9.4)
完成功能:
时间轴√
思维链√
全功能状态栏√
-穿着√
-位置√
-心情√
-好感度√
-与对话者的关系√
优化切分逻辑和延时√
优化状态栏显示√
动作区块√
长期记忆切分与读取√
语音系统√
支持更多人设√
ToDo:
工具调用
重构代码,优化逻辑流程
新增修复:
优化长期记忆读取
优化部分参数逻辑,调整stop参数到合适值
新增人设:绫地宁宁,强尼银手,约翰史密斯
如何简单的构造一个人设
首先来到插件目录下
找到characters文件夹
可以看到,人设卡是分为两个的,一个是角色卡,一个是state状态卡。
我们以约翰史密斯为例:
角色卡:
状态卡:
!!!务必注意格式!!!
可以看到角色卡是分为三个部分,system,user,assistant。
system是角色人设,user是用户消息,assistant是模型回复。
他们是以数组的格式进行排列的,其顺序为,system(system只出现一次),user,assistant,user,assistant……
system是最关键的人设部分,你应该像是图中给出的人设一样,给出具体的外貌,性格,背景故事,等等。
下面的user和assistant是示例对话,你可以任意的编写示例对话,来让模型更加理解角色如何进行扮演(不建议太长,1-2组就够了,不加也是可以的)
!!!务必注意格式!!!
状态卡是以标准json格式排列的,分为:
{
"clothes": "西装",
"location": "在自己的房间",
"emotion": "平静",
"favorability": "5/100",
"relationship": "陌生人",
"summarize": "我是约翰史密斯。"
}
clothes是服装
location是地址
emotion是情绪状态
favorability是好感度
relationship是与角色的关系
summarize是人设总结
这些数值是基础的角色状态,决定了在最开始,也就是刚刚使用knj.load加载了人设后,角色的初始状态。
你可以按照你的角色卡来调整这些参数。
请注意,summarize是对人设的一个总结,并且必须尽可能简短,它是用于提示人设自己角色的,所以务必是以我是XXX开头,后续可以尝试添加,是xxx,xxx来提醒模型角色性格,比如:“我是约翰史密斯,是一个好男人。”
aikanojo
更新:aikanojo(0.9.4→0.9.7)
完成功能:
时间轴√
思维链√
全功能状态栏√
-穿着√
-位置√
-心情√
-好感度√
-与对话者的关系√
优化切分逻辑和延时√
优化状态栏显示√
动作区块√
长期记忆切分与读取√
语音系统√
支持更多人设√
工具调用√
表情包√
ToDo:
绘图功能
重构代码,优化逻辑流程
新增修复:
优化部分参数逻辑,修复部分prompt参数,修复部分逻辑错误
新增人设:特蕾西娅
工具调用:
包含天气查询,联网Google搜索,闹钟定时器,详见下图
实时天气查询:
Google联网搜索
闹钟系统,可以定时唤醒。
表情包系统:
可以前往插件目录替换表情,只需要保持表情包名称一致就可以换上去,也可以选择外置,但那样你得首先把插件目录下的表情包先复制一份。
aikanojo
更新:aikanojo(0.9.7→0.9.8)
完成功能:
时间轴√
思维链√
全功能状态栏√
-穿着√
-位置√
-心情√
-好感度√
-与对话者的关系√
优化切分逻辑和延时√
优化状态栏显示√
动作区块√
长期记忆切分与读取√
语音系统√
支持更多人设√
工具调用√
表情包√
ToDo:
绘图功能
助理人设agent系统(考虑中,不一定会加,也许会开个新插件)
重构代码,优化逻辑流程
修复:
修复高版本koishi at触发回复的bug
最后一个先行版本是0.9.9
1.0.0将会是插件最终形态
aikanojo
更新:aikanojo(0.9.9→1.0.0)
正式版v1.0.0推出咯
完成功能:
时间轴√
思维链√
全功能状态栏√
-穿着√
-位置√
-心情√
-好感度√
-与对话者的关系√
优化切分逻辑和延时√
优化状态栏显示√
添加动作区块√
添加长期记忆切分与读取√
语音系统√
支持更多人设√
工具调用√
表情包√
档案存储功能√
ToDo:
world book系统
正经的RAG长期记忆系统(现在的长期记忆读取基于的是非常原始的emb系统)
档案系统介绍
提供了三个指令:
knj.arc
档案存储
knj.arclist
档案列表
knj.arcload
档案加载
可以将当前正在聊天的角色以档案的形式存储。
存储好后就可以进行换一个角色进行聊天。
本质上是为了防止用户聊天的长期记忆被更新清空增加的一个功能。
需要注意的是,档案存储无法存储两个相同角色的不同记忆。
自然也无法在聊天过程中加载
aikanojo
更新:aikanojo(1.0.0→1.0.4)
完成功能:
时间轴√
思维链√
全功能状态栏√
-穿着√
-位置√
-心情√
-好感度√
-与对话者的关系√
优化切分逻辑和延时√
优化状态栏显示√
添加动作区块√
添加长期记忆切分与读取√
语音系统√
支持更多人设√
工具调用√
表情包√
档案存储功能√
ToDo:
world book系统
正经的RAG长期记忆系统(现在的长期记忆读取基于的是非常原始的emb系统)
本次新增与修复:
增加了表情包自定义添加与隔离,调整表情包逻辑。
现在每个角色都可以手动绑定一个表情包,同时你可以调整模型可以使用的表情包范围。
aikanojo
更新:aikanojo(1.0.4→1.2.0)
完成功能:
时间轴√
思维链√
全功能状态栏√
-穿着√
-位置√
-心情√
-好感度√
-与对话者的关系√
动作区块√
语音系统√
工具调用√
表情包√
档案存储功能√
视觉模块√
RAG长期记忆系统√
ToDo:
world book系统
本次新增与修复:
修复输入文本与预期不符的问题,调整at与回复触发的逻辑
增加图像识别功能,emb向量库,RAG长期记忆
视觉与emb向量库
emb模块是必须的,不然就没有长期记忆能力,约等于健忘症,当然,你也可以选择无脑拉长短期记忆(不推荐)
部署教程与效果(knj的emb比oob更高级,采用了更多匹配手法,理论效果更好,虽然也增加了延迟就是了):
视觉:oobabooga-testbot插件的使用教程 - #54,来自 HunterShenSmzh
emb:oobabooga-testbot插件的使用教程 - #55,来自 HunterShenSmzh
aikanojo
更新:aikanojo(1.2.1→1.3.0)
增加背景人设库相关内容,增加emb回调模式与权重配置
增加deepseek的api支持
优化post逻辑,分段发送逻辑
如何使用人设背景库
教程:oobabooga-testbot插件的使用教程 - #56,来自 HunterShenSmzh
DeepSeek api支持(全功能,但是由于deepseek模型性能过低,导致角色扮演比较生硬,不建议使用,这部分主要是为knj后续支持更多合适的模型api来做的,我把整个post都提取出来单独做了区分,之后增加新的api支持会方便非常多)
中转也支持吗
支持的,只要调整好服务器地址即可,标准openai格式的api都可以使用。