把AI接入到微信部署在服务器以及插件的安装 保姆教程

此文章不涉及国外的AI模型,也无需翻墙,跟某AI模型无关,审核大哥别弄错了

最近的AI开始越开越火了,开始介入到我们生活中的方方面面。就有人好奇AI是否能接入到微信吗?我在GitHub上搜索的时候还真有除了对话外还可以通过插件来实现画图,定时提醒,快递查询等等功能,也不要太方面。下面我给大家讲讲如何在服务器上安装和他的插件的安装。

这些安装是我一步步摸索出来的,可能并不是最方便的,但就是成功了。

GitHub地址:https://github.com/zhayujie/chatgpt-on-wechat

准备工作

  1. 需要一个实名认证过的微信(最好是小号 原由我就不多说了,DDDD)
  2. 一台服务器:我选的是浪浪云服务器。别问为什么,问就是便宜好用。地址:浪浪云浪浪云服务器icon-default.png?t=N7T8https://idc.langlangy.com/?i69ffe6
  3. LinkAI账号:需要此账号来实现刚才说的功能。地址:LinkAILink.AI 智能对话 midjourney AI绘画 AI应用创建 wechat接入 企业微信接入 公众号接入 ChatGPT4.0icon-default.png?t=N7T8https://chat.link-ai.tech/home?share=oZaCnV
  4.  ALAPI账号:此账号是用查询快递、天气等信息的。地址:ALAPIicon-default.png?t=N7T8https://admin.alapi.cn/account/center
  5. 下载堡塔SSH终端,当然你喜欢别的远程工具也可以。

第一步:购买服务器

先注册登录浪浪云,在实名认证。浪浪云浪浪云服务器icon-default.png?t=N7T8https://idc.langlangy.com/?i69ffe6之后打开云服务器——购买服务器

 你要是想搞来玩玩那就选跟我一样的,如果有别的要求那就自行选择

我习惯了CentOS7,你喜欢别的你随意

 操作系统选ContOS7(宝塔国内版),其他根据自身需求更改

 等你支付完以后打开云服务器——打开管理

 在我标红的地方有一个IP地址和端口号,记住他!待会儿有用。密码可以点击复制

 第二步,下载堡塔SSH终端

在这个网址下载宝塔SSH终端:一款同时支持SSH和SFTP客户端的免费软件! 下载堡塔SSH终端

下载完打开下载堡塔SSH终端。点击添加服务器

 会出现填写信息的地方,选Linux——IP地址(填写上面记住的IP地址)——端口(也修改成上面记住的端口地址)——密码(填写刚才复制的密码)

第三步:在服务器上部署 chatgpt-on-wechat

安装python

        因为chatgpt-on-wechat 需要在python3 环境下运行,但ContOS 7默认的是python2.7,所以我们需要下载一个python3.8版本。

         1.安装依赖

编译python源码时,需要一些依赖包,一次安装完毕

yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make libffi-devel

注意:安装过程中别乱动电脑

        2. 安装wget

这个包是为了下载python源码用的

yum install wget

注意:安装过程中别乱动电脑

        3.下载源码包

我是下载的最新的python3.8,如果想安装其他版本,去python官网下载页面下载对应的版本即可。

这个下载会很慢,请耐心等待!

wget https://www.python.org/ftp/python/3.8.1/Python-3.8.1.tgz

注意:安装过程中别乱动电脑

        4.解压安装

解压压缩包

tar -zxvf Python-3.8.1.tgz 

进入文件夹

cd Python-3.8.1

配置安装位置

./configure prefix=/usr/local/python3

安装

make && make install

如果最后没提示出错,就代表正确安装了,在/usr/local/目录下就会有python3目录

        5.添加软连接 

添加python3的软链接

ln -s /usr/local/python3/bin/python3.8 /usr/bin/python3

添加 pip3 的软链接

ln -s /usr/local/python3/bin/pip3.8 /usr/bin/pip3

        6.测试

如果上述代码都没有报错说明安装成功,可用python3命令来测试

cd ~ 命令可以退回根目录

想退出 Ctrl+Z 就可以退出

部署项目

        1.安装git命令

sudo yum install git

