Alpaca4610 / nonebot_plugin_chatgpt_turbo

具有上下文关联和多模态识别(识图),适配OneAPI和OpenAI官方的nonebot插件。
38 stars 7 forks source link

代码优化建议 #14

Open QNLanYang opened 1 year ago

QNLanYang commented 1 year ago

首先非常感谢你做出的插件,我最近一直有在使用它

我查看了你的代码,想提几点不成熟的小建议 我注意到,为了实现私聊功能,你加入了if plugin_config.enable_private_chat:来启用针对私聊的处理,但是绝大部分的代码都是重复的,并且在nonebot初始化插件导入时会因为相同的触发命令而报几个warning。

以下是我的几个修改意见:

第一种方法,你可以将handler中的event:替换为MessageEvent,随后使用if isinstance(event, GroupMessageEvent):if isinstance(event, PrivateMessageEvent):来判断当前消息是私聊还是群聊;

第二种方法,你可以为相同的功能只保留一个matcher,但是你可以写多个@matcher.handle匹配不同的类型。 希望这些对你有帮助,非常感谢你对nonebot社区的贡献。

Alpaca4610 commented 1 year ago

首先非常感谢你做出的插件,我最近一直有在使用它

我查看了你的代码,想提几点不成熟的小建议 我注意到,为了实现私聊功能,你加入了if plugin_config.enable_private_chat:来启用针对私聊的处理,但是绝大部分的代码都是重复的,并且在nonebot初始化插件导入时会因为相同的触发命令而报几个warning。

以下是我的几个修改意见:

第一种方法,你可以将handler中的event:替换为MessageEvent,随后使用if isinstance(event, GroupMessageEvent):if isinstance(event, PrivateMessageEvent):来判断当前消息是私聊还是群聊;

第二种方法,你可以为相同的功能只保留一个matcher,但是你可以写多个@matcher.handle匹配不同的类型。 希望这些对你有帮助,非常感谢你对nonebot社区的贡献。

好的,感谢大佬的建议!

Alpaca4610 commented 1 year ago

顺便问一下大佬,onebot V11中有没有提供上传文件/群文件的接口。我看了下源码,好像只有V12有这个功能。

QNLanYang commented 1 year ago

😢我也不算什么大佬,就是看别人写的插件看得多一些可能,你说的这个我还真不清楚

QNLanYang commented 1 year ago

另外刚才仔细看了一下 image 这样写真的可以吗,好像不是挺常规🤔(比较少见)前面不带上下文的群聊命令和这个不会出现冲突吗?

QNLanYang commented 1 year ago

@Alpaca4610 我刚刚开了一个pr,你看看,我这边马上断电了,有问题我明天再改改