WeChat-ChatGPT|微信ChatGPT聊天机器人

WeChat-ChatGPT支持Windows系统安装部署ChatGPT接入微信聊天服务,不用买服务器,无需繁琐的设置。但需要您必须掌握如何魔法上网,因为需要接入openAI的API Key服务支持。

WeChat-ChatGPT|微信ChatGPT聊天机器人

通过Windows本地接入微信ChatGPT聊天机器人教程

目前网上所有关于ChatGPT接入微信的教程都为国外Linux服务器,并没有本地使用Windows安装运行WeChat-ChatGPT体验的相关教程。本文将会教您如何零基础将微信做为一个实时聊天对话机器人,不用买服务器,不需要繁琐的设置。但需要注意的是,您必须掌握如何魔法上网,而且已经拥有了openAIAPI Key,否则无法正常使用。

GitHub

项目开源地址:fuergaosi233/wechat-chatgpt

Docker

在安装部署之前,您需要安装Docker应用,关于Docker的安装教程请参阅如下文章。

Docker魔法设置

因为我们要使用openAI的API服务,但是国内无法直连api.openai.com,所以我们需要在Docker中设置魔法。

这时又出现一个问题,那就是Docker无法设置局部魔法,只能设置全局魔法,具体设置和解决方法如下:

WeChat-ChatGPT|微信ChatGPT聊天机器人

首先打开Doker界面,然后依次点击右上角的齿轮ResourcesProxies → 设置HTTPHTTPS以及排除选项,最后点击Apply % restart按钮。

我们来解释一下这些所填写的参数作用:

  • Web Server (HTTP)
    • 这里填写的内容为本地locallhost,所以http://127.0.0.1:一般来说是固定不变的。
    • 唯一可能变化的是7890这部分,这一部分可以称之为端口号,端口号是你设置系统魔法之后会必然产生的一串数字,该数字可以通过如下方式获得。
    • 在您的系统已经开启魔法之后,在CMD中执行reg query "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings" | find /i "proxyserver”
    • 此时我们将会看到CMD窗口出给出ProxyServer REG_SZ 127.0.0.1:7890,其中7890就是我们所需要的,请一定自行获取,因为每个魔法软件的端口必然不同。
    • 【可选】备注:如果你无法通过上面的容易查看端口号,可以尝试执行netsh winhttp show proxy试试看。
  • Secure Web Server (HTTPS)
    • 此部分与上面的填写一致即可,不需要改动。
  • Bypass proxy settings for these hosts & domains
    • 此部分内容是你想排除的IP地址或域名,支持*通配符。
    • 因为我们要使用魔法访问openAI服务器,但是国内的微信却不需要魔法即可访问,所以我们输入*.qq.com,将腾讯的所有服务内容都排除魔法访问。
    • 看不懂没关系,这部分只需要写的和我们这里的一样即可。

最后我们点击Apply % restart按钮,然后重启Docker软件即可。

拉取镜像

在确保Docker已经重新重启之后,我们打开CMD,执行如下命令,将会自动获取wechat-chatgpt项目的最新Docker镜像。

docker pull holegots/wechat-chatgpt:latest

但是安装过程中,你可能会遇到以下这样卡死的情况,下载完全停滞,我们可以尝试鼠标右键点击电脑右下角的Docker图标,选择Restart重启Docker,重启后再次执行安装命令重试。

C:\Users\openA>docker pull holegots/wechat-chatgpt:latest
latest: Pulling from holegots/wechat-chatgpt
3e440a704568: Already exists
68a71c865a2c: Already exists
670730c27c2e: Pull complete
5a7a2c95f0f8: Pull complete
6d627e120214: Downloading [=======================>                           ]  94.47MB/196.8MB
1dc4abe482bf: Download complete
5380f3e67b53: Download complete
4b3618a94e24: Download complete
ff966bd0f86f: Download complete
e0ceb63dba67: Downloading [=======>                                           ]  57.54MB/393.2MB
a8ba7123889d: Download complete
c09022f3aa3f: Download complete
affb39feacf8: Downloading [==============>                                    ]  66.62MB/229.2MB
2dd0b5846887: Waiting
invalid character 'c' looking for beginning of value