这里选 就可以可以了

 注意:安装过程中别乱动电脑

         2.下载源码

安装完git以后就可以下载从GitHub下载源码

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

 注意:安装过程中别乱动电脑

        3.安装依赖

先进入 chatgpt-on-wechat 目录

cd chatgpt-on-wechat/
pip3 install -r requirements-optional.txt

 升级pip命令

 sudo pip3 install --upgrade pip

这是必须依赖的,所以一定要下载

pip3 install -r requirements.txt

 这是非必选,语音、tool插件等功能需要,根据自己需求来安排(我建议下载)

pip3 install -r requirements-optional.txt

        4.注册LinkAI
LinkAILink.AI 智能对话 midjourney AI绘画 AI应用创建 wechat接入 企业微信接入 公众号接入 ChatGPT4.0icon-default.png?t=N7T8https://chat.link-ai.tech/home?share=oZaCnV

进入注册一个账号

注册号账号以后打开 应用接入 会看到一个创建API Key 如果没显示你就创建一个Key,有的话直接复制待会儿有用

 然后打开我的应用——点击创建应用

 填写完信息后会出现 我的应用 会有code有一个记住他待会儿有用,然后打开设置

 这里会有一个模型设置根据自己情况来选择

 往下拉,会有插件配置,也是根据自己的情况来定。定完点击上面的保存

返回首页可以看到别人公开的知识库你也可以调用

 这个LinkAI调用并不是免费的,用积分来消费,每天签到都可以领积分,也可以花钱购买积分,详细的你们自己去 我的账户 哪里看看

        5.配置

打开SSH远程登录工具在  chatgpt-on-wechat 目录下完成下面的操作

复制项目中的模板文件 config-template.json,来生成最终起效果的配置文件config.json,你可以通过执行以下命令完成

cp config-template.json config.json

然后用 vi 命令打开 config.json 文件

vi config.json

打开后,用英文输入法状态下点击键盘上的字母 i 开始编辑

我们可以用我们刚才注册的LinkAI账号来配置,如果不在会可以参考一下我的配置

根据自己的需求来配置就好了

