
圍棋人機對奕系列文章:
(圖片出處: unsplash.com)
一、KataGo 四種運算方式
根據 KataGo 官網說明「OpenCL vs CUDA vs TensorRT vs Eigen」,提供了四種運算方式: 1. CPU 純粹使用 CPU 進行運算,從安裝檔名辨識可分為兩種:- eigen:適合比較舊的 CPU 型號,不支援 AVX2 指令集,例如 Intel 第三代及較舊的 CPU
- eigen + avx2:適合比較新的 CPU 型號,支援 AVX2 指令集,例如 Intel 第四代之後的 CPU
二、安裝 CUDA + TensorRT
1. 失敗的情形 安裝 KataGo TensorRT 版並不容易,一開始找了幾篇安裝教學,花了大量時間下載,因為所有檔案大小將近 5G。小心地按著教學步驟,雖然最後 TensorRT 看起來有執行,但 KataGo 都會報錯無法執行。 交叉測試直到成功的過程就不贅述了,直接總結失敗原因:- 除了教學文章的必要動作不可省略,還有其他因素會導致失敗
- 我以為類似 Java、NodeJS,找最新版本安裝比較好
- 結果後來發現 CUDA、TensorRT 都要找到非常精確的版本下載才不會出錯
- 只要對應的版本號不同,KataGo 可能就無法啟動
Cuda 12.8.* and/or TensorRT 10.9.0.* should hopefully be suitable for the most recently released NVIDIA GPUs as of April 2025, the RTX 5000 family. It's recommended that you install and run these with the matching versions of CUDA and TensorRT rather trying to run with different versions.意思就是說,「Cuda 12.8 及 TensorRT 10.9 適合 2025 年 4 月最新的 RTX 5000 系列顯卡」,所以我的 RTX 4060 可能不適合這些最新版本。「請安裝與 KataGo 完全吻合的版本,不要嘗試安裝不同的版本」,看到這句話算是驗證了我的失敗原因。 3. 查詢顯卡資訊 所以首先需要查出,與自己 Nvidia 顯示卡相容的 CUDA 版本為何,只要確認安裝過顯卡驅動程式,在 Windows 可開啟「命令提示字元」視窗,執行以下指令查詢 Nvidia 顯卡資訊:
nvidia-smi


- KataGo 1.16 版
- Windows 系統 64 位元
- 需要安裝 CUDA 12.1 版
- 需要安裝 TensorRT 8.6.1 版
- 紅框上方還有一個相似的版本號,多了
bs50 ,代表 board size 大棋盤尺寸,除非有這個需求,不然不需要下載這類版本
- CUDNN 是安裝 CUDA 板才需要下載
- TensorRT 版沒有看到需要 CUDNN 的內容描述
- 而且從我下載的檔案 katago-v1.16.0-trt8.6.1-cuda12.1-windows-x64.zip 就能看出,並沒有 cudnn 的字串
TensorRT 8.6 GA for Windows 10 and CUDA 12.0 and 12.1 ZIP Package
這個檔案的連結如下:
下載完解壓縮 ZIP 檔,放到指定路徑,接下來設定環境變數,以 Windows 10 為例:
- 開始 → 設定 → 系統 → 關於 → 進階系統設定 → 環境變數
- 在「系統變數」找到「Path」 → 編輯

- 上方紅框可看到,前面安裝 CUDA 後,會自動產生兩筆 CUDA 路徑
- 下方紅框這兩筆 TensorRT 則是需要自己手動填入的資料,可按「新增」來新增資料
- 分別填入兩個路徑:你的 TensorRT 資料夾下的
lib 、bin 這兩個資料夾
三、安裝 KataGo TensorRT 版
1. 解壓縮 KataGo 檔案 前面「二、安裝 CUDA + TensorRT」→「4. 下載 KataGo 正確版本」,已經找到適合我 RTX4060 的 KataGo 版本 katago-v1.16.0-trt8.6.1-cuda12.1-windows-x64.zip,將你的版本檔案解壓縮後,放在自訂路徑即可。 2. 下載權重檔 如果沒安裝過任一版 KataGo,那麼還需要下載配合適當版本的權重檔案,下載頁面網址: 如果跟我一樣是安裝最新版 KataGo,就可以使用這個網頁開頭推薦的檔案,例如找到「Strongest confidently-rated network」,這是最強、可信賴的權重檔案,目前的檔案連結為: 下載後可將檔名改為簡單易記的格式,例如katago genconfig -model weight_b28.gz -output WFU_TensorRT.cfg
- weight_b28.gz 請改為你的權重檔案名稱
- WFU_TensorRT.cfg 請改為你的設定檔名稱

