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

AI码上来 2024-09-15 12:01:01 阅读 72

上一篇,带领大家薅了一台腾讯云服务器:玩转云服务:手把手带你薅一台腾讯云服务器,公网 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 将这个项目下载下来:

<code>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。

<code>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 服务启动

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

<code># 启动服务,需要回到项目根目录

cd ../..

# 新建日志文件

touch nohup.out

# 后台挂起启动命令,即使终端被kill,服务也不会中断;

# tail -f nohup.out 代表实时打印日志最后几行

nohup python app.py & tail -f nohup.out

3.2 服务测试

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

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

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

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

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

3.3 报错解决

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

<code>ps aux |grep python

kill -9 91548

写在最后

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

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

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

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

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

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

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

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

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



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。