注意:

  1. 只能调用一个模型,你用LinkAI其他模型就调用不了,个人觉得LinkAI挺好的,注意积分消耗,详细自己登录查看
  2. 如果像实现语音识别那就的有的第三方的语音识别API,比如百度语音。

 这是开发者提供的给我们配置参考

    # openai api配置
    "open_ai_api_key": "",  # openai api key
    # openai apibase,当use_azure_chatgpt为true时,需要设置对应的api base
    "open_ai_api_base": "https://api.openai.com/v1",
    "proxy": "",  # openai使用的代理
    # chatgpt模型, 当use_azure_chatgpt为true时,其名称为Azure上model deployment名称
    "model": "gpt-3.5-turbo",  # 还支持 gpt-3.5-turbo-16k, gpt-4, wenxin, xunfei
    "use_azure_chatgpt": False,  # 是否使用azure的chatgpt
    "azure_deployment_id": "",  # azure 模型部署名称
    "azure_api_version": "",  # azure api版本
    # Bot触发配置
    "single_chat_prefix": ["bot", "@bot"],  # 私聊时文本需要包含该前缀才能触发机器人回复
    "single_chat_reply_prefix": "[bot] ",  # 私聊时自动回复的前缀,用于区分真人
    "single_chat_reply_suffix": "",  # 私聊时自动回复的后缀,\n 可以换行
    "group_chat_prefix": ["@bot"],  # 群聊时包含该前缀则会触发机器人回复
    "group_chat_reply_prefix": "",  # 群聊时自动回复的前缀
    "group_chat_reply_suffix": "",  # 群聊时自动回复的后缀,\n 可以换行
    "group_chat_keyword": [],  # 群聊时包含该关键词则会触发机器人回复
    "group_at_off": False,  # 是否关闭群聊时@bot的触发
    "group_name_white_list": ["ChatGPT测试群", "ChatGPT测试群2"],  # 开启自动回复的群名称列表
    "group_name_keyword_white_list": [],  # 开启自动回复的群名称关键词列表
    "group_chat_in_one_session": ["ChatGPT测试群"],  # 支持会话上下文共享的群名称
    "group_welcome_msg": "",  # 配置新人进群固定欢迎语,不配置则使用随机风格欢迎 
    "trigger_by_self": False,  # 是否允许机器人触发
    "image_create_prefix": ["画", "看", "找"],  # 开启图片回复的前缀
    "concurrency_in_session": 1,  # 同一会话最多有多少条消息在处理中,大于1可能乱序
    "image_create_size": "256x256",  # 图片大小,可选有 256x256, 512x512, 1024x1024
    # chatgpt会话参数
    "expires_in_seconds": 3600,  # 无操作会话的过期时间
    # 人格描述
    "character_desc": "你是ChatGPT, 一个由OpenAI训练的大型语言模型, 你旨在回答并解决人们的任何问题,并且可以使用多种语言与人交流。",
    "conversation_max_tokens": 1000,  # 支持上下文记忆的最多字符数
    # chatgpt限流配置
    "rate_limit_chatgpt": 20,  # chatgpt的调用频率限制
    "rate_limit_dalle": 50,  # openai dalle的调用频率限制
    # chatgpt api参数 参考https://platform.openai.com/docs/api-reference/chat/create
    "temperature": 0.9,
    "top_p": 1,
    "frequency_penalty": 0,
    "presence_penalty": 0,
    "request_timeout": 60,  # chatgpt请求超时时间,openai接口默认设置为600,对于难问题一般需要较长时间
    "timeout": 120,  # chatgpt重试超时时间,在这个时间内,将会自动重试
    # Baidu 文心一言参数
    "baidu_wenxin_model": "eb-instant",  # 默认使用ERNIE-Bot-turbo模型
    "baidu_wenxin_api_key": "",  # Baidu api key
    "baidu_wenxin_secret_key": "",  # Baidu secret key
    # 讯飞星火API
    "xunfei_app_id": "",  # 讯飞应用ID
    "xunfei_api_key": "",  # 讯飞 API key
    "xunfei_api_secret": "",  # 讯飞 API secret
    # claude 配置
    "claude_api_cookie": "",
    "claude_uuid": "",
    # wework的通用配置
    "wework_smart": True,  # 配置wework是否使用已登录的企业微信,False为多开
    # 语音设置
    "speech_recognition": False,  # 是否开启语音识别
    "group_speech_recognition": False,  # 是否开启群组语音识别
    "voice_reply_voice": False,  # 是否使用语音回复语音,需要设置对应语音合成引擎的api key
    "always_reply_voice": False,  # 是否一直使用语音回复
    "voice_to_text": "openai",  # 语音识别引擎,支持openai,baidu,google,azure
    "text_to_voice": "baidu",  # 语音合成引擎,支持baidu,google,pytts(offline),azure,elevenlabs
    # baidu 语音api配置, 使用百度语音识别和语音合成时需要
    "baidu_app_id": "",
    "baidu_api_key": "",
    "baidu_secret_key": "",
    # 1536普通话(支持简单的英文识别) 1737英语 1637粤语 1837四川话 1936普通话远场
    "baidu_dev_pid": "1536",
    # azure 语音api配置, 使用azure语音识别和语音合成时需要
    "azure_voice_api_key": "",
    "azure_voice_region": "japaneast",
    # elevenlabs 语音api配置
    "xi_api_key": "",    #获取ap的方法可以参考https://docs.elevenlabs.io/api-reference/quick-start/authentication
    "xi_voice_id": "",   #ElevenLabs提供了9种英式、美式等英语发音id,分别是“Adam/Antoni/Arnold/Bella/Domi/Elli/Josh/Rachel/Sam”
    # 服务时间限制,目前支持itchat
    "chat_time_module": False,  # 是否开启服务时间限制
    "chat_start_time": "00:00",  # 服务开始时间
    "chat_stop_time": "24:00",  # 服务结束时间
    # 翻译api
    "translate": "baidu",  # 翻译api,支持baidu
    # baidu翻译api的配置
    "baidu_translate_app_id": "",  # 百度翻译api的appid
    "baidu_translate_app_key": "",  # 百度翻译api的秘钥
    # itchat的配置
    "hot_reload": False,  # 是否开启热重载
    # wechaty的配置
    "wechaty_puppet_service_token": "",  # wechaty的token
    # wechatmp的配置
    "wechatmp_token": "",  # 微信公众平台的Token
    "wechatmp_port": 8080,  # 微信公众平台的端口,需要端口转发到80或443
    "wechatmp_app_id": "",  # 微信公众平台的appID
    "wechatmp_app_secret": "",  # 微信公众平台的appsecret
    "wechatmp_aes_key": "",  # 微信公众平台的EncodingAESKey,加密模式需要
    # wechatcom的通用配置
    "wechatcom_corp_id": "",  # 企业微信公司的corpID
    # wechatcomapp的配置
    "wechatcomapp_token": "",  # 企业微信app的token
    "wechatcomapp_port": 9898,  # 企业微信app的服务端口,不需要端口转发
    "wechatcomapp_secret": "",  # 企业微信app的secret
    "wechatcomapp_agent_id": "",  # 企业微信app的agent_id
    "wechatcomapp_aes_key": "",  # 企业微信app的aes_key
    # chatgpt指令自定义触发词
    "clear_memory_commands": ["#清除记忆"],  # 重置会话指令,必须以#开头
    # channel配置
    "channel_type": "wx",  # 通道类型,支持:{wx,wxy,terminal,wechatmp,wechatmp_service,wechatcom_app}
    "subscribe_msg": "",  # 订阅消息, 支持: wechatmp, wechatmp_service, wechatcom_app
    "debug": False,  # 是否开启debug模式,开启后会打印更多日志
    "appdata_dir": "",  # 数据目录
    # 插件配置
    "plugin_trigger_prefix": "$",  # 规范插件提供聊天相关指令的前缀,建议不要和管理员指令前缀"#"冲突
    # 是否使用全局插件配置
    "use_global_plugin_config": False,
    # 知识库平台配置
    "use_linkai": true,
    "linkai_api_key": "输入你记得key",
    "linkai_app_code": "输入你记得code",
    "linkai_api_base": "https://api.link-ai.chat",  # linkAI服务地址,若国内无法访问或延迟较高可改为 https://api.link-ai.tech

