zhayujie / chatgpt-on-wechat

基于大模型搭建的聊天机器人,同时支持 微信公众号、企业微信应用、飞书、钉钉 等接入,可选择GPT3.5/GPT-4o/GPT4.0/ Claude/文心一言/讯飞星火/通义千问/ Gemini/GLM-4/Claude/Kimi/LinkAI,能处理文本、语音和图片,访问操作系统和互联网,支持基于自有知识库进行定制企业智能客服。
https://docs.link-ai.tech/cow
MIT License
29.48k stars 7.8k forks source link

新增插件: replicate (4月9日支持处理图片,如照片修复等模型) #770

Open lanvent opened 1 year ago

lanvent commented 1 year ago

使用Replicate API画图的插件,插件说明

image

v0.1初始版本,要求: chatgpt-on-wechat>=1.2.1.1

插件安装参考更新记录,以下3个方法都可以安装插件:

  1. 管理员认证后,#installp https://github.com/lanvent/plugin_replicate.git

  2. pull最新代码,管理员认证后, #installp replicate

  3. 手动复制插件里的所有文件,放置在plugins目录下的子文件夹中,除此以外,你还需要安装文件夹中requirements.txt中的依赖

注意事项:

Update:

使用"#updatep replicate"指令,可更新插件到最新版。 也可重新安装插件。

v0.3 支持翻译中文Prompt

需要参考https://github.com/zhayujie/chatgpt-on-wechat/blob/3001ba92668bc642aac115d3221dc9f902ab3461/config.py#L73-L74 添加百度翻译API key和秘钥到config.json中。

v0.2 支持输入图片

要求: chatgpt-on-wechat>=1.2.2

以图片修复为例:

image image image
zhayujie commented 1 year ago

发福利了

qcoltma commented 1 year ago

installp这个命令是在哪里的?运行不了呀

lanvent commented 1 year ago

installp这个命令是在哪里的?运行不了呀

再点击下更新记录看看,刚才忘记改链接了。

congxuma commented 1 year ago

可以使用,厉害的

但是有个问题,开启插件后画图没有按规定的格式输入会识别不了但是,不是走的OPENAI原本的画图接口,而是继续调用replicate插件只是prompt是空; 我预期的是没识别就走原本的接口 image image

lanvent commented 1 year ago

之前为了节省余额就让sdwebui插件全程接管画画指令了,欢迎去插件所在仓库提交 增加失败逻辑选项 的PR~

qcoltma commented 1 year ago

installp这个命令是在哪里的?运行不了呀

再点击下更新记录看看,刚才忘记改链接了。

可以了,感觉画来画去都是这幅图,可能是我不怎么会用。 画竖版 高清 二次元:白发,眼镜

fa6447f7c22902b770354298593f61a

hy546880109 commented 1 year ago

railyway一键部署的如何使用replicate插件

lichengzhe commented 1 year ago

插件拉到本地 add到项目里 改配置 删docker 加key参数就行了

qcoltma commented 1 year ago

updatep replicate

更新插件成功,运行出错,微信端没有任何反应:

