這次我們來搭建雲崽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 即可進入
複製滾軸驗證連結用瀏覽器開啟
到下面這個頁面先不要滑動方塊驗證,先按F12
,選擇網路(Network
)
接著按下面步驟獲取ticket
然後把得到的ticket
粘過去回車就好了
外掛地址: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
執行專案沒報錯就可以使用了