配置完成后 点击键盘上的 Esc —— 然后用英文输入法状态下 Shift + :—— 在输入wq —— 按回车就好了

        6. 运行程序

打开SSH远程登录工具在  chatgpt-on-wechat 目录下完成下面的操作

首次运行需要新建日志文件

touch nohup.out

在后台运行程序并通过日志输出二维码

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

扫码登录 (最好用实名认证过的小号) 后程序即可运行于服务器后台,此时可通过 ctrl+c 关闭日志,不会影响后台程序的运行。在日志关闭后如果想要再次打开只需输入 tail -f nohup.out

项目已经部署完了,下面我们安装一下插件

插件安装

 godcmd(管理员插件)

这个必须安装因为,有些插件需要管理员权限才可以使用或下载

打开SSH远程登录工具在  chatgpt-on-wechat 目录下完成下面的操作

打开 plugins/godcmd 目录

cd plugins/godcmd

 config.json.template 复制为 config.json

cp config.json.template config.json

 再用 vi 命令打开 config.json 文件

vi config.json

用英文输入法状态下点击键盘上的字母 i 开始编辑

修改其中password的值为你想设置的口令,比如:123456,都行

修改完成后 点击键盘上的 Esc —— 然后用英文输入法状态下 Shift + :—— 在输入wq —— 按回车就好了

先返回到 chatgpt-on-wechat 目录下

cd ~/chatgpt-on-wechat

然后重新日志输出二维码,重新登录

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

之后私聊中输入#auth 12345(这里是你设置的口令) 进行管理员认证

认证之后对话框发送#help可以打印出管理员相关指令

通用指令
#help : 回复此帮助
#help 插件名: 回复指定插件的详细帮助
#model : 查看和设置全局模型
#reset : 重置会话

