Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

简易支持插件,添加sdwebui(novelai画图), godcmd(管理员指令增强)插件,Banwords(敏感词过滤)插件 #442

Merged
merged 21 commits into from
Mar 14, 2023

Conversation

lanvent
Copy link
Collaborator

@lanvent lanvent commented Mar 12, 2023

  1. wechat channel的消息处理过程解耦。
  2. 支持插件功能,插件管理器目前只支持wechat channel。插件放置在plugins目录,里面存放有示例Hello插件,和插件管理器的配置文件(初次运行后生成)。
  3. 增加Godcmd插件,通过私聊口令验证可以进入管理员模式,管理员模式下目前可以实现启动暂停服务, 启用、禁用插件、重载插件配置、扫描是否有新插件、设置插件的优先级。初次运行后插件目录中会生成config.json,在其中可填写口令。
  4. 增加sdwebui插件, 它接管默认的画图命令,并调用本地部署的stable diffusion webui的api,支持自定义关键词规则。
  5. 增加Banwords插件,实现了简易的敏感词过滤的功能,可以选择无视敏感词消息或替换消息中的敏感词进行回复。

@zhayujie
Copy link
Owner

zhayujie commented Mar 13, 2023

感谢提交PR, 很精彩的代码 👍🏻

不过引入插件化可能会带来一些理解成本的提升,可否先合并到分支https://github.com/zhayujie/chatgpt-on-wechat/tree/plugins 中,我先学习和测试一下再合并入主分支~

@lanvent lanvent changed the title 简易支持插件 简易支持插件,添加sdwebui(novelai画图), godcmd(管理员指令增强)插件 Mar 13, 2023
@lanvent
Copy link
Collaborator Author

lanvent commented Mar 13, 2023

感谢提交PR, 很精彩的代码 👍🏻

不过引入插件化可能会带来一些理解成本的提升,可否先合并到分支https://github.com/zhayujie/chatgpt-on-wechat/tree/plugins中,我先学习和测试一下再合并入主分支~

感谢review。

前几天我将本地的novel ai画图部署到bot上时,重写了bot的create_img最后能用但调用很混乱。所以就想不如将它做成插件,实现的版本也比较简单,具体做法就是:

  • 将处理消息过程解耦成收到、处理、包装、发送等部分
  • 每个消息处理部分前触发一个事件,插件按照优先级被事件触发后决定 自己接管进行回答、对消息进行修改再交付给下个插件或跳过默认的消息处理过程。
    我暂时想到的一些能基于以上过程的能够实现的插件是 敏感词检查、管理员指令、消息统计、消息转发和接管部分api的插件。
    这些插件跟整个主程序是解耦的,少数人使用的单一功能如本地部署的novelai画图做成插件的形式,可以选择放置在独立的仓库中。

@lanvent lanvent changed the base branch from master to plugins March 13, 2023 17:22
@lanvent lanvent changed the title 简易支持插件,添加sdwebui(novelai画图), godcmd(管理员指令增强)插件 简易支持插件,添加sdwebui(novelai画图), godcmd(管理员指令增强)插件,Banwords(敏感词过滤)插件 Mar 14, 2023
@zhayujie zhayujie merged commit 2cb30b5 into zhayujie:plugins Mar 14, 2023
Leslie0310 pushed a commit to Leslie0310/chatgpt-on-wechat that referenced this pull request Dec 8, 2024
简易支持插件,添加sdwebui(novelai画图), godcmd(管理员指令增强)插件,Banwords(敏感词过滤)插件
zcpisme pushed a commit to zcpisme/dify-on-wechat that referenced this pull request Dec 28, 2024
简易支持插件,添加sdwebui(novelai画图), godcmd(管理员指令增强)插件,Banwords(敏感词过滤)插件
zcpisme pushed a commit to zcpisme/dify-on-wechat that referenced this pull request Dec 28, 2024
简易支持插件,添加sdwebui(novelai画图), godcmd(管理员指令增强)插件,Banwords(敏感词过滤)插件
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants