手把手搭建微信机器人,帮你雇一个24小时在线的个人 AI 助理(上)

上一篇,带领大家薅了一台腾讯云服务器:玩转云服务:手把手带你薅一台腾讯云服务器,公网 IP。

基于这台服务器,今天我们一起动手捏一个基于 LLM 的微信机器人。

0. 前置准备

除了自己常用的微信账号以外,还需要准备一个微信小号(强烈建议用小号,否则有封号的风险,且小号须实名认证!)。

如何实名认证:在手机端微信中,依次点击:我 -> 服务 -> 钱包 -> 底部的身份信息。

最终我们会把这个小号改造成一个基于 LLM 的微信机器人,它可以在你的微信聊天窗口中,回答你的一切问题,就像你用 GPT/Kimi 的聊天窗口一样,不过它嵌入在你的微信 APP 中,随时唤起,使用更加方便。

此外,我们还可以通过加入其他插件,赋予它更多智能,将其打造成一个个性化的 AI 助理,帮你完成更多复杂任务。

1. 准备 LLM 模型

如果你有 OpenAI 的账号,能够使用 GPT 自然是再好不过的。

如果没有,也没关系,国内也有很多 GPT 平替。

本文,将以 智谱的 GLM 为例,带大家走完整个流程,后续你想换用任意 LLM 都一样的~

智谱 GLM 传送门:https://open.bigmodel.cn/

进入后,注册一个账号,认证成功后,新用户会赠送 18 元额度,后续使用过程中注意账户余额哦,不过体验是绰绰有余了~

接下来,需要拿到 GLM 的 API Key。

如果之前注册过,直接在这里取用:

如果没有,点击这里,新生成一个:

2. 配置环境

在上一篇手把手带你薅一台云服务器,我们已经新建了一个名叫 ai 的 Python 虚拟环境。

如果你也参照上一篇配置好了 VS Code 远程登陆,那么进来后默认就是 ai 的虚拟环境,后面在这里进行配置文件的修改将会非常方便:

接下来,我们直接在这个环境中进行项目安装。

2.1 chatgpt-on-wechat 安装

本次应用,将主要基于 chatgpt-on-wechat 这个开源项目。

先通过 git 将这个项目下载下来:

git clone https://github.com/zhayujie/chatgpt-on-wechat

然后安装必要的包:

# 进入项目目录
cd chatgpt-on-wechat/
# 更换 pypi 源,加速库的安装(强烈推荐)
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
pip install -r requirements.txt
pip install -r requirements-optional.txt
pip install zhipuai

2.2 修改配置文件

首先在项目根目录下,将模板配置文件复制一份:

# 复制一份配置文件,方便修改
cp config-template.json config.json

如果你已经实现了 VS Code 远程登陆,在 VS Code 编辑器中修改非常方便,如下图所示:右侧栏是模板配置,左侧是我们复制的配置文件,因为我们的 LLM 采用的是 GLM,所以这里修改为zhipu_ai 的api key 和 url。

config.json 还有几个参数需要注意一下:

  • “single_chat_prefix”: [“bot”,“@bot”]:代表私聊时,你召唤机器人时要加的前缀,如果不需要任何前缀,也可以置空;
  • “single_chat_reply_prefix”: "[bot] ":代表私聊时,机器人回复你时,要加的前缀,同样可以置空
  • “group_chat_prefix”: [“@bot”]:代表群聊时,你召唤机器人时要加的前缀
  • “group_name_white_list”: [“ALL_GROUP”]:代表哪些群里可以使用机器人
  • “character_desc”: 你给机器人的人设提示词

此外,除了在 VS Code 编辑器中修改以外,宝塔面板中也支持文件修改,左侧菜单栏找到 文件,找到项目文件所在目录,双击config.json进行修改,修改后记得手动保存:

3. 开始部署

3.1 服务启动

回到项目根目录,采用如下命令:

# 启动服务,需要回到项目根目录
cd ../..
# 新建日志文件
touch nohup.out
# 后台挂起启动命令,即使终端被kill,服务也不会中断;
# tail -f nohup.out 代表实时打印日志最后几行
nohup python app.py & tail -f nohup.out

3.2 服务测试

服务启动成功后,你会在终端看到如下输出:

用你的微信小号扫码登录,本质上是在这台服务器上启动一个你的微信客户端。

一旦出现 Start auto replying ,代表启动成功了,此时你可以用你的微信大号,给小号私聊发一条信息,稍等片刻,会收到已经被机器人托管的小号给你的回复。

同时在终端,也会看到如下日志信息。

