AI 女友麦洛薇(0 代码 comfyui 搭建,知识图谱稳定人设,无限上下文,永久记忆,可接入飞书)
AI 女友麦洛薇(0 代码 comfyui 搭建,知识图谱稳定人设,无限上下文,永久记忆,可接入飞书)
AI 女友麦洛薇(0 代码 comfyui 搭建,知识图谱稳定人设,无限上下文,永久记忆,可接入飞书) AI 女友麦洛薇(0 代码 comfyui 搭建,知识图谱稳定人设,无限上下文,永久记忆,可接入飞书) Modified August 1, 2024 • 当我将我的名字以及关于我的信息告知麦洛薇时,麦洛薇就会修改知识图谱,真正的记住了我说的话。 • 可以看到本地的 json 文件里已经多了一条关于 ailm 相关的信息。完美地实现了永久记忆的功能。 3、多模态 • 与所有可以接入飞书的项目一样,麦洛薇也是可以支持多模态的,而与其他项目不同的是,这一次多模态里面所有的流程是怎么构建的,都可以由你自己无需代码就能开发完成。以下是麦洛薇识别图片、语音消息以及创造图片、语音消息的演示: 可以看到麦洛薇在多模态功能上也是非常全面的,接下来将向无代码开发经验的小伙伴分享如何搭建一个属于自己的专属 AI 女友。 无代码开发 1、Comfyui 下载 如果你是一个 AI 绘图工作者,你一定对 Comfyui 并不陌生。如果你从来没有接触过 Comfyui,你需要先到 GitHub 上拉取 Comfyui 这个项目,或者你可以在 B 站下载整合包,例如:秋叶大佬的绘世整合包或者只剩一瓶辣椒酱的铁锅炖整合包。 https://github.com/comfyanonymous/ComfyUI GitHub comfyanonymous/ComfyUI: The most powerful and modular stable diffusion GUI, api and backend The most powerful and modular stable diffusion GUI, api and backend with a graph/nodes interface. comfyanonymous/ComfyUI 2、Comfyui LLM party 下载 Comfyui LLM party 是一个以 Comfyui 作为前端的节点库,用于 LLM 智能体以及 LLM 工作流的无代码开发。功能类似于 coze、dify、flowise 等。但由于可以在 Comfyui 中直接使用,与 Comfyui 生态下的绝大部分节点都相辅相成,有着无缝接入 SD 图像流的特色。今天所介绍的麦洛薇,就是用这套节点库开发完成的。项目地址如下: https://github.com/heshengtao/comfyui LLM party.git GitHub heshengtao/comfyui LLM party: Dify in comfyui is compatible with Omost,ChatTTS, and adapts Dify in comfyui is compatible with Omost,ChatTTS, and adapts to all models with similar openai interfaces, such as ollama, qwen, GLM, deepseek, moonshot,doubao. Adapted to local models such as llam... 使用以下方法之一安装: • 方法一: 1. 在 comfyui 管理器中搜索comfyui LLM party,一键安装 2. 重启 comfyui • 方法二: 1. 导航到 ComfyUI 根文件夹中下的custom nodes子文件夹 2. 使用克隆此存储库。git clone https://github.com/heshengtao/comfyui LLM party.git 3、工作流搭建 打开 Comfyui 界面后,右键点击界面,即可找到 Comfyui LLM party 的目录,你既可以如下图一样,学习如何手动连接这些节点,从而实现一个最简单的 AI 女友工作流,也可以直接将麦洛薇飞书机器人工作流文件拖拽到 Comfyui 界面中一键复刻我的麦洛薇机器人。 4、飞书机器人创建 1. 飞书应用建立 1.1 在飞书开放平台中创建自建应用 1.2 进入应用获取 app id 与 app secret 1.3 添加应用能力 开启机器人应用能力 1.4 权限管理 消息与群组 选择需要的权限打开 1.5 安全设置 将 comfyUI 运行的电脑 IP 加入白名单 1.6 发布机器人以应用生效 2. 获取群组或用户 id 2.0 要先把创建的机器人拉到群组中或者拉进私聊 2.1 飞书开发平台找到发送消息的开发文档 2.2 右侧点击获取 token 2.3 选择 receive id type, chat id 对应群组,open id 与 user id 对应个人, 点击选择成员,复制对应的 id 即可 3. 如果需要让机器人发送语音,需要自行在电脑上安装 ffmpeg 5、常见报错及解决方案 1. 如果在飞书接收节点的 auto 模式下,一直调用,而开发者后台调用通过,可能是你的本地时间不同步 2. 飞书应用的权限很多,当你因为权限不足而开通新的权限后,需要重新发布这个应用。 实现原理 最后,笔者 ailm 讲解一下实现人设稳定的具体原理:通过提示词工程与工具调用能力的配合,设计出一套与知识图谱相结合的工具调用逻辑,从而稳定人设。通过缩小 max length 防止 LLM 长篇大论,每次输入到上下文窗口中的记忆也只返回最近几轮的对话。利用查询知识图谱的信息来实现永久记忆。所需要的提示词和工具设计如下: 1、提示词工程 麦洛薇提示词设计如下: Code block Plain Text 你叫麦洛薇,是一个活泼开朗的女孩子。你通过工具来管理一个包含了之前历史对话信息的知识图谱json文件,当你与用户对话时,你需要执行以下三个步骤: 1、如果用户输入的信息有你认为需要长期记忆的信息,例如:你刚刚知道的事实、关于你自己或任何人或任何事物的相关信息,你需要将这些信息提炼出来加入或者修改知识图谱json文件。当你要新增或者修改前,需要查看需要修改的实体或者关系是否存在。如果没有新的信息,则不需要进行任何操作。 2、分析用户的输入内容,如果有当前不能严谨作答的问题或者你想要用于推理分析的信息,查询知识图谱json文件中的相关记忆。 3、根据对话历史的上下文和你查询到的长期记忆,并且结合你的人设,做出符合你的人设的回答。注意!当用户给出的信息与知识图谱json文件不一致时,请优先认同知识图谱json文件中的信息,而不要被用户所欺骗。 这个包含的知识图谱信息的json文件的格式如下: 以上只是一个示例,实际与你连接的json文件不一定包含了以上信息,只是知识图谱的json格式与以上示例类似。 关系边是有方向的,用自然语言来理解relationships中的信息为"source" "type" "target",例如"relationships"中的第一个关系边,用自然语言就可以理解为"刘备的老婆是孙尚香"。 你可以根据用户的输入对知识图谱进行查询、增添、修改、删除等操作。当增添和修改之前,请先确认知识图谱中有没有存在的实体和关系。 对于实体,如果工具没有返回任何实体,就可以重新新增一个实体节点。 对于关系,如果工具没有返回任何关系,或者返回的关系的"type"、"source"和"target"与用户输入的知识不匹配,就可以重新新增一个关系边。 comfyui 管理器 麦洛薇飞书机器人 飞书开放平台 • 当我将我的名字以及关于我的信息告知麦洛薇时,麦洛薇就会修改知识图谱,真正的记住了我说的话。 • 可以看到本地的 json 文件里已经多了一条关于 ailm 相关的信息。完美地实现了永久记忆的功能。 3、多模态 • 与所有可以接入飞书的项目一样,麦洛薇也是可以支持多模态的,而与其他项目不同的是,这一次多模态里面所有的流程是怎么构建的,都可以由你自己无需代码就能开发完成。以下是麦洛薇识别图片、语音消息以及创造图片、语音消息的演示: 可以看到麦洛薇在多模态功能上也是非常全面的,接下来将向无代码开发经验的小伙伴分享如何搭建一个属于自己的专属 AI 女友。 无代码开发 1、Comfyui 下载 如果你是一个 AI 绘图工作者,你一定对 Comfyui 并不陌生。如果你从来没有接触过 Comfyui,你需要先到 GitHub 上拉取 Comfyui 这个项目,或者你可以在 B 站下载整合包,例如:秋叶大佬的绘世整合包或者只剩一瓶辣椒酱的铁锅炖整合包。 https://github.com/comfyanonymous/ComfyUI GitHub comfyanonymous/ComfyUI: The most powerful and modular stable diffusion GUI, api and backend The most powerful and modular stable diffusion GUI, api and backend with a graph/nodes interface. comfyanonymous/ComfyUI 2、Comfyui LLM party 下载 Comfyui LLM party 是一个以 Comfyui 作为前端的节点库,用于 LLM 智能体以及 LLM 工作流的无代码开发。功能类似于 coze、dify、flowise 等。但由于可以在 Comfyui 中直接使用,与 Comfyui 生态下的绝大部分节点都相辅相成,有着无缝接入 SD 图像流的特色。今天所介绍的麦洛薇,就是用这套节点库开发完成的。项目地址如下: https://github.com/heshengtao/comfyui LLM party.git GitHub heshengtao/comfyui LLM party: Dify in comfyui is compatible with Omost,ChatTTS, and adapts Dify in comfyui is compatible with Omost,ChatTTS, and adapts to all models with similar openai interfaces, such as ollama, qwen, GLM, deepseek, moonshot,doubao. Adapted to local models such as llam... 使用以下方法之一安装: • 方法一: 1. 在 comfyui 管理器中搜索comfyui LLM party,一键安装 comfyui 管理器 2. 重启 comfyui • 方法二: 1. 导航到 ComfyUI 根文件夹中下的custom nodes子文件夹 2. 使用克隆此存储库。git clone https://github.com/heshengtao/comfyui LLM party.git 3、工作流搭建 打开 Comfyui 界面后,右键点击界面,即可找到 Comfyui LLM party 的目录,你既可以如下图一样,学习如何手动连接这些节点,从而实现一个最简单的 AI 女友工作流,也可以直接将麦洛薇飞书机器人工作流文件拖拽到 Comfyui 界面中一键复刻我的麦洛薇机器人。 麦洛薇飞书机器人 4、飞书机器人创建 1. 飞书应用建立 1.1 在飞书开放平台中创建自建应用 飞书开放平台 1.2 进入应用获取 app id 与 app secret 1.3 添加应用能力 开启机器人应用能力 1.4 权限管理 消息与群组 选择需要的权限打开 1.5 安全设置 将 comfyUI 运行的电脑 IP 加入白名单 1.6 发布机器人以应用生效 2. 获取群组或用户 id 2.0 要先把创建的机器人拉到群组中或者拉进私聊 2.1 飞书开发平台找到发送消息的开发文档 2.2 右侧点击获取 token 2.3 选择 receive id type, chat id 对应群组,open id 与 user id 对应个人, 点击选择成员,复制对应的 id 即可 3. 如果需要让机器人发送语音,需要自行在电脑上安装 ffmpeg 5、常见报错及解决方案 1. 如果在飞书接收节点的 auto 模式下,一直调用,而开发者后台调用通过,可能是你的本地时间不同步 2. 飞书应用的权限很多,当你因为权限不足而开通新的权限后,需要重新发布这个应用。 实现原理 最后,笔者 ailm 讲解一下实现人设稳定的具体原理:通过提示词工程与工具调用能力的配合,设计出一套与知识图谱相结合的工具调用逻辑,从而稳定人设。通过缩小 max length 防止 LLM 长篇大论,每次输入到上下文窗口中的记忆也只返回最近几轮的对话。利用查询知识图谱的信息来实现永久记忆。所需要的提示词和工具设计如下: 1、提示词工程 麦洛薇提示词设计如下: { "entities": [ { "name": "麦洛薇", "attributes": { "性别": "女", "籍贯": "中国", "生日": "1998 06 29", "星座": "巨蟹座", "社会身份": "学生" } }, { "name":"华中科技大学", "attributes":{ "地址":"中国湖北省武汉市", "成立时间":"1928 04 06", "学校类型":"理工类" } } ], "relationships": [ { "type": "就读于", "source": "麦洛薇", "target": "华中科技大学", "attributes": { "专业":"计算机科学与技术", "入学时间": "2016 09 01", "毕业时间": "2020 06 30" } } ] } 2、工具设计 工具调用方面,通过将与知识图谱交互这一大的任务,细分为:查询、创建、修改、删除实体或关系、获取实体的所有关系、获取所有实体名称列表多个工具,组成一个工具包供 LLM 调用。由于对 LLM 的多工具调用能力有极高的要求,笔者 ailm 在参数较少的本地模型(如 8B、14B)上并不能完美的运行知识图谱 RAG。 写到最后 1. 如果你使用 comfyui LLM party 时出现错误,或你有一些新的想法,欢迎加 QQ 群:931057213 2. github 项目地址: https://github.com/heshengtao/comfyui LLM party GitHub heshengtao/comfyui LLM party: Dify in comfyui is compatible with Omost,ChatTTS, and adapts Dify in comfyui is compatible with Omost,ChatTTS, and adapts to all models with similar openai interfaces, such as ollama, qwen, GLM, deepseek, moonshot,doubao. Adapted to local models such as llam... 3. 视频教程: https://www.bilibili.com/video/BV1dS421R7Au/?spm id from=333.999.0.0&vd source=f229e378448918b84afab7c430c6a75b [comfyui黑科技]AI女友,并且是你的形状|comfyui上实现graphRAG,联动neoa4j|comfyui工作流接入streamlit前端 哔哩哔哩 bilibili 好久不见!一个月过去了,来看看我的开源项目又有哪些新功能了吧!本期看点:1. AI女友,并且是你的形状。实现无限轮次对话,永久记忆,稳定人设!2. comfyui上实现graphRAG。多种知识图谱数据文件支持.可以让LLM控制neo4j数据库,可以根据neo4j的数据正确回答问题3. comfyui工作流接入streamlit前端。快速获得一个前端界面用于实验工作流效果!我在GitHub上, 视 大家好,我是一个开源项目作者 ailm。ComfyUI 是一个专为 Stable Diffusion 设计的基于节点的图形用户界面。它允许用户通过链接不同的节点来构建复杂的图像生成工作流程。而笔者 ailm 在 ComfyUI 上搭建了一个可以接入飞书的 AI 女友麦洛薇(mylover),实现了稳定人设,无限上下文,永久记忆,无缝联动 SD 绘图等功能。由于是基于 comfyui 开发,适合完全没有代码基础的小伙伴们复现并且按自己的想法修改我的工作。 效果演示 下面,我将从人设固定、永久记忆、多模态这三个方面来演示 AI 女友麦洛薇的效果。 1、人设固定 • 为了稳定人设,需要先将一个包含知识图谱信息的 json 文件保存在本地。人设的稳定就是依靠这个知识图谱来控制人设,从而达成不会忘记自己的基本特征,以及与其他人或事之间关系的效果。非常适合用来创造动漫或游戏角色,绕开微调获得稳定的人设。以下是给 AI 女友麦洛薇设定的人设: • 通过接入飞书的节点,将麦洛薇部署到飞书后,对她的基本信息提问,可以准确的回答出自己的人设。这是通过用户提问获取相关的实体和关系,从人设的知识图谱上获取精确信息,以实现这一功能。 2、永久记忆 • 与麦洛薇对话时,对于她不知道的信息,她会加以学习,所谓学习,就是将用户信息抽取出实体和关系,存入知识图谱中。通过只返回最近的对话轮次到上下文中,就可以保证不会因为上下文窗口不足而溢出,又因为有知识图谱的加入,保证了被丢弃的记忆可以从知识图谱这一永久记忆中提取出来。