可用插件
linkai:用于集成 LinkAI 提供的知识库、Midjourney绘画、文档总结、联网搜索等能力。
Apilot:发送特定指令以获取早报、查询天气、星座运势、快递信息等!
tool:这是一个能让chatgpt联网,搜索,数字运算的插件,将赋予强大且丰富的扩展能力。
角色扮演:让机器人扮演不同的角色。
文字冒险:可以和机器人一起玩文字冒险游戏。

        画图插件

在 chatgpt-on-wechat 打开 plugins 下的 linkai 文件

cd plugins/linkai

 跟刚才一样 config.json.template 复制为 config.json

cp config.json.template config.json

  再用 vi 命令打开 config.json 文件

用英文输入法状态下点击键盘上的字母 i 开始编辑

vi config.json

在下面填写参数 “linkai_api_key”: “Link_MnBxoUvKxxxxxxHwGtP6” 即可(里面的API Key填

你们的,刚刚注册过忘了回去看)

注意:在倒数第二个花括号后面有一个逗号

 修改完成后 点击键盘上的 Esc —— 然后用英文输入法状态下 Shift + :—— 在输入wq —— 按回车就好了

返回到wechat 目录,重新扫码登录

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

在私人聊天框输入 #help linkai 获取插件的帮助信息了。如果提示不存在或者未启用,先打开管理员权限 #auth 后面是你设置的口令,然后输入#enablep linkai 就可以启用了

我这设置的是在私信里不用前缀就可以调用,你们要是设置了那就按设置的走

这里注意: 这个命令 $linkai app Kv2fXJcH  后面加上你自己的或者首页别人的 code 就可以可以调用这个知识库或者扮演的角色

 就可以私信里命令他给你画图,比如画一个小猫

因为我的这个参数有画,所以我用画开头就可以调用绘画功能

        Apliot插件

目前可返回早报(图片形式)、微博热搜、摸鱼日历、星座运势,快递信息,天气等

  • 快递查询格式:快递+快递编号。如:快递YT2505082504474
  • 对话框发送“早报”、“摸鱼”、”微博热搜(已更新为”微博热榜)”、”任意星座名称”可以直接返回对应的内容!
  • 天气查询格式:城市+天气。如:成都天气。(支持3400+城市天气,输入不正确或者查询失败返回北京天气)
  • 热榜查询。支持:<微博/虎扑/知乎/哔哩哔哩/36氪/抖音/少数派/IT最新/IT科技>
注册ALAPI账号

只要你注册就送你一个年免费使用

ALAPIicon-default.png?t=N7T8https://admin.alapi.cn/dashboard/workplace注册完以后在 个人管理——个人中心——可以看到token 复制好他

安装插件

返回到微信聊天界面,#auth 12345(后面是你自己设置的命令) 命令进行管理员权限,

在微信上用这段命令来进行安装插件,请耐心等待这一步有点慢。

#installp https://github.com/6vision/Apilot.git

 扫描插件

 #scanp

开启插件

#enablep Apilot

 配置文件

 到这一步也可以使用一部分接口,部分接口(快递、天气)需要配置alapi的token

所以打开运程工具在 chatgpt-on-wechat 打开 plugins 下的 Apilot文件

cd plugins/Apilot

跟刚才一样 config.json.template 复制为 config.json

cp config.json.template config.json

  再用 vi 命令打开 config.json 文件

用英文输入法状态下点击键盘上的字母 i 开始编辑

vi config.json

在这里填写你刚才复制token

修改完成后 点击键盘上的 Esc —— 然后用英文输入法状态下 Shift + :—— 在输入wq —— 按回车就好了

返回到  chatgpt-on-wechat 目录,日志输出二维码扫码登录就好了

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

timetask(定时任务插件)

返回到微信聊天界面,#auth 12345(后面是你自己设置的命令) 命令进行管理员权限,

在微信上用这段命令来进行安装插件,请耐心等待这一步有点慢。

#installp https://github.com/haikerapples/timetask.git 

 扫描插件

 #scanp

开启插件

#enablep timetask

教程到这里就结束了,还有其他玩法和规则就交给大家自己来摸索吧!

都看到这里了点个赞再走吧!

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
乘风的头像乘风管理团队
上一篇 2023年11月7日
下一篇 2023年11月7日

相关推荐