From e4c7602c0c8fc8ba30a0372922749f0cbea33c83 Mon Sep 17 00:00:00 2001 From: zhayujie Date: Fri, 21 Jul 2023 17:14:11 +0800 Subject: [PATCH 1/2] docs: update README.md --- README.md | 12 +++++++++++- docker/docker-compose.yml | 4 +++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index d3f1a04..341c734 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ Demo made by [Visionn](https://www.wangpc.cc/) # 更新日志 ->**2023.06.12:** 接入 [LinkAI](https://chat.link-ai.tech/console) 平台,可在线创建 个人知识库,并接入微信中。Beta版本欢迎体验,使用参考 [接入文档](https://link-ai.tech/platform/link-app/wechat)。 +>**2023.06.12:** 接入 [LinkAI](https://chat.link-ai.tech/console) 平台,可在线创建 个人知识库,并接入微信、公众号及企业微信中。使用参考 [接入文档](https://link-ai.tech/platform/link-app/wechat)。 >**2023.04.26:** 支持企业微信应用号部署,兼容插件,并支持语音图片交互,私人助理理想选择,[使用文档](https://github.com/zhayujie/chatgpt-on-wechat/blob/master/channel/wechatcom/README.md)。(contributed by [@lanvent](https://github.com/lanvent) in [#944](https://github.com/zhayujie/chatgpt-on-wechat/pull/944)) @@ -226,6 +226,16 @@ sudo docker compose up -d sudo docker logs -f chatgpt-on-wechat ``` +#### (3) 插件使用 + +如果需要在docker容器中修改插件配置,可通过挂载的方式完成,将 [插件配置文件](https://github.com/zhayujie/chatgpt-on-wechat/blob/master/plugins/config.json.template) +重命名为 `config.json`,放置于 `docker-compose.yml` 相同目录下,并在 `docker-compose.yml` 中的 `chatgpt-on-wechat` 部分下添加 `volumes` 映射: + +``` +volumes: + - ./config.json:/app/plugins/config.json +``` + ### 4. Railway部署 > Railway 每月提供5刀和最多500小时的免费额度。 (07.11更新: 目前大部分账号已无法免费部署) diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml index 76897a7..b70f3ef 100644 --- a/docker/docker-compose.yml +++ b/docker/docker-compose.yml @@ -3,10 +3,12 @@ services: chatgpt-on-wechat: image: zhayujie/chatgpt-on-wechat container_name: chatgpt-on-wechat + security_opt: + - seccomp:unconfined environment: OPEN_AI_API_KEY: 'YOUR API KEY' MODEL: 'gpt-3.5-turbo' - OPEN_AI_PROXY: '' + PROXY: '' SINGLE_CHAT_PREFIX: '["bot", "@bot"]' SINGLE_CHAT_REPLY_PREFIX: '"[bot] "' GROUP_CHAT_PREFIX: '["@bot"]' From a786fa4b7503b3034c303cfbc63f93d7d102bfe0 Mon Sep 17 00:00:00 2001 From: zhayujie Date: Fri, 21 Jul 2023 17:16:34 +0800 Subject: [PATCH 2/2] fix: reduce the expiration time and avoid storing the original message text to decrease memory usage --- channel/wechat/wechat_channel.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/channel/wechat/wechat_channel.py b/channel/wechat/wechat_channel.py index 80746d2..c547c6a 100644 --- a/channel/wechat/wechat_channel.py +++ b/channel/wechat/wechat_channel.py @@ -53,7 +53,7 @@ def wrapper(self, cmsg: ChatMessage): if msgId in self.receivedMsgs: logger.info("Wechat message {} already received, ignore".format(msgId)) return - self.receivedMsgs[msgId] = cmsg + self.receivedMsgs[msgId] = True create_time = cmsg.create_time # 消息时间戳 if conf().get("hot_reload") == True and int(create_time) < int(time.time()) - 60: # 跳过1分钟前的历史消息 logger.debug("[WX]history message {} skipped".format(msgId)) @@ -105,7 +105,7 @@ class WechatChannel(ChatChannel): def __init__(self): super().__init__() - self.receivedMsgs = ExpiredDict(60 * 60 * 24) + self.receivedMsgs = ExpiredDict(60 * 60) def startup(self): itchat.instance.receivingRetryCount = 600 # 修改断线超时时间