至此,你扫码的微信已经变成一个机器人了,需要注意的是:必须保证小号的手机微信在线,否则远端也会下线。

3.3 报错解决

如果启动失败,需要找到并解决 bug 后再重新启动,为此可以通过如下命令找到服务对应的进程ID,然后 kill 掉。

ps aux |grep python
kill -9 91548

写在最后

至此,我们一起走完了 “搭建一个微信机器人” 的完整流程。

也许看到这里的你,会有个疑问:拿到这个微信机器人,有什么用?

上述步骤只是带大家快速走完整个流程,并不代表微信机器人只能简单地完成对话任务~

chatgpt-on-wechat 项目中还支持多种插件,从而实现查天气、查快递、设置定时提醒等。。。

先放两张图给大家直观感受下~

敬请期待(下篇预告): chatgpt-on-wechat插件安装和使用,给微信机器人装上三头六臂。

如果本文对你有帮助,欢迎点赞收藏备用!

我是猴哥,一直在做 AI 领域的研发和探索,会陆续跟大家分享路上的思考和心得,以及干货教程。

新朋友欢迎关注 “猴哥的AI知识库” 公众号,下次更新不迷路。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/782204.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Python之numpy常用知识点总结

文章目录 前言知识点1:np.maximum知识点2:ndarray数据类型知识点3:数据运算知识点4:数组和标量间的运算知识点5:数组的索引和切片知识点6:数组的转置和轴对称知识点7:检索数组元素 前言 在机器学…

【应急响应】Windows应急响应 - 基础命令篇

前言 在如今的数字化时代,Windows系统面对着越来越复杂的网络威胁和安全挑战。本文将深入探讨在Windows环境下的实战应急响应策略。我们将重点关注实际应急响应流程、关键工具的应用,以及如何快速准确地识别和应对安全事件。通过分享实际案例分析&#…

基于S32K144驱动NSD8381

文章目录 1.前言2.芯片介绍2.1 芯片简介2.2 硬件特性2.3 软件特性 3.测试环境3.1 工具3.2 架构 4.软件驱动4.1 SPI4.2 CTRL引脚4.3 寄存器4.4 双极性步进电机驱动流程 5.测试情况6.参考资料 1.前言 最近有些做电磁阀和调光大灯的客户需要寻找国产的双极性步进电机驱动&#xf…

QT入门笔记-自定义控件封装 30

具体代码如下: QT core guigreaterThan(QT_MAJOR_VERSION, 4): QT widgetsCONFIG c17# You can make your code fail to compile if it uses deprecated APIs. # In order to do so, uncomment the following line. #DEFINES QT_DISABLE_DEPRECATED_BEFORE0x060000 …

Spring AOP源码篇四之 数据库事务

了解了Spring AOP执行过程&#xff0c;再看Spring事务源码其实非常简单。 首先从简单使用开始, 演示Spring事务使用过程 Xml配置&#xff1a; <?xml version"1.0" encoding"UTF-8"?> <beans xmlns"http://www.springframework.org/schema…

软件架构之数据库系统(2)

软件架构之数据库系统&#xff08;2&#xff09; 3.4 事务管理3.4.1 并发控制3.4.2 故障与恢复 3.5 备份与恢复3.6分布式数据库系统3.6.1分布式数据库的概念3.6.2 分布式数据库的架构 3.7 数据仓库3.7.1 数据仓库的概念3.7.2数据仓库的结构3.7.3 数据仓库的实现方法 3.8 数据挖…

超高精电容传感器PCAP01调试+LABVIEW数据可视化调试手记

PCAP01超高精电容传感芯片STM32LabView可视化 文章目录 PCAP01超高精电容传感芯片STM32LabView可视化一、PCAP01介绍1.1、PCAP01引脚定义1.2、电容测量1.3、温度测量1.4、PCAP典型测试电路 二、PCAP01的STM32驱动2.1、SPI协议配置2.2、PCAP01浮空电容测量内部温度测量操作流程 …

计算机系统简述

目标 计算机世界并非如此神秘。相反&#xff0c;计算机是非常“确定”的一个系统&#xff0c;即在任何时候&#xff0c;在相同的方法、相同的状态下&#xff08;当然还包括相同的起始条件&#xff09;&#xff0c;同样的问题必然获得相同的结果。其实&#xff0c;计算机并不是…

前端实现无缝自动滚动动画

1. 前言: 前端使用HTMLCSS实现一个无缝滚动的列表效果 示例图: 2. 源码 html部分源码: <!--* Author: wangZhiyu <w3209605851163.com>* Date: 2024-07-05 23:33:20* LastEditTime: 2024-07-05 23:49:09* LastEditors: wangZhiyu <w3209605851163.com>* File…