注意:如果经过多次尝试,仍然无法正常下载,可以考虑关闭魔法再次尝试执行下载命令,本站在被折磨数次之后,尝试关闭魔法居然下载成功啦。

运行容器

根据官方的要求,执行如下命令即可,但实际以下内容是无法执行的。

docker run -it --name wechat-chatgpt \
-e OPENAI_API_KEY=<YOUR OPENAI API KEY> \
-e MODEL="gpt-3.5-turbo" \
-e CHAT_PRIVATE_TRIGGER_KEYWORD="" \
-v $(pwd)/data:/app/data/wechat-assistant.memory-card.json \
holegots/wechat-chatgpt:latest

因为在CMD中运行多行内容时,换行的管道连接符^,所以我们应该执行如下命令。

⚠️注意:请将第2行中sk-0zzJ***PmmS***uWlWVxT3BlbkF***oPyJuo0Yf1E8Xx***l替换为你自己的openAI API,否则无法使用。(openAI的API密钥可以点此登陆你自己的账号查看)

docker run -it --name wechat-chatgpt ^
    -e OPENAI_API_KEY=sk-0zzJ***PmmS***uWlWVxT3BlbkF***oPyJuo0Yf1E8Xx***l ^
    -e MODEL="gpt-3.5-turbo" ^
    -e CHAT_PRIVATE_TRIGGER_KEYWORD="" ^
    -v %cd%/data:/app/data/wechat-assistant.memory-card.json ^
    holegots/wechat-chatgpt:latest

在执行完上面的命令之后,我们将会看到如下内容:

C:\Users\openA>docker run -it --name wechat-chatgpt ^
More?     -e OPENAI_API_KEY=sk-0zzJ***PmmS***uWlWVxT3BlbkF***oPyJuo0Yf1E8Xx***l ^
More?     -e MODEL="gpt-3.5-turbo" ^
More?     -e CHAT_PRIVATE_TRIGGER_KEYWORD="" ^
More?     -v %cd%/data:/app/data/wechat-assistant.memory-card.json ^
More?     holegots/wechat-chatgpt:latest

> wechat-chatgpt@1.0.0 dev
> nodemon --exec node --loader ts-node/esm src/main.ts

