搭建雲崽QQ機器人+GPT3外掛

2023-02-10 21:00:24

安裝雲崽Bot+GPT3外掛

這次我們來搭建雲崽Bot,雲崽Bot其實是一個用於原神的機器人,不過眾多大佬開發出了很多有趣的外掛供我們使用,這次我們就是用其中的一個外掛Chat-gpt(其不是正宗的ChatGPT,是基於GPT3的,所以顯得呆呆的,不過也算是能用),下面我們開始吧。

專案地址

雲崽Gitee:https://gitee.com/Le-niao/Yunzai-Bot

雲崽無原神功能版:https://gitee.com/Nwflower/yunzai-bot-lite (自行測試)

外掛庫:https://gitee.com/yhArcadia/Yunzai-Bot-plugins-index (外掛庫並不包含所有的外掛,可以自行查詢外掛使用)

準備工作

系統:Windows、Linux (我用的 騰訊雲 2h2g Centos7)

一個QQ號用來當機器人

安裝環境

Node>=16,Redis

倉庫換源

bash <(curl -sSL https://gitee.com/SuperManito/LinuxMirrors/raw/main/ChangeMirrors.sh)

選擇阿里云然後後面全部選Y

安裝node.js

#準備環境
yum install libtool automake autoconf gcc-c++ openssl-devel

mkdir -vp /usr/local/software/nodeJs
cd /usr/local/software/nodeJs

#下載
wget https://nodejs.org/dist/v16.8.0/node-v16.8.0-linux-x64.tar.gz
#解壓
tar zxvf node-v16.8.0-linux-x64.tar.gz 
# 改名
mv node-v16.8.0-linux-x64 node16
#賦權
chmod 777 node16

# 開啟環境變數
vim /etc/profile
#set nodejs env(路徑一定要設定對)
export NODE_HOME=/usr/local/software/nodeJs/node16
export PATH=$NODE_HOME/bin:$PATH
# 重新載入環境變數
source /etc/profile

#檢查是否安裝成功,出現版本號說明安裝成功
cd
node -v
npm -v

安裝git

yum install git
中間詢問:Is this ok [y/d/N]:輸入y就行,沒問忽略
git --version #檢視git版本

安裝chromium

yum -y install chromium

安裝Redis

yum -y install redis

安裝中文包

yum groupinstall fonts -y

安裝專案

cd #轉到根目錄
git clone --depth=1 -b main https://gitee.com/Le-niao/Yunzai-Bot.git #使用gitee上面的源克隆專案

安裝依賴

cd Yunzai-Bot #進到雲崽資料夾
npm config set registry https://registry.npmmirror.com
npm install pnpm -g
pnpm -v #檢視版本號
pnpm config set registry https://registry.npmmirror.com
pnpm install -P

啟動專案

啟動redis

redis-server --save 900 1 --save 300 10 --daemonize yes

使用screen後臺執行專案

yum install screen -y
screen -S yunzai
cd Yunzai-Bot/ #進到雲崽根目錄
node app
然後填寫相關資訊就行了

登入成功會給主人賬號傳送說明

screen 的用法

screen -S name #新建一個執行空間,name可以隨便寫,例如:screen -S go-cq ,screen -S py 這裡的S一定要大寫
screen -D name #殺死命名為name的執行空間,殺死之後該執行空間就沒了,裡面執行的東西也就不會執行了
screen -r name #連線名字為name的執行空間
Ctrl + A + D #退出當前執行空間,但裡面的執行的程序會一直執行,如果要對該程序進行操作,只需要執行上面的screen -r 即可進入

如何在網頁手動獲取ticket

複製連結

複製滾軸驗證連結用瀏覽器開啟

F12 獲取ticket

到下面這個頁面先不要滑動方塊驗證,先按F12,選擇網路(Network)

接著按下面步驟獲取ticket

然後把得到的ticket粘過去回車就好了

安裝chat-gpt外掛

外掛地址:https://github.com/ikechan8370/chatgpt-plugin

有什麼問題可以去這裡看看有沒有解決方法:https://github.com/ikechan8370/chatgpt-plugin/issues

版本要求

Node.js >= 18 / Node.js >= 14(with node-fetch),我裝的node16,所以就用了第二個方案

安裝依賴

cd Yunzai-Bot/ #進到雲崽根目錄
pnpm install -w undici chatgpt showdown mathjax-node delay uuid remark strip-markdown node-fetch

安裝專案

git clone https://github.com/ikechan8370/chatgpt-plugin.git ./plugins/chatgpt-plugin

修改設定

chatgpt的版本號注意要大於4.0.0,如果不是的話,可以試試在雲崽根目錄執行 pnpm install -w [email protected] 安裝制定的版本

修改 Yunzai根目錄/node_modules/.pnpm/[email protected]/node_modules/chatgpt/build/index.js

此處 [email protected] 路徑不是絕對的!請根據自己安裝的版本進行替換!

比如我Centos虛擬機器器上路徑是:/root/Yunzai-Bot/node_modules/.pnpm/[email protected]/node_modules/chatgpt/build/index.js

我雲伺服器上的路徑是:/root/Yunzai-Bot/node_modules/.pnpm/[email protected]/node_modules/chatgpt/build/index.js

將 上面找到的index.js 裡面的// src/fetch.ts部分修改成如下樣子,其他部分不要動

// src/fetch.ts
import fetch from 'node-fetch';
globalThis.fetch = fetch;

再編輯Yunzai根目錄/plugins/chatgpt-plugin/config/index.js檔案,主要修改其中的apiKey

如何獲得api-key可以看我的另一個文章:https://blog.hanhanz.top/?p=226

執行專案

修改完之後,我們就可以去執行使用了

cd #回到根目錄
cd Yunzai-Bot/ #進到雲崽根目錄
node app

執行專案沒報錯就可以使用了

執行截圖

私聊

群聊