CrabNote螃蟹笔记

人人都能做自己的微信虚拟人——luoyun_project开源微信虚拟人框架

人人都能做自己的微信虚拟人——luoyun_project开源微信虚拟人框架

人人都能做自己的微信虚拟人——luoyun project开源微信虚拟人框架 人人都能做自己的微信虚拟人——luoyun project开源微信虚拟人框架 Modified July 8, 2025 No access clip 00:00 那么目前呢,其实是没有做实时搜索的,它这个搜索呢,实际上是当天只会搜索一次。 日常与朋友圈 朋友圈生成 接下来呢,就是大家比较喜欢的功能——朋友圈。 每天角色都会进行一个日常生活的一个生成。大家可以理解成,大概在24个小时里面会有10个到20个左右的一个活动。在不同的活动下,他可能处于一个繁忙、空闲或者是睡觉的状态。 然后框架会进行这个朋友圈的制作。我们可以看到,朋友圈的生成内容,会被发给管理员。然后管理员可以决定这个图片,是不是要保留;以及手动发把这个朋友圈给发动发送出去。 日常与朋友圈 朋友圈展示 那么我们来看看实际的朋友圈的效果展示。 这张图片就可以呃比较漂亮的展示了百叶窗效果,证明我们现在所选用的这个图像模型其实还是不错的。 右边的这个朋友圈的文案,其实比较意思:“老板说这个毛巾是定制的,有点东西”。 技术实现 记忆体 接下来稍微解释一下目前采用的记忆体。整体来说,现在的目前这个框架里面的这个记忆体的召回的表现呢,其实是我自己觉得是不错的。基本上可以算作,市面上已知的产品的一线的水平。那么我这里大概解释一下,这个项目里面的这个记忆体设计是怎么样的。 【记忆体结构】 我以前讲洛云的记忆体的时候,一般会用长期记忆体、中期记忆体和短期记忆体来解释。那么目前的话呢,我大概会解释为:固化记忆体 + 临时记忆体 + 增量记忆体。 固化记忆体,你可以理解成这是一部分是角色的基础设定,基本上不会变的,包括比如说出生年月日、星座、性格、聊天习惯等等。 临时记忆体呢,就是与当下时间相关的这个记忆体,可能是当天的新闻,或者是角色当前的活动;也可能会包括一些临时状态,比如角色对用户现在关键字段的总结(关系,昵称,聊天的目标)。 那么接下来就是增量记忆体。这就是在传统的虚拟人当中,向量库做的记忆体。那么这个记忆体呢,是目前会采用一个分库的一个设计。主要包括:角色的公共信息、用户的私有信息,角色的手机相册,然后角色的技能和知识。那么这个分库的主要设计是为了就是增加一定的召回率吗,以及保护隐私;用户的私有信息其实只在当前这个对话的session当中有效,在其他的对话session当中无效,这样的话呢,用户的隐私就会被得到一定的程度的保护。 【总结与召回】 目前记忆体总结所采用的方案,是每一轮都后置做一次总结。那这个可能有一点废token,其实也可以做成比如积攒了五轮再做一次总结。记忆体的召回呢,目前其实是多库多路加权的召回方案,具体的我就不在这里多解释了,因为解释起来其实比较复杂,大家可以详细去看工程的代码。 延展性 接下来说明一下目前框架本身的延展性。 首先呢,上图当中表达了算法层跟通信层的解耦。我们可以看到,上面这个connector这里是用的ecloud的一个wechat的一个bot,这个就相当于是通信层。中间是用一个数据库,包括input message和output message表。下层实际上是luoyun的这个算法层。所以此处其实使用了数据库,进行算法层和通信层的解耦。这个解耦性,可以帮助我们做到一回多或者多回一,或者是灵活的主动消息。 同时,通信层connector其实是抽象的,所以微信只是通信层的一种实现,你可以实现别的平台的connector。例如你要做个网站,就可以做http connector;你也可以实现抖音评论区、discord、telegram这些connector。 第二个就是人物的拓展。目前只要你快速做出一个新人物,只要你准备好了他的基础人设、进阶人设、面部的lora以及音色的选型。当然,如果你想要做真人的克隆也是可以的。 那么第三个就是并发跟并行的问题。除了多个角色你可以在同一台服务器上并行,同一个角色你可以使用并发的算法层,来增加处理效率。 未完成的部分和缺点 【未完成的部分】 目前框架不支持视频,表情包,聊天记录以及其他复杂的微信消息类型。当然也可以写,就是写起来比较麻烦。 另外群聊和企业微信也没有被支持。群聊对目前的架构可能会造成一定的破坏。 【表现不佳】 那么目前来看,表现不好的地方包括以下部分: • 主动消息。主动消息部分不够真实,不够顺滑。其实主要是这个模型本身对这个时间的认知不太合理。 • 对新闻的使用比较生硬,就有的时候会莫名其妙地加入一个新闻,对对话来说没有什么帮助。 • 对照片的理解的问题。 • 当然还有很多其他的难解的问题,主要还是拟人方向的,比如说像通感,理解一些梗,反感度等等问题。 【风险】 比较主要的风险,其实是微信的私人号bot本身,会有比较大的封号风险,这个大家其实可能都清楚。所以呢,我现在目前来说只是把这个技术框架来做开源,这个风险本身还是需要大家自己去吸收或者承担的。 那么第二点呢,就是它的伦理风险和内容合规风险。如果有一些用户跟洛云聊天的时候,对她有一定的情感依赖,那么当他认知到这个虚拟人在现实中并不存在,那么他的心理实际上是会有很大的落差的。这里的伦理风险远比我们想象的大。 当然内容方向,比如说你们要做一些擦边球或者搞黄色方向的这个东西的话呢,其实我只能声明跟本人无关。 写在最后 李洛云这个项目其实伴随了我很久,算是我自己的半个AI女儿也不为过。期间经历了不少事情,断断续续做了将近两年的时间。对我来说,也有不少的怀旧情怀。(比如她的脸模就是sd时期的图,我翻到flux上做了个lora;质量偏低,但是纯为了留住这张脸) 至于是否要开源,我也是进行了一番思想斗争。因为我自己大概率也是想接一些单子,或者做一些课程来赚钱的;如果全开源了,那一定会影响收入。但是我想了想自己最初的想法,其实也就是玩,是技术探索;所以目前全部公开出来给大家用用,讲讲自己的理解,跟厉害的人交流交流,确实也挺不错的。那开就开了吧,所以还是希望大家能够尊重我的劳动成果。 目前使用的是MIT开源协议,允许商用;但是也要求在fork或者商用的时候,必须包含代码的原始出处以及原作者。 整个项目也算是自己的一个里程碑,以及自己对过去的一个告别。我也准备进行下一个项目了。 各位朋友,我们江湖再见! 2025年7月5号 感谢 No access clip 00:00 No access clip 00:00 那么目前呢,其实是没有做实时搜索的,它这个搜索呢,实际上是当天只会搜索一次。 日常与朋友圈 朋友圈生成 接下来呢,就是大家比较喜欢的功能——朋友圈。 每天角色都会进行一个日常生活的一个生成。大家可以理解成,大概在24个小时里面会有10个到20个左右的一个活动。在不同的活动下,他可能处于一个繁忙、空闲或者是睡觉的状态。 然后框架会进行这个朋友圈的制作。我们可以看到,朋友圈的生成内容,会被发给管理员。然后管理员可以决定这个图片,是不是要保留;以及手动发把这个朋友圈给发动发送出去。 日常与朋友圈 朋友圈展示 那么我们来看看实际的朋友圈的效果展示。 这张图片就可以呃比较漂亮的展示了百叶窗效果,证明我们现在所选用的这个图像模型其实还是不错的。 右边的这个朋友圈的文案,其实比较意思:“老板说这个毛巾是定制的,有点东西”。 技术实现 记忆体 接下来稍微解释一下目前采用的记忆体。整体来说,现在的目前这个框架里面的这个记忆体的召回的表现呢,其实是我自己觉得是不错的。基本上可以算作,市面上已知的产品的一线的水平。那么我这里大概解释一下,这个项目里面的这个记忆体设计是怎么样的。 【记忆体结构】 我以前讲洛云的记忆体的时候,一般会用长期记忆体、中期记忆体和短期记忆体来解释。那么目前的话呢,我大概会解释为:固化记忆体 + 临时记忆体 + 增量记忆体。 固化记忆体,你可以理解成这是一部分是角色的基础设定,基本上不会变的,包括比如说出生年月日、星座、性格、聊天习惯等等。 临时记忆体呢,就是与当下时间相关的这个记忆体,可能是当天的新闻,或者是角色当前的活动;也可能会包括一些临时状态,比如角色对用户现在关键字段的总结(关系,昵称,聊天的目标)。 那么接下来就是增量记忆体。这就是在传统的虚拟人当中,向量库做的记忆体。那么这个记忆体呢,是目前会采用一个分库的一个设计。主要包括:角色的公共信息、用户的私有信息,角色的手机相册,然后角色的技能和知识。那么这个分库的主要设计是为了就是增加一定的召回率吗,以及保护隐私;用户的私有信息其实只在当前这个对话的session当中有效,在其他的对话session当中无效,这样的话呢,用户的隐私就会被得到一定的程度的保护。 【总结与召回】 目前记忆体总结所采用的方案,是每一轮都后置做一次总结。那这个可能有一点废token,其实也可以做成比如积攒了五轮再做一次总结。记忆体的召回呢,目前其实是多库多路加权的召回方案,具体的我就不在这里多解释了,因为解释起来其实比较复杂,大家可以详细去看工程的代码。 延展性 接下来说明一下目前框架本身的延展性。 首先呢,上图当中表达了算法层跟通信层的解耦。我们可以看到,上面这个connector这里是用的ecloud的一个wechat的一个bot,这个就相当于是通信层。中间是用一个数据库,包括input message和output message表。下层实际上是luoyun的这个算法层。所以此处其实使用了数据库,进行算法层和通信层的解耦。这个解耦性,可以帮助我们做到一回多或者多回一,或者是灵活的主动消息。 同时,通信层connector其实是抽象的,所以微信只是通信层的一种实现,你可以实现别的平台的connector。例如你要做个网站,就可以做http connector;你也可以实现抖音评论区、discord、telegram这些connector。 第二个就是人物的拓展。目前只要你快速做出一个新人物,只要你准备好了他的基础人设、进阶人设、面部的lora以及音色的选型。当然,如果你想要做真人的克隆也是可以的。 那么第三个就是并发跟并行的问题。除了多个角色你可以在同一台服务器上并行,同一个角色你可以使用并发的算法层,来增加处理效率。 未完成的部分和缺点 【未完成的部分】 目前框架不支持视频,表情包,聊天记录以及其他复杂的微信消息类型。当然也可以写,就是写起来比较麻烦。 另外群聊和企业微信也没有被支持。群聊对目前的架构可能会造成一定的破坏。 【表现不佳】 那么目前来看,表现不好的地方包括以下部分: • 主动消息。主动消息部分不够真实,不够顺滑。其实主要是这个模型本身对这个时间的认知不太合理。 • 对新闻的使用比较生硬,就有的时候会莫名其妙地加入一个新闻,对对话来说没有什么帮助。 • 对照片的理解的问题。 • 当然还有很多其他的难解的问题,主要还是拟人方向的,比如说像通感,理解一些梗,反感度等等问题。 【风险】 比较主要的风险,其实是微信的私人号bot本身,会有比较大的封号风险,这个大家其实可能都清楚。所以呢,我现在目前来说只是把这个技术框架来做开源,这个风险本身还是需要大家自己去吸收或者承担的。 那么第二点呢,就是它的伦理风险和内容合规风险。如果有一些用户跟洛云聊天的时候,对她有一定的情感依赖,那么当他认知到这个虚拟人在现实中并不存在,那么他的心理实际上是会有很大的落差的。这里的伦理风险远比我们想象的大。 当然内容方向,比如说你们要做一些擦边球或者搞黄色方向的这个东西的话呢,其实我只能声明跟本人无关。 写在最后 李洛云这个项目其实伴随了我很久,算是我自己的半个AI女儿也不为过。期间经历了不少事情,断断续续做了将近两年的时间。对我来说,也有不少的怀旧情怀。(比如她的脸模就是sd时期的图,我翻到flux上做了个lora;质量偏低,但是纯为了留住这张脸) 至于是否要开源,我也是进行了一番思想斗争。因为我自己大概率也是想接一些单子,或者做一些课程来赚钱的;如果全开源了,那一定会影响收入。但是我想了想自己最初的想法,其实也就是玩,是技术探索;所以目前全部公开出来给大家用用,讲讲自己的理解,跟厉害的人交流交流,确实也挺不错的。那开就开了吧,所以还是希望大家能够尊重我的劳动成果。 目前使用的是MIT开源协议,允许商用;但是也要求在fork或者商用的时候,必须包含代码的原始出处以及原作者。 整个项目也算是自己的一个里程碑,以及自己对过去的一个告别。我也准备进行下一个项目了。 各位朋友,我们江湖再见! 2025年7月5号 感谢 视频教程 开篇 哈喽,大家好,我是你们的皮皮哥。今天来介绍一下我最近开源的这个luoyun project的这个微信虚拟人框架。我的目标呢,其实让每一个人都可以做自己的微信虚拟人。那么今天就来介绍一下我这个框架的方案,还有它的能力。 参考链接 • GitHub:https://github.com/PeterZhao119/luoyun project (已public,大家可以参考里面的部署方案自己部署一个玩) • 公开文档:人人都能做自己的微信虚拟人——luoyun project开源微信虚拟人框架 人人都能做自己的微信虚拟人——luoyun project开源微信虚拟人框架 • B站视频:https://www.bilibili.com/video/BV1cyGJzMEMb • 作者微信:LeanInWind • 作者邮箱:zhyue1985@gmail.com zhyue1985@gmail.com • 林巧芸(体验账号):18917209041 • 李洛云(体验账号):luoyun project • 请把她们当做正常人类来聊天,不尊重,试探,套提示词等行为均可能被拉黑;添加时请说明自己的身份和目的 写在前面 首先呢,这个方案我大概自己做了有两年左右的时间,现在会将大部分的这个代码做开源。我的代码能力不算特别好啊,相当于是这个代码框架开出来之后,大家可能从中吸取一些意思就可以了。 代码仓库目前开源在github上,仓库名叫做luoyun project。这里面包含了比较完整的部署方案,自己部署一个出来玩。部署的整个的这个成本代价大概是需要400块钱左右。 前面也提供了两个体验账号,大家注意加的时候,稍微写一下你自己的身份和体验目的。也可以是先加我的这个微信,然后跟我聊了几句之后,然后再去加他们,这样通过的可能性会比较高,因为现在加他们的人还是比较多的。 能力展示 拟人能力 人设、情绪价值 首先的这个能力展示就是它的拟人能力。 通过这个框架呢,我们可以实现不同的这个角色的设定和性格特征。比如说,这个是我们的一个叫做林巧芸的这样一个这个女生的一个设定;有人在跟他去聊这个能不能去吃火锅。他们在讨论这个预算问题。然后这个哥们说,我出200,你出100,可不可以?她说行。然后这个哥们说,你不会嫌我钱太少。然后这个林巧芸说,怎么会,钱够吃饭就行,主要是跟和谁吃。 然后再比如说这里的话呢,就是这个朋友自己克隆了一个叫雪妮的一个虚拟人。他说我睡眠障碍,好痛苦。然后雪妮说,我床头还放着薰衣草精油,可以睡前闻一闻超relax。OK,我们要一直好好的。 我们就可以看到他提供了不错的这个情绪价值,并且很明显,不同的这个人物,她们的这个情绪特征是不一样的。 拟人能力 自我意识 在这里的话呢,我其实通过强化了这个自我意识,来避免了那种就是纯服务型的一个人格。 我们都知道,目前现在已知的很多的这个虚拟人,比如单纯的chatbot,它其实是会有比较强服从性,或者说是服从性人格;但这个呢,其实就比较不像是真人。 如果我们观察luoyun project的能力,我们可以看到,模型其实会输出一些就是自我意识的体现,比如说我说,老子是如假包换的真人哈;以及就是她在面对质疑的时候,他可能会面对一些就是反感性的话题的话,可能会累积她的反感度,然后最后会进行一个智能体层面上的软拉黑。比如说像这里会弹出一个消息,叫做已拉黑。 对话能力 行为拟真 那什么叫行为拟真呢?前面我们看到这些截图,其实是一种内容上的拟真。就像文字的,或者是图片,或者声音上的拟真。但实际上“行为拟真”呢,可能会更重要。这就是我说的“内容拟真比不上行为拟真”。 那么行为拟真可能包括呢,就是比如说像微信,我发消息的时候呢,可能是长短长短的来发,可能是有一定的延迟,可能是比如说像多回一,一回多,有可能还会主动来发消息。那这种就是属于行为上的拟真。 当然这个行为拟真就是在目前的这个框架下,能够比较良好地被支持的。 对话能力 多模态混合理解 我们看到上边这张图呢,我其实是去了一个酒吧;但是呢,这个酒吧呢,它是模仿中医药房去做的酒吧,上面这个比较多的都是这个中医的小药盒,中药房的小药抽屉。这个时候呢,她其实把这个图和文进行混合理解了之后,她说了一个中式中药房抽屉柜配合现代酒吧元素,超酷;这是一个多模态混合理解的能力。 当然除了这个照片之外,框架还包括音频理解能力。 对话能力 多模态混合输出 然后我们来看一下多模态的混合输出能力。在这张图里,洛云提到了一个咖啡馆。然后这哥们说,看起来不错,然后能介绍一下这间吗?然后她就把这家店这个介绍了一下。首先有声音的输出。然后发送了一个图片。 那么是否发送图片或者声音,这些都是大模型型自己的决策。 这里的照片和语音,实际上都可以进行一定的这个自定义的克隆。当然还要提到的是,目前其实是不支持实时合成照片的。这张照片呢,实际上是他预生成的一张手机相册照片。 对话能力 主动消息 接下来是这个主动消息能力。我们可以看到,林巧芸在呃16点01分的时间,接着这个之前的一个对话,然后接着主动发了一条消息。她说,我们可以接着聊聊什么东西吗?OK,那么这个呢,就是一个主动消息。 那目前来说的话呢,主动消息可以按照预期的时间,或者随机的时间触发。 日常与朋友圈 新闻 新闻是目前我新增了一个能力,就是每天这个角色他会自己去搜索一定的这个新闻。并且搜索的关键词和要求,你可以做一定的自定义。比如说,你可以搜索一些自己喜欢的东西,或者说自己所在城市的东西。 当新闻被搜索出来之后,实际上会变成这个参考的上下文,来提供一些谈话的谈资。另外,新闻本身会被学习变成角色的这个技能和知识。这里如果好好做的话,可以视作一个可以不断学习知识和技能的“自我成长的智能体”。 同时呢,如果有新闻的话,实际上也会让这个角色更加贴近于真实的世界与生活。