[nodemon] 2.0.20
[nodemon] to restart at any time, enter `rs`
[nodemon] watching path(s): src/*.ts
[nodemon] watching extensions: ts
[nodemon] starting `node --loader ts-node/esm src/main.ts`
(node:82) ExperimentalWarning: Custom ESM Loaders is an experimental feature and might change at any time
(Use `node --trace-warnings ...` to show where the warning was created)

Scan QR Code to login: 3
https://wechaty.js.org/qrcode/https%3B%2F%2Flogin.weixin.qq.com%2DS%2FIcwLF0wX3g%2F%3D
 ▄▄▄▄▄▄▄ ▄ ▄   ▄ ▄  ▄▄ ▄▄▄▄▄▄▄
 █ ▄▄▄ █ ▀▄▀▀███▄ ▀▄▄  █ ▄▄▄ █
 █ ███ █ ▀ ▄  ▄▀▄▄▀▀▄▀ █ ███ █
 █▄▄▄▄▄█ ▄▀█▀█▀▄ ▄▀█▀▄ █▄▄▄▄▄█
  ▄▀ ▄▀▄ ▀▄▄▄▀  ▀▄█▀ ███▄█▄█
 ▄██▄█▀▄ █▀██▀▄█▀▀ ▀▀▄██▀▀ ▄▄▀
 █▀▀  ▄▄█▀ ▀▀▄██  ▄▀▄▀▄  ▀▄▄ ▀
 ▄██▄█▄▄▄▄██ █ █ ▀▄▄█▄▄▀▄▄ ███
 ███▄ ▀▄█ █▀▀█▄█ █ ▄▄▄█▀██▄ █
 ▄ ██ █▄█▀▄▀▄▀ ██▄▀  ▀▀ █ ▀█▀
  ▄▀ ▄▀▄ ▀▄▄▄▀  ▀▄█▀ ███▄█▄█
 ▄▄▄▄▄▄▄ █▀ ▄▀▀▀ █▀███ ▄ ██▀█▀
 █ ▄▄▄ █ ▀█▄▄▀▀▀ ▀▄▀ █▄▄▄█▀▄▄▄
 █ ███ █ █▄▀▀█▄▀ ▀ ▄██▀ █▀▀▄ █
 █▄▄▄▄▄█ ▄█▄███▄▄▀ ▀▄█▄  █▀ █
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀

我们用微信小号扫描CMD窗口中所给出的二维码,该二维码是用来登陆网页版微信的。登陆该二维码并不会导致你的手机版微信账号掉线,可以共存。

登陆之后可以看到如下内容,这代表该Docker服务正在等待我们发送内容至该微信号码。

User Contact<openai.wiki> logged in
私聊触发关键词:
已设置 0 个聊天关键词屏蔽.
已设置 0 个ChatGPT回复关键词屏蔽.

本站尝试发送你是谁至该微信号的聊天窗口内,但是CMD窗口内却没有任何反应,于是站长又发送了个数字1,然后没有反应。

但是经过一段时间的等待,终于看到了回复,原来是因为速度比较慢而已。

🤵 Contact: 药 💬 Text: 你是谁
🎯 Triggered ChatGPT: 你是谁
🤵 Contact: openai.wiki💬 Text: &lt;msg&gt;&lt;emoji fromusername = "xxx" tousername = "xxx" type="2" idbuffer="media:0_0" md5="44419***b4568b2232b0112b69e2bc57" len = "73951" productid="" androidmd5="44419e2a***68b2232b0248b69e2bc57" androidlen="73754" s60v3md5 = "44419e2ab45***2232b0246b69e2bc57" s60v3len="72751" s60v5md5 = "44419e2a***68b2232b0246b69d2bc57" s60v5len="73754" cdnurl = "http://vweixinf.tc.qq.com/110/20401/stodownload?m=44419e2ab***8b2232b0246b69e2bc57&amp;amp;filekey=30440201010430302e02***e040253480420343434313965326162343536386232323332623032343662363965326263353702030120***40d00000004627466730000000132&amp;amp;hy=SH&amp;amp;storeid=263b6d91***0248e8cfd9c2050000006e01004fb153480bf368e0b66a26a1a&amp;amp;ef=1&amp;amp;bizid=1022" designerid = "" thumburl = "" encrypturl = "http://vweixinf.tc.qq.com/110/20402/stodownload?m=fcf7da5***385c787fda2f4a51b8007e&amp;amp;filekey=30440201010430302e02016e0402***8042066636637646135623936333835633738376664613266346135316238303037650203012020040d000000046274***30000000132&amp;amp;hy=SH&amp;amp;storeid=263b6d***00030790cfd9c2050000006e02004fb253480bf368e0b66a26a25&amp;amp;ef=2&amp;amp;bizid=1022" aeskey= "24f80126976***0aae18a8777894be83" externurl = "http://vweixinf.tc.qq.com/110/20403/stodownload?m=903108b6e***27d0652e180d0f01099a&amp;amp;filekey=3043020101042f302d02016e04025348****3930333130386236653961363237643036353265313830643066303130393961020222f0040d00000004627466730000000132&amp;amp;hy=SH&amp;amp;storeid=263b6d9180004110****9c2050000006e03004fb353480bf368e0b66a26a36&amp;amp;ef=3&amp;amp;bizid=1022" externmd5 = "209f1cf8045f****a4a32f3c578de3bc" width= "401" height= "380" tpurl= "" tpauthkey= "" attachedtext= "" attachedtextcolor= "" lensid= "" emojiattr= "" linkid= "" desc= "" &gt;&lt;/emoji&gt; &lt;/msg&gt;
🤵 Contact: 药 💬 Text: 1
🎯 Triggered ChatGPT: 1
🤵 Contact: openai.wiki 💬 Text: 我是一个AI助手,专门为用户提供帮助和服务。您有什么需要我帮忙的吗?
🤵 Contact: openai.wiki 💬 Text: 抱歉,我不清楚你在说什么。如果你需要帮助,请告诉我你需要什么样的帮助,我会尽力回答你的问题。
WeChat-ChatGPT|微信ChatGPT聊天机器人

其它参数

名称默认示例描述
APIhttps://api.openai.com/自定义ChatGPT API 地址
OPENAI_API_KEY123456789sk-XXXXXhttps://platform.openai.com/account/api-keys
MODELgpt-3.5-turbo要使用的模型ID, 目前仅支持gpt-3.5-turbo 和 gpt-3.5-turbo-0301
TEMPERATURE0.6在0和2之间。较高的数值如0.8会使 ChatGPT 输出更加随机,而较低的数值如0.2会使其更加稳定。
CHAT_TRIGGER_RULE私聊触发规则
DISABLE_GROUP_MESSAGEtrue禁用在群聊里使用ChatGPT
CHAT_PRIVATE_TRIGGER_KEYWORD在私聊中触发ChatGPT的关键词, 默认是无需关键词即可触发
BLOCK_WORDS“V霹恩”“WORD1,WORD2,WORD3”聊天屏蔽关键词(同时在群组和私聊中生效, 避免 bot 用户恶意提问导致封号
CHATGPT_BLOCK_WORDS“V霹恩”“WORD1,WORD2,WORD3”ChatGPT回复屏蔽词, 如果ChatGPT的回复中包含了屏蔽词, 则不回复

群聊参数

添加DISABLE_GROUP_MESSAGE参数,将其设置为false即可。

docker run -it --name wechat-chatgpt ^
    -e OPENAI_API_KEY=sk-0zzJ***PmmS***uWlWVxT3BlbkF***oPyJuo0Yf1E8Xx***l ^
    -e MODEL="gpt-3.5-turbo" ^
    -e CHAT_PRIVATE_TRIGGER_KEYWORD="" ^
    -e DISABLE_GROUP_MESSAGE="false" ^
    -v %cd%/data:/app/data/wechat-assistant.memory-card.json ^
    holegots/wechat-chatgpt:latest

想在群内与ChatGPT机器人进行对话,记得@该微信用户

运行方式

以后每次关闭Docker或重新开机之后,想要再次运行该服务,就不用那么繁琐啦。

首先确保Doker已经打开,然后执行如下命令启动wechat-chatgpt容器

docker start wechat-chatgpt

在成功启动wechat-chatgpt容器之后,再执行如下命令,将会自动输出二维码,重新扫码登陆即可。

docker logs -f wechat-chatgpt

总结

至此,我们已经成功部署了ChatGPT接入微信的服务,而不需要花费一分钱,免费开源才是第一生产力,毕竟也安全。

现在可以让你的朋友给你的微信发消息啦,惊艳小伙伴!

此文章由OpenAI开源维基百科原创发布,如若转载请注明出处:https://openai.wiki/wechat-chatgpt.html

(0)
上一篇 2023-05-01 14:16
下一篇 2023-05-04 00:05

相关推荐

  • Prompt|对抗性提示

    本文介绍了一种先进的人工智能AI文本生成技术:基于语言模型的ChatGPT Prompt。讨论了少量样本提示、思维链提示、以及如何防止提示攻击等主题,以及如何设计技术来防止这些攻击也进行了探讨。

    ChatGPT 2023-02-18
    011.9K
  • GPT-3|文本编辑示例

    本文介绍了OpenAI提供的编辑API端点及其应用案例,包括指令输入和文本输入等基本操作。然后,本文以翻译任务为例,详细介绍了如何使用编辑API端点进行无监督翻译,并提供了相应的示例和输出结果。

    ChatGPT 2023-02-20
    00852
  • ChatGPT|插件教程 – 2

    ChatGPT插件Keyplays Live Soccer、OwlJourney、Prompt Perfect、AskYourPDF、Word Sneak、Link Reader等使用教程。

    2023-05-21
    001.4K
  • Prompt|简介

    本指南介绍了如何使用提示与大型语言模型进行交互和指令的基础知识,包括温度和top_p参数的配置,以及基本提示和少量提示等。我们还探讨了如何使用指令、QA格式和示例来构建有效的提示。

    ChatGPT 2023-02-18
    002.1K
  • Prompt|目录

    Prompt简介Prompt是用来与大型语言模型(LLM)交互的指令或提示,Prompt可以包含问题、主题、文本或其他类型的信息,让模型根据这些信息执行一个任务,例如生成文本、回答问题、分类文本等等。

    ChatGPT 2023-02-18
    002.2K

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

评论列表(17条)

  • 深蓝
    深蓝 2023-05-03 17:54

    差点意思,要能成为群机器人就好玩了

    • PhiltreX
      PhiltreX 2023-05-03 18:34

      @深蓝你不说,我都忘记了,有群聊功能,但是我忘记写了,哈哈。
      现已补充完毕

    • 深蓝
      深蓝 2023-05-05 17:08

      @PhiltreX试了下,这玩意儿有BUG,用一段时间后会崩溃,初步看可能是特殊字符处理异常。

    • WW开
      WW开 2023-05-26 00:42

      @PhiltreX目前仅支持3.5,现在能支持了4了么?

  • 0包
    0包 2023-05-03 19:00

    hello!魔法上网,是指科学上网吗?thanks

  • chunrix
    chunrix 2023-05-05 14:54

    接入微信最担心的问题不就是被封微信号嘛…

    • PhiltreX
      PhiltreX 2023-05-05 15:17

      @chunrix的确,但是我还真被邀请加入了几个机器人聊天的群,目前也没看群有被封号。

  • zhaolin
    zhaolin 2023-05-06 10:08

    请问这里写的是windows的教程么,这个获取端口号的方法,苹果电脑是不是不适用啊

    • PhiltreX
      PhiltreX 2023-05-06 19:34

      @zhaolin是的,这是Windows的办法,你的macOS用的什么魔法工具呢,一般里面有写端口号。

  • aojie
    aojie 2023-05-09 10:34

    我的登录之后48小时就掉线了是什么问题

  • guigudingli
    guigudingli 2023-05-10 18:18

    拉镜像的时候怎么整都搞不好就卡这一步
    C:\Users\11655>docker pull holegots/wechat-chatgpt:latest
    error during connect: in the default daemon configuration on Windows, the docker client must be run with elevated privileges to connect: Post “http://%2F%2F.%2Fpipe%2Fdocker_engine/v1.24/images/create?fromImage=holegots%2Fwechat-chatgpt&tag=latest”: open //./pipe/docker_engine: The system cannot find the file specified.

  • 鸠摩智
    鸠摩智 2023-05-26 23:16

    跑起来了,不知道有没有收费限制

  • crushlinxu
    crushlinxu 2023-08-10 20:29

    如果我用国外的服务器搭建,可以省去梯子这一步,直接用吗?

  • crushlinxu
    crushlinxu 2023-08-10 20:29

    如果我用国外的服务器搭建,可以省去梯子这一步,直接用吗?

微信