强化学习的数学原理:时序差分算法

概述 之前第五次课时学习的 蒙特卡洛 的方法是全课程当中第一次介绍的第一种 model-free 的方法&#xff0c;而本次课的 Temporal-Difference Learning 简称 TD learning &#xff08;时序差分算法&#xff09;就是第二种 model-free 的方法。而对于 蒙特卡洛方法其是一种 non…

使用大漠插件进行京东联盟转链

由于之前开发了一套使用api转链的接口在前面几个月失效了。因为京东联盟系统升级&#xff0c;导致之前可以转的链接现在必须要升级权限才可以。但是升级条件对于我们这些自己买东西转链想省点钱的人来说基本上达不到。 所以&#xff0c;基于这种情况。我之前研究过大漠插件&am…

数据库的学习(4)

一、题目 1、创建数据表qrade: CREATE TABLE grade(id INT NOT NULL,sex CHAR(1),firstname VARCHAR(20)NOT NULL,lastname VARCHAR(20)NOT NULL,english FLOAT,math FLOAT,chinese FLOAT ); 2、向数据表grade中插入几条数据: (3,mAllenwiiliam,88.0,92.0 95.0), (4,m,George&…

第七篇——攻谋篇:兵法第一原则——兵力原则,以多胜少

目录 一、背景介绍二、思路&方案三、过程1.思维导图2.文章中经典的句子理解3.学习之后对于投资市场的理解4.通过这篇文章结合我知道的东西我能想到什么&#xff1f; 四、总结五、升华 一、背景介绍 微观层面上&#xff0c;也有很多值得深度思考的问题 二、思路&方案 …

用ThreadLocal解决线程隔离问题

存在的以下代码所示的线程隔离问题&#xff1a; package study.用ThreadLocal解决线程隔离问题;/*线程隔离 - 在多线程并发场景下&#xff0c;每个线程的变量都应该是相互独立的线程A&#xff1a;设置&#xff08;变量1&#xff09; 获取&#xff08;变量1&#xff09;线程B&a…

瑞芯微rk356x TF卡烧写选择指定的屏幕打印烧写的过程

rk356x中TF卡烧写屏幕选择 1、开发环境2、问题描述3、解决办法4、总结5、 图片展示1、开发环境 系统:linux系统 芯片:356x 显示:多屏显示(HDMI, MIPI, LVDS, EDP) 2、问题描述 由于在多屏显示的情况下,HDMI屏在LVDS、MIPI或者EDP协同下,默认情况下,在TF卡烧录过程中…

论文润色最强最实用ChatGPT提示词指令

大家好&#xff0c;感谢关注。我是七哥&#xff0c;一个在高校里不务正业&#xff0c;折腾学术科研AI实操的学术人。关于使用ChatGPT等AI学术科研的相关问题可以和作者七哥&#xff08;yida985&#xff09;交流&#xff0c;多多交流&#xff0c;相互成就&#xff0c;共同进步&a…

C++语言相关的常见面试题目(二)

1.vector底层实现原理 以下是 std::vector 的一般底层实现原理&#xff1a; 内存分配&#xff1a;当创建一个 std::vector 对象时&#xff0c;会分配一块初始大小的连续内存空间来存储元素。这个大小通常会随着 push_back() 操作而动态增加。 容量和大小&#xff1a;std::vec…

【Linux】进程间的通信----管道

&#x1f490; &#x1f338; &#x1f337; &#x1f340; &#x1f339; &#x1f33b; &#x1f33a; &#x1f341; &#x1f343; &#x1f342; &#x1f33f; &#x1f344;&#x1f35d; &#x1f35b; &#x1f364; &#x1f4c3;个人主页 &#xff1a;阿然成长日记 …

妈妈带女儿美在心里

在这个充满温情与惊喜的午后&#xff0c;阳光温柔地洒落在每一个角落&#xff0c;仿佛连空气弥漫着幸福的味道。就在这样一个平凡的时刻&#xff0c;一段关于爱与成长的温馨画面&#xff0c;悄然在网络上绽放&#xff0c;引爆了无数人的心弦——#奚梦瑶2岁女儿身高#&#xff0c…

在 VS Code 中自动化 Xcode 项目编译和调试

在 VS Code 中自动化 Xcode 项目编译和调试 在日常的开发工作中&#xff0c;Xcode 是 macOS、iOS、watchOS 和 tvOS 应用程序开发的主要工具。为了提高工作效率&#xff0c;许多开发者选择在 Visual Studio Code (VS Code) 中编辑代码&#xff0c;并希望能够直接从 VS Code 启…