当前位置:   article > 正文

在微信公众号中加入ChatGPT聊天的方法_chatgpt on wechat

chatgpt on wechat

1 介绍

开源项目 "chatgpt-on-wechat" 支持通过微信公众号进行调用,这意味着用户可以在与公众号的交互中体验 ChatGPT。由于服务是部署在远端服务器上的,因此用户只需拥有一部手机,就可以在任何环境下与 ChatGPT 进行交流。例如:


为了实现这一功能,至少需要以下资源:

  • 拥有 OPENAI 账号,并能通过 token 来调用聊天工具。
  • 注册并管理一个微信公众号。
  • 拥有一个配备域名的服务器,或者可以使用托管服务器。

实现这项功能的工作流程可以分为两个主要步骤:

  • 在服务器上部署并配置 chatgpt-on-wechat 服务。
  • 在微信公众号后台设置并链接服务器。

虽然 chatgpt-on-wechat 的开源项目中已经提供了详细的使用指南,但在实际部署过程中,我还是遇到了一些小问题。以下记录了我操作的大致步骤,及注意事项。

chatgpt-on-wechat 帮助文档:https://github.com/zhayujie/chatgpt-on-wechat/blob/master/channel/wechatmp/README.md

2 方法

2.1 服务器端配置

下载配置文件:

$ wget https://open-1317903499.cos.ap-guangzhou.myqcloud.com/docker-compose.yml

    修改 yml 文件,我在其中加入了目录映射,以方便后续调试;另外,千万注意映射端口。由于该项目默认以普通聊天模型启动,因此并未对外映射端口。然而,微信公众号的服务模型需要通过 Web 方式提供服务,这就需要端口进行外部映射。

       volumes:
          - /home/ubuntu/wechat/:/opt/wechat/```
       ports:
          - "80:80"
    • 1
    • 2
    • 3

    启动镜像

    $ su # 切换 root 用户
    $ apt-get install docker-compose
    $ docker-compose up -d
    $ docker images
    • 1
    • 2
    • 3


    用 docker images 可以看到 zhayujie/chatgpt-on-wechat 大小为 1.48GB,也不算太大。

    进入 docker:

    $ docker exec -it chatgpt-on-wechat bash

      如果帐号主体为个人,则无法开通微信认证。个人用户在 config.py 中需设置 channel_type 为 wechatmp。

      修改 config.json,至少设置以下内容:

      "channel_type": "wechatmp",     # 如果通过了微信认证,将"wechatmp"替换为"wechatmp_service",可极大的优化使用体验
      "wechatmp_token": "xxxx",       # 微信公众平台的Token
      "wechatmp_port": 80,            # 微信公众平台的端口,需要端口转发到80或443
      "wechatmp_app_id": "xxxx",      # 微信公众平台的appID
      "wechatmp_app_secret": "xxxx",  # 微信公众平台的appsecret
      "wechatmp_aes_key": "",         # 微信公众平台的EncodingAESKey,加密模式需要
      "single_chat_prefix": [""],     # 推荐设置,任意对话都可以触发回复,不添加前缀
      "single_chat_reply_prefix": "", # 推荐设置,回复不设置前缀
      "plugin_trigger_prefix": "&",   # 推荐设置,在手机微信客户端中,$%^等符号与中文连在一起时会自动显示一段较大的间隔,用户体验不好。请不要使用管理员指令前缀"#",这会造成未知问题。
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      • 9

      设置好之后启动 app.py

      2.2 设置公众号

      • 使用浏览器登录微信公众号界面。
      • 在公众号界面,选择左侧的 " 设置与开发 " -> " 基本配置 "。
      • 进行服务器配置的修改。
      • 特别需要注意的是,服务器地址必须加上 /wx,例如:http://xxx.com/wx
      • 点击“启用”按钮。如果操作反应较慢,没有立即生效,可以稍等一会再刷新。

      如果希望提供其他公众号调试功能,可以通过以下路径进行开发调试:公众号界面 -> 开发者工具 -> 在线接口调试工具。

      由于我的微信公众号是个人号,因此并未开启客服接口,这意味着公众号无法主动发送消息,只能被动回复。微信官方对被动回复设有 5 秒的时间限制,并且最多只能重试 2 次,这就意味着只有最多 15 秒的自动回复时间窗口。也就是说,如果在 15 秒内 ChatGPT 还没有返回结果,那么就无法对用户回复。

      另外,由于对话功能需要使用 token,会产生一定的费用。因此,在我的公众号中,我会在稍微限制一下这项功能后才会开启它。

      声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/533170
      推荐阅读
      相关标签
        

      闽ICP备14008679号