跳至主要內容

微信机器人(1):开通微信自动回复

upfinder原创...大约 5 分钟微信机器人

风险提示

本项目原理是通过模拟桌面端微信登录,实现微信消息收发功能,请谨慎使用!!!

前言

如何将个人微信开通自动回复功能呢?
本篇将通过使用chatgpt-on-wechat项目实现微信自动回复,并通过引入ChatGPT 将个人微信打造成一个微信智能聊天机器人;
能够在私聊、群聊中实现智能问答,能够识别语音消息,通过文字或者语音进行回复;同时还能处理文本、合成语音、并按照指令生成图片。

成果展示

TODO 项目截图

TODO bilibili视频地址

快速开始

1、环境准备

重要

本文将在windows上通过本地运行的方式演示项目,项目为python项目,故运行前需要搭建python环境,请 参考教程open in new window

2、下载项目

创建一个新的文件夹保存项目工程,如 D:\projects 打开命令行工具 windows Terminal,执行命令:

cd D:\projects
git clone https://github.com/zhayujie/chatgpt-on-wechat

3、安装依赖

进入项目文件

cd chatgpt-on-wechat

安装项目依赖,使用清华源去下载依赖,速度会更快

pip
pip install -r requirements.txt

4、修改配置

cp config-template.json config.json

打开配置文件如下

{
  "channel_type": "wx",
  "model": "",
  "open_ai_api_key": "YOUR API KEY",
  "text_to_image": "dall-e-2",
  "voice_to_text": "openai",
  "text_to_voice": "openai",
  "proxy": "",
  "hot_reload": false,
  "single_chat_prefix": [
    "bot",
    "@bot"
  ],
  "single_chat_reply_prefix": "[bot] ",
  "group_chat_prefix": [
    "@bot"
  ],
  "group_name_white_list": [
    "ChatGPT测试群",
    "ChatGPT测试群2"
  ],
  "group_chat_in_one_session": [
    "ChatGPT测试群"
  ],
  "image_create_prefix": [
    "画"
  ],
  "speech_recognition": true,
  "group_speech_recognition": false,
  "voice_reply_voice": false,
  "conversation_max_tokens": 2500,
  "expires_in_seconds": 3600,
  "character_desc": "你是ChatGPT, 一个由OpenAI训练的大型语言模型, 你旨在回答并解决人们的任何问题,并且可以使用多种语言与人交流。",
  "temperature": 0.7,
  "top_p": 1,
  "subscribe_msg": "感谢您的关注!\n这里是ChatGPT,可以自由对话。\n支持语音对话。\n支持图片输入。\n支持图片输出,画字开头的消息将按要求创作图片。\n支持tool、角色扮演和文字冒险等丰富的插件。\n输入{trigger_prefix}#help 查看详细指令。",
  "use_linkai": false,
  "linkai_api_key": "",
  "linkai_app_code": ""
}


 


































 
 
 


项目提供了多种AI能力,默认为chatGPT,还支持使用 百度文心一言讯飞星火LinkAI,由于chatGPT 需要科学上网,所以本篇中我们通过使用LinkAI的形式为大家演示

linkAI
  • use_linkai 默认关闭,设置为true后对话将通过linkai平台完成,无需海外网络环境和OpenAI账号。
  • 如果国内部分地区出现延迟较高或无法访问,可在根目录 config.json 中添加: "linkai_api_base": "https://api.link-ai.chat"

1.API Key创建open in new window

linkai_api_key 参数是 LinkAI平台的 api_key,在控制台open in new window中创建即可:

2.App Code获取 (可选)open in new window

而另一个参数 linkai_app_code 则是上一步 应用创建open in new window 时生成的,点击code即可复制 (注意是应用code不是知识库的code):

提示

同时也可以接入广场open in new window中公开的任何应用,进入应用对话后,url最后的一段字符串就是该应用的code,或者点击右上角的分享按钮也能获取到它的code。 linkai_app_code 为空时表示不使用任何应用,将直接进行请求转发,如果没有 OpenAI账号或可访问的网络环境 时可以使用该方式轻松访问。基于这个特性,目前 linkai 已经可以兼容大部分的插件。

运行项目

填写完配置后启动项目,项目模拟微信桌面端登录。

python app.py

执行命令后,会弹出一个二维码图片,使用手机微信扫码同意登录后,当出现如下图提示,代表机器人已启动成功。 这时,其他人便能给你发消息,并收到智能回复了,效果如下图。

思考

聪明的你应该已经发现了一些问题,例如。

  1. 发送的消息和接收的消息前边都是以bot开头的,如果不想使用这个开头该如何设置呢?
  2. 如果需要支持群聊,应该如何设置实现呢?
  3. LinkAI 的使用是收费的,注册创建ApiKey会免费赠送600积分,如果不想使用他的AI能力,能不能自己实现一个机器人免费使用呢,自定义实现一些个性化回复呢?

相关信息

以上问题的答案都是肯定的,你可以先仔细观察 config.json 中的配置项,下一期,我们会通过一个具体的实例,详细讲解这些配置项。

下期预告

下一期我们将通过源码分析的形式,梳理自动回复整个流程的逻辑与具体实现,为后续我们实现自己的售货机器人打下理论基础

微信扫一扫 关注该公众号

上次编辑于:
评论
  • 按正序
  • 按倒序
  • 按热度
Powered by Waline v2.15.8