- 最上方紅框有
(recommended) 字樣的這一行,是 KataGo 根據硬體設備推薦 numSearchThreads 使用的數量,我的 RTX4060 推薦數量為 16,請紀錄自己畫面顯示的數字,之後會用到。 - 第一個紅色底線顯示,設定檔已寫入我自訂檔名 WFU_TensorRT.cfg,代表設定成功
- 第二個紅色底線,代表將來執行 KataGo 使用的參數,也請紀錄起來,之後會用到。
gtp -model 權重檔案名稱 -config 設定檔名稱
上面的截圖可看到權重名稱及設定檔名都加上了引號,如果檔名含完整路徑的話,加上引號比較不會出錯。如果是同路徑,則不須使用完整路徑,那麼也就不需要加引號。
四、Sabaki 設定 KataGo
只要前面的流程跑到產生 KataGo 設定檔,都沒出問題的話,代表全部都安裝、設定成功了,那麼大部分的圍棋圖形界面軟體應該都能跑 KataGo TensorRT 版沒什麼問題,以下簡單舉例「Sabaki」如何加入 KataGo TensorRT 版引擎。
gtp -model 權重檔案名稱 -config 設定檔名稱
紅框下面一行參數為 GTP 指令,代表強制 AI 每手 5 秒鐘落子。

五、KaTrain 執行 TensorRT 版
1. KaTrain 的運作方式
gtp -model 權重檔案名稱 -config 設定檔名稱
雖然在上圖的 KaTrain 設定畫面,有看到一行「KataGo 設定檔路徑」,但我們若將 Tensor 版設定檔路徑填進去,只會不斷報錯而已。這代表 KaTrain 的設定檔有自己的格式,除非我們將 Tensor 版設定檔格式,改成完全符合 KaTrain 的設定檔格式,才有可能解決問題。
2. 如何讓 KaTrain 跑 TensorRT 版
最後我在這篇文章找到了靈感「圍棋AI軟件katrain 和katago的整合安裝」,作者也是在 KaTrain 設定畫面填入了自設的設定檔路徑,跟我一樣不斷報錯,但他的作法是,在自訂的設定檔,新增會報錯的內容並修改參數。
雖然我有想過這麼做,但不確定到底有多少處要修改。現在有了成功案例後,自然知道該如何進行,把所有會報錯的項目逐一加上去。請參考以下步驟:
A:找到原本的 KaTrain 設定檔,位置應該在「Katrain 路徑\_internal\katrain\KataGo\analysis_config.cfg」,用文書軟體開啟這個檔案。
B:用文書軟體編輯 TensorRT 版設定檔(前面的範例檔名是 WFU_TensorRT.cfg),最後面新增的內容如下:
numAnalysisThreads = 16
nnMaxBatchSize = 96
nnRandomize = true
- numAnalysisThreads 的參數請填入前面「三、安裝 KataGo TensorRT 版」→「3. 產生設定檔」,測試完畢後 KataGo 根據硬體設備推薦 numSearchThreads 使用的數量,我的 RTX4060 推薦的數字是 16
- nnMaxBatchSize 與 nnRandomize 的數值,請在你的 analysis_config.cfg 中搜尋,看看這兩項的數值是什麼

- KataGo執行檔路徑:填入 TensorRT 版執行檔路徑
- KataGo執行檔路徑:填入剛改好的 TensorRT 版設定檔路徑
- KataGo執行檔路徑:填入權重檔案路徑
- 因為改用 TensorRT 版,右下紅框運算步數從 500 改成 2500 或更多都不成問題
- 按「更新設定」即可


六、總結
KataGo TensorRT 版的 AI 光速分析,嘗試過就回不去了,只不過我們每次打開圍棋軟體,不一定都是拿來分析勝率、最佳選點。假設只是要跟 AI 對奕,那麼啟動軟體要等上三十多秒,不是一件很有效率的事。 所以簡單做個總結:- 如果常常與 AI 對奕的話,其實使用 KataGo OpenCL 版就足夠了,啟動等待時間幾秒鐘是可以接受的,CP 值比較高,而且 AI 的實力仍是人類遠遠比不上的。
- 等到偶爾需要覆盤、分析的時候,再將引擎切換為 KataGo TensorRT 版,短時間就能得到上萬次的超高品質分析結果。
- 總之根據使用圍棋軟體的目的,再決定使用 OpenCL 版或 TensorRT 版,是比較合理的作法。
圍棋人機對奕系列文章:
沒有留言:
張貼留言注意事項:
◎ 勾選「通知我」可收到後續回覆的mail!
◎ 請在相關文章留言,與文章無關的主題可至「Blogger 社團」提問。
◎ 請避免使用 Safari 瀏覽器,否則無法登入 Google 帳號留言(只能匿名留言)!
◎ 提問若無法提供足夠的資訊供判斷,可能會被無視。建議先參考這篇「Blogger 提問技巧及注意事項」。
◎ CSS 相關問題非免費諮詢,建議使用「Chrome 開發人員工具」尋找答案。
◎ 手機版相關問題請參考「Blogger 行動版範本的特質」→「三、行動版範本不一定能執行網頁版工具」;或參考「Blogger 行動版範本修改技巧 」,或本站 Blogger 行動版標籤相關文章。
◎ 非官方範本問題、或貴站為商業網站,請參考「Blogger 免費諮詢 + 付費諮詢」
◎ 若是使用官方 RWD 範本,請參考「Blogger 推出全新自適應 RWD 官方範本及佈景主題」→ 不建議對範本進行修改!
◎ 若留言要輸入語法,"<"、">"這兩個符號請用其他符號代替,否則語法會消失!
◎ 為了過濾垃圾留言,所有留言不會即時發佈,請稍待片刻。
◎ 本站「已關閉自刪留言功能」。