-on-介绍
打造微信AI超级助手,我们需要借助-on-来实现。
-on- (CoW) 项目是一个基于技术构建的智能聊天机器人,该项目利用了GPT3.5/4.0 API以及框架,支持在个人微信、微信公众号和企业微信上部署。CoW 能够生成文本、语音和图片,并且能够访问操作系统和互联网,提供丰富的互动体验。
该项目的最新版本具备以下功能:
多端部署:支持接入个人微信、微信公众号、企业微信应用,增强了项目的适用范围和灵活性。
基础对话:实现了私聊及群聊的消息智能回复功能,支持多轮会话的上下文记忆,以及GPT-3, GPT-3.5, GPT-4, 文心一言模型等多种语言模型。
语音识别:可以识别语音消息,并通过文字或语音回复,支持多种语音模型如azure, baidu, , 等。
图片生成:支持图片生成和图生图(如照片修复),可使用Dell-E, , , 等多种模型。
丰富插件:提供个性化插件扩展功能,包括多角色切换、文字冒险游戏、敏感词过滤、聊天记录总结等插件,增加了项目的可玩性和实用性。
Tool工具:支持与操作系统和互联网的交互,能进行最新信息搜索、数学计算、天气和资讯查询、网页总结等操作,基于-tool-hub实现。
知识库:允许用户通过上传知识库文件来自定义专属的机器人,可以用作数字分身、领域知识库或智能客服,基于技术实现。
一、环境推荐
官方推荐的版本为 3.7.1 ~ 3.9.X 之间,太高或者太低,均可能出现问题,我一开始就是版本太高,程序运行过程中出现异常。
安装教程我就不写了,网上有很多。
二、获取API
1.使用 API
使用 API,这个前提是你的 API有余额
查询账号是否有余额:
查询账号地址:
如果之前没有创建过,手动创建一个就可以,是sk开头的这个
默认情况下,我们只需要修改model、、proxy三个属性就可以
2.使用官方提供的应用
进入官网
进入控制台
创建应用
填写完应用名称和描述一键生成
这里我选择了轻应用,如果你想把自己的资料投喂给机器人可以使用知识库应用。
创建完可以进行修改调试,应用code在后面配置.json时需要。
在插件配置这块,可以根据自己需求来选择相应的插件进行配置。
可以在我的账户查看余额
在应用接入里面创建Api Key,这个在后面配置.json时需要
三、运行-on-程序
.json配置:
默认配置说明
我们在后面创建应用详情页,可以得到应用code;在应用接入页面,得到api key。
使用:
在.json配置里,将后面的false改为true,然后将和填写好,保存就可以了
"use_linkai": true,
"linkai_api_key": "",
"linkai_app_code": ""
四种方式部署
部署:
使用部署无需下载源码和安装依赖,只需要拉取镜像并根据 -.yml 配置文件启动容器即可。
前提是安装好 及 -,安装成功的表现是执行 -v 和 (或 – ) 可以查看到版本号,可前往 官网 进行下载。
(1) 配置 -.yml
执行以下命令下载 -.yml:
wget https://open-1317903499.cos.ap-guangzhou.myqcloud.com/docker-compose.yml
接着打开文件,修改或添加所需的配置,如 和 T 等必填配置。
(2) 启动容器
在 -.yml 所在目录下执行以下命令启动容器:
sudo docker-compose up -d
运行 sudo ps 能查看到 NAMES 为 -on- 的容器即表示运行成功。
提示
如果 – 是 1.X 版本 则需要执行 sudo – up -d 来启动容器
该命令会自动去 hub拉取 版本的镜像, 镜像会在每次项目 新的版本时生成
最后运行以下命令可查看容器运行日志,扫描日志中的二维码即可完成登录:
sudo docker logs -f chatgpt-on-wechat
(3) 停止容器
执行以下命令可以关闭服务:
sudo docker-compose down
注意:如果修改了 -.yml 中的配置,需要关闭容器后再重新启动才能生效,只执行 是不起作用的。
本地运行
(1) 下载源码
在命令行使用 git 克隆项目:
git clone https://github.com/zhayujie/chatgpt-on-wechatcd chatgpt-on-wechat/
进入项目目录
cd 项目目录
进入后,我们分两次执行以下指令
(2) 安装依赖
我们分两次执行以下指令
pip3 install -r requirements.txt # 必选依赖
pip3 install -r requirements-optional.txt # 可选依赖,语音、tool插件等功能需要
(3) 配置
复制项目中的模板文件 -.json,来生成最终起效果的配置文件.json,你可以通过执行以下命令完成:
cp config-template.json config.json
然后打开 .json 文件,添加所需配置。
(4) 运行
一切准备就绪,可以启动程序了,直接在项目目录下执行:
python3 app.py
扫描输出的二维码即可完成登录。如果你使用的是 等IDE,就更方便了,点击运行按钮就可以直接运行。
服务器部署
(1) 下载源码
在命令行使用 git 克隆项目并进入目录:
git clone https://github.com/zhayujie/chatgpt-on-wechatcd chatgpt-on-wechat/
(2) 安装依赖
pip3 install -r requirements.txt # 必选依赖
pip3 install -r requirements-optional.txt # 可选依赖,语音、tool插件等功能需要
(3) 配置
复制项目中的模板文件 -.json,来生成最终起效果的配置文件.json,你可以通过执行以下命令完成:
cp config-template.json config.json
然后打开 .json 文件,添加所需配置。
(4) 运行程序
使用nohup命令在后台运行程序,即使断开ssh连接也能保持运行:
touch nohup.out # 首次运行需要新建日志文件
nohup python3 app.py & tail -f nohup.out # 在后台运行程序并通过日志输出二维码
扫码登录后程序即可运行于服务器后台,此时可通过 ctrl+c 关闭日志,不会影响后台程序的运行。在日志关闭后如果想要再次打开只需输入 tail -f nohup.out。
(5) 停止程序
如果想要关闭程序可以 执行 kill -9
来完成,执行以下命令可以查看当前进程的 pid:
ps -ef | grep app.py | grep -v grep
部署
一键部署需要注册时间满半年的账号,每月会提供5美金和最多500小时的免费额度。部署仅适用于个人微信,暂不支持企业微信和公众号的部署,且插件配置不方便,适合快速体验。
(1)授权账户
首先进入 ,使用进行登录,点击 “ Now” 按钮,授权你的 账号,然后进行配置:
其中有两个配置是必填的,其他的暂时都可以暂时先用默认值,一个是 , 这个正是我们上一步在官网注册的, t 则指定了哪些群聊需要开启自动回复,你可以配置为 [“”] 来开启所有群聊。
(2)部署
部署完成后,日志中会输出二维码,使用手机微信扫码登录,登录成功后你的账号就变成一个机器人了。
(3)配置修改
如果后续需要修改或添加配置,可在 中进行更新:
然后执行 “” 即可使配置生效:
四、玩转插件
该项目受到用户和开发者的广泛欢迎,开发者为其贡献了许多实用插件。
安装插件前,请仔细阅读插件说明,并根据需要修改配置文件。插件和相应的配置模板可在对应的插件目录下找到。
安装方法:
项目已经预置一些插件可在//目录下查看,如需安装其他插件参考以下两种方法
手动安装:请将下载的插件文件解压至“”目录下的专属子文件夹中,确保插件代码位于//路径下。程序启动时,将自动扫描并加载目录结构正确的插件。同时,别忘了安装子文件夹内.txt指定的必要依赖,以确保插件正常运行。。
使用管理插件:通过使用插件,这个内置的管理员工具允许您在程序运行时安装其他插件,并自动处理所需的依赖安装。使用“# 插件名/仓库地址”的命令来安装插件,这是一项专为管理员设计的功能,需要通过特定的认证方法进行验证。无论是安装已记录在仓库中的插件,还是直接从指定的仓库地址安装,都提供了灵活的安装选项。
认证方法:
将.json.复制为.json,并修改其中的值为口令。
如果没有设置命令,在命令行日志中会打印出本次的临时口令,请注意观察,打印格式如下。
[INFO][2023-04-06 23:53:47][godcmd.py:165] - [Godcmd] 因未设置口令,本次的临时口令为0971。
在私聊中可使用#auth指令,输入口令进行管理员认证。更多详细指令请输入#help查看帮助文档:
#auth – 管理员认证,仅可在私聊时认证。 #help – 输出帮助文档,是否是管理员和是否是在群聊中会影响帮助文档的输出内容。
安装插件后,执行#scanp命令可扫描并加载新插件,或重启程序以自动识别。
同时,使用# 命令激活插件。
项目启动时,自动在/目录下生成一个.json文件,反映了插件的启用状态。
若需启用未激活的插件,直接编辑该文件或通过命令行激活。配置错误导致插件禁用时,需在修正后将.json中对应的“”标记为“true”并重启项目以应用更改。
介绍我常用的插件目录
(管理员插件)
首先,在/目录下,复制.json.文件为.json,并设置其中的值为您的自定义口令,例如12345。随后,在私聊环境中输入#auth 12345以进行管理员验证。验证成功后,发送#help命令会列出所有管理员操作指令,包括配置重载、插件安装以及插件的启用与禁用操作。
如果没有设置管理员口令,应用启动会生成一个临时口令,如下图所示:
临时口令验证:
注意:对于“”字段的设置,当使用个人微信时不需填写,因为个人微信的ID在每次重启后可能会更改。若是企业微信或公众号,您可以通过发送#id命令来获取用户ID,然后将获取到的ID填入此字段以完成配置。
(总结插件)
支持以自然语言实现对聊天记录的总结,认证管理员后执行# 安装
$ 总结最近20条消息
$ 总结3小时内的消息
tool(强大工具集):
插件为赋予了联网、搜索和数字运算的能力,极大地扩展了其功能。要使用此插件,只需在机器人的回复前加上$tool即可;也可以通过此命令返回tool插件的帮助信息,帮助检测插件是否成功加载。更详细的使用说明和API申请方法,以及.json的配置示例,请参考项目的页面。
使用说明:
api申请:
.json配置示例(后续如有改动,请参考最新代码的配置模板):
(定时任务插件)
简介:一款支持自定义定时任务的-on-插件,支持自定义时间、轮询周期、自定义时间,包含动态添加任务、取消任务、查看任务列表等功能,一款定时任务系统的插件。(稳定性待优化)
地址:
安装:
使用说明,请查看插件作者仓库说明。
还有更多插件我就不一一介绍啦,等你去发现。
利用-on-打造的微信AI助手,能够通过集成多种插件来实现丰富和多样的功能,从而极大地扩展了微信的应用场景。这种方式为用户提供了个性化的服务,增强了用户体验,同时也为开发者打开了创新应用的大门。
需要注意的是,避免过于频繁的尝试,以免面临封号风险。万一不慎被封,按照简单的解封步骤邀请好友帮助即可轻松解决。
323AI导航网发布