[INFO][2023-04-09 09:34:04][bridge.py:28] - create bot chatGPT for chat [ERROR][2023-04-09 09:34:04][chat_channel.py:235] - Worker return exception: IMAGE Traceback (most recent call last): File "/usr/lib/python3.8/concurrent/futures/thread.py", line 57, in run result = self.fn(*self.args, *self.kwargs) File "/home/qcolt/chatgpt-on-wechat/channel/chat_channel.py", line 128, in _handle reply = self._generate_reply(context) File "/home/qcolt/chatgpt-on-wechat/channel/chat_channel.py", line 138, in _generate_reply e_context = PluginManager().emit_event(EventContext(Event.ON_HANDLE_CONTEXT, { File "/home/qcolt/chatgpt-on-wechat/plugins/plugin_manager.py", line 159, in emit_event instance.handlers[e_context.event](e_context, args, **kwargs) File "/home/qcolt/chatgpt-on-wechat/plugins/plugin_replicate/main.py", line 50, in on_handle_context if e_context['context'].type not in [ContextType.IMAGE_CREATE, ContextType.IMAGE]: File "/usr/lib/python3.8/enum.py", line 384, in getattr raise AttributeError(name) from None AttributeError: IMAGE

lanvent commented 1 year ago

chatgpt-on-wechat需要更新到最新

hecarli555 commented 1 year ago

使用这个插件需要注册sb或者mj账号么???还是说只用openai的key就可以了

xiabill commented 1 year ago

画修复 这个开启需要怎么设置吗?

lanvent commented 1 year ago

画修复 这个开启需要怎么设置吗?

这个关键词默认已经加在插件文件夹的config.json.template里了

LiberBinjio commented 1 year ago

怎么才能不使用DALL-E2呢,安装了replicate 插件但还是一直调用的DALL-E2画图。求教

lanvent commented 1 year ago

plist 可以查看插件是否开启成功

LiberBinjio commented 1 year ago

输入#installp replicate后回复 [INFO] 安装插件成功,请使用 #scanp 命令扫描插件或重启程序,开启前请检查插件是否需要配置 但输入#scanp后回复 [INFO] 插件扫描完成, 未发现新插件

LiberBinjio commented 1 year ago

plist 可以查看插件是否开启成功

请问怎么查看插件是否开启成功呢

lanvent commented 1 year ago

plist 可以查看插件是否开启成功

LiberBinjio commented 1 year ago

plist 可以查看插件是否开启成功

好的,我理解了 回复是 [INFO] 插件列表: Godcmd_v1.0 999 - 已启用 Banwords_v1.0 100 - 已启用 Role_v1.0 0 - 已启用 Dungeon_v1.0 0 - 已启用 BDunit_v0.1 0 - 未启用 Hello_v0.1 -1 - 已启用 Finish_v1.0 -999 - 已启用 没看到replicate 我想要#enablep replicate 也回复插件不存在 这是为什么呢?

dqzboy commented 1 year ago

plist 可以查看插件是否开启成功

大佬,我执行提示 需要管理员权限才能执行该指令,管理员在哪里配置?

LiberBinjio commented 1 year ago

plist 可以查看插件是否开启成功

大佬,我执行提示 需要管理员权限才能执行该指令,管理员在哪里配置?

在plugins/godcmd/config.json下设置password密码 然后输入#auth + 密码

dqzboy commented 1 year ago

plist 可以查看插件是否开启成功

大佬,我执行提示 需要管理员权限才能执行该指令,管理员在哪里配置?

在plugins/godcmd/config.json下设置password密码 然后输入#auth + 密码

好的 谢谢大佬

XuChec commented 1 year ago

微信图片_20230414151354 画的和描述的不符

LiberBinjio commented 1 year ago

微信图片_20230414151354 画的和描述的不符

我也是#enablep replicate的时候提示开启失败 但是我上一步#plist输出的列表里都没有replicate 我也用的#installp replicate,显示安装成功后为啥列表里没有replicate呢? 大佬指点一下

lanvent commented 1 year ago

开启失败需要检查日志,是不是配置文件没填

zhangzhanhui commented 1 year ago

第二种安装插件地方法"#install replicate"执行不了,会返回“我是一个语言模型,没有办法为您安装软件......"

qcoltma commented 1 year ago

使用Replicate API画图的插件,插件说明。 大佬,启用了该插件后,画图画来画去就是一个美女漫画,有没有办法可以画点别的呀?

lanvent commented 1 year ago

看看插件说明吧,可以自己挑模型的

zhangzhanhui commented 1 year ago

换了模型,画其它都还可以。但是一画人五官就很诡异,请问这是哪里没设置好?

lanvent commented 1 year ago

可以去replicate官网上选择模型体验一下看看,这些模型一般不能one fit all,都有自己的专攻

qcoltma commented 1 year ago

看看插件说明吧,可以自己挑模型的

去replicate网站上去学习了下,终于学到点门道了,谢谢。

Maddaxman commented 1 year ago

可以去replicate官网上选择模型体验一下看看,这些模型一般不能one fit all,都有自己的专攻

@lanvent 我在config.json里加了其他模型,参数按照api示例添加的,但是会导致插件错乱,比如执行“生成图片 重塑”(重塑是新增模型的关键词,触发上传图片)的时候,直接输出了图片,没有触发上传图片,是怎么回事呢

{
  "keywords": [
    "重塑",
    "reshape"
  ],
  "params": {
    "model": "jingyunliang/swinir",
    "version": "660d922d33153019e8c263a3bba265de882e7f4f70396546b6c9c8f9d47a021a",
    "image": "image",
    "task_type": "Real-World Image Super-Resolution-Large",
    "noise": 15,
    "jpeg": 40,
  },
  "desc": "修复图片"
},
Zhaoyi-Yan commented 1 year ago

[INFO] 安装插件成功,请使用 #scanp 命令扫描插件或重启程序,开启前请检查插件是否需要配置;

scanp 后,发现:

[INFO] 插件扫描完成, 未发现新插件 。。

lanvent commented 1 year ago

@Maddaxman 你的json格式有问题,可以看一看log,有没有报错,"jpeg"那行最后不能有逗号

[WARNING][2023-04-17 22:36:46][main.py:45] - [RP] init failed.Expecting property name enclosed in double quotes: line 101 column 7 (char 3134)
[ERROR][2023-04-17 22:36:46][plugin_manager.py:151] - Failed to init REPLICATE, diabled. Expecting property name enclosed in double quotes: line 101 column 7 (char 3134)
lanvent commented 1 year ago

@Zhaoyi-Yan 看看plugins文件夹内有没有多出插件吧,安装时观察下log,实在不行只能手动安装了

Zhaoyi-Yan commented 1 year ago

@lanvent 我这样的:管理员认证后,#installp https://github.com/Zhaoyi-Yan/plugin_replicate.git 。我弄了Rename config.json.template to config.json。我用的是deploy on railway,怎么看"plugins“有没有多插件呢。我用#plist是没有replicate的

Zhaoyi-Yan commented 1 year ago

我试过summary插件,按照教程是可以的。

lanvent commented 1 year ago
Railway支持使用环境变量(replicate_api_token或REPLICATE_API_TOKEN)方式传递API token

你把Replicate的api token 加入环境变量了吗

Zhaoyi-Yan commented 1 year ago

加了。。好像是“single_chat_reply_prefix=["bot"]”应该写成"single_chat_reply_prefix=[bot]"。。。这个引号有点乱说实话。。

vmxmy commented 1 year ago

之前为了节省余额就让sdwebui插件全程接管画画指令了,欢迎去插件所在仓库提交 增加失败逻辑选项 的PR~

我也使用了sdwebui插件,用本地的sd接管了画画指令,这种情况怎么配置才可以把修复指令转给replicate?

lanvent commented 1 year ago

我猜可以使用这样的方式:你把replicate的优先级调高,把config文件中的default参数中的model跟version删掉,这样处理,如果没匹配到replicate的关键词会生图失败,继续交付给sdwebui

lanvent commented 1 year ago

setpri 好像是, 私聊进入管理员模式后 #help查看一下。

或者直接修改plugins/plugins.json

k186 commented 1 year ago

启动的时候 提示 插件加载失败

image

python 版本:Python 3.9.0rc2 urllib3 版本:1.25.11 机器人版本:1.2.5

已处理,版本问题 辅助依赖需要安装完

zzs0116 commented 1 year ago

ERROR: Could not install packages due to an OSError: [Errno 13] Permission denied: '/home/noroot' Check the permissions. 请问Railway上面部署的使用1、2两种方法都提示这个是什么问题?

sephrioth commented 1 year ago

能否修改下 config.json 里面模型的标题名 , 也就是params 下的 model 名, 因为有些模型下面还有额外的 model 参数,比如 https://replicate.com/google-research/maxim , 不然会导致冲突, 建议修改为 repliacte_model ? @lanvent

lanvent commented 1 year ago

这类参数,我会在今晚更新下:为了与以往的配置兼容,api中如果出现"model"/"version"参数,请使用“_model"和"_version"来表示这些参数,程序中会自动替换它们。

lanvent commented 1 year ago

已兼容

FFFKLD commented 1 year ago

image 大佬,我用的railway一键部署,显示安装成功,但是搜索不到插件,也把Replicate的api token 加入环境变量了

starsliao commented 1 year ago

翻译中文Prompt是怎么用呢?没看明白 我配置了api和key,输入的中文Prompt,看日志还是中文呀 没调用百度去翻译

lanvent commented 1 year ago

还需要加一句插件的配置 https://github.com/lanvent/plugin_replicate/blob/f96af455ecc4081eaf00f6c25c8e105ad9246a83/config.json.template#L3