AI文字對話工具 Text generation web UI for Windows
近期在Windows測試本地運行AI文字生成工具,
其中最簡單的解決方案是透過Text generation web UI運行gguf文字模型,
這裡整理安裝過程中需要排除的問題。
在Windows運行Text generation web UI之前,需要準備以下套件:
- vs_BuildTools.exe程序
- 下載最新版執行檔。
- 勾選"使用C++的桌面開發"進行安裝,需要花點時間下載。
- 中文語言模型
- 這裡建議選用gguf格式的模型
- 例如Taiwan-LLM-7B-v2.0.1-chat-GGUF模型,有不同的精度,品質跟性能取捨可選Q4_K_M.gguf或以上的量化檔案,檔案越大需要的RAM(CPU)、VRAM(GPU)越龐大。
- (選用)Nginx exe套件
- 測試
- 下載Windows exe壓縮包
- 解壓縮後打開\conf\nginx.conf
- 參考底下的"nginx.conf參考內容"修改到conf檔案,讓127.0.0.1:7680轉發到localhost:8000,保存後開啟nginx.exe即可轉發到其他port。
- 開始安裝Text generation web UI
- 下載Text generation web UI壓縮檔
- 解壓縮後執行"start_windows.bat",這裡會需要花點時間
- 打開\oobabooga_windows\text-generation-webui\models目錄
- 將第2步驟下載的中文語言模型放入models目錄
- 開啟 http://127.0.0.1:7860 或 http://localhost:8000
- 點選Model標籤頁,下拉選取放入的文字模型
- 點選Chat標籤頁,開始測試AI文字問答
nginx.conf參考內容
#user nobody;
worker_processes 1;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';
#access_log logs/access.log main;
sendfile on;
keepalive_timeout 65;
server {
listen 8000;
server_name localhost;
location / {
proxy_pass http://127.0.0.1:7860;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host $host;
}
}
}
需要說明一下listen 8000; 表示要轉發的目標port為8000,
同時轉發http跟ws對象。
Text generation web UI 配置預設模型
請找到"CMD_FLAGS.txt",寫入一行內容如下:
--model 模型名稱
假設預設模型是 LLM-7B-v2.0.1-chat-Q4_K_M.gguf,則輸入
--model LLM-7B-v2.0.1-chat-Q4_K_M.gguf
儲存CMD_FLAGS.txt檔案即可。
Text generation web UI 提示Error
點選Model標籤頁,點選Unload卸載模型
點選Session標籤頁,點選"Apply flags/extensions and restart"重啟UI
此時Error錯誤消失可繼續使用Text generation web UI
自行透過模型生成gguf檔案
如果不打算使用現成的GGUF檔案,也可以參考這篇文章,
可以選用更熱門的中文模型,例如:
Chinese-LLaMA-Alpaca-2
https://github.com/ymcui/Chinese-LLaMA-Alpaca-2
透過llama.cpp轉換成16位gguf,再./quantize量化成4位gguf,可以得到類似前面第2步驟取得的Q4_K_M gguf檔案,一樣匯入到\oobabooga_windows\text-generation-webui\models目錄即可使用。
留言
張貼留言