Last active
June 14, 2026 09:00
-
-
Save kenming/8a473b2c35b9fca4bd7e7ad35fe0312d to your computer and use it in GitHub Desktop.
KataGo v1.16.5 GTP Config 範本(2026/06 最新版,繁體中文註解)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # KataGo C++ GTP 引擎配置檔 | |
| # 對應版本:KataGo v1.16.x / v1.16.5 | |
| # 用途:Lizzie / Lizzieyzy Next / 一般 GTP 分析與對弈 | |
| # 說明:本檔以官方 gtp_example.cfg 為基礎,加入繁體中文註解與常用預設值。 | |
| # 執行範例:katago.exe gtp -model <模型檔> -config katago_gtp_v1.16.5_zh-TW.cfg | |
| # =========================================================================== | |
| # 使用前注意 | |
| # =========================================================================== | |
| # 1. 若使用 TensorRT / CUDA / OpenCL / Metal 版本,請確認執行檔與驅動環境相容。 | |
| # 2. numSearchThreads 建議使用 katago benchmark 測得後再調整。 | |
| # 3. 若只是搭配 Lizzie / Lizzieyzy Next 分析,通常只需修改 maxVisits、ponderingEnabled、numSearchThreads。 | |
| # 4. 以下以註解形式列出的參數,多數為 KataGo 內建預設值;需要時再取消註解。 | |
| # =========================================================================== | |
| # 日誌與檔案 | |
| # =========================================================================== | |
| # 每次執行 KataGo 時,將日誌寫入此目錄。 | |
| logDir = gtp_logs | |
| # 若希望依日期建立日誌子目錄,可改用下列設定。 | |
| # logDirDated = gtp_logs | |
| # 若希望所有日誌寫入單一檔案,可改用下列設定。 | |
| # logFile = gtp.log | |
| # 記錄完整 GTP 通訊內容,方便除錯 GUI 與 KataGo 溝通問題。 | |
| logAllGTPCommunication = true | |
| # 記錄搜尋資訊。 | |
| logSearchInfo = true | |
| # 僅記錄實際選點的搜尋資訊。 | |
| logSearchInfoForChosenMove = false | |
| # 是否將日誌輸出至 stderr。 | |
| logToStderr = false | |
| # KataGo 啟動時會向 stderr 輸出部分訊息;若需安靜啟動可改為 false。 | |
| # startupPrintMessageToStderr = true | |
| # 將資訊寫入 stderr,常用於 OGS 等伺服器聊天或監控用途。 | |
| # ogsChatToStderr = false | |
| # 指定 OpenCL 調校檔與其他快取資料位置。 | |
| # Windows 預設在目前目錄子目錄;Linux 預設在 ~/.katago。 | |
| # homeDataDir = PATH_TO_DIRECTORY | |
| # =========================================================================== | |
| # 分析設定 | |
| # =========================================================================== | |
| # 分析指令中,每條變化圖顯示的後續手數上限。 | |
| # analysisPVLen = 15 | |
| # 勝率回報視角:BLACK、WHITE 或 SIDETOMOVE。 | |
| # 多數 GUI 與分析工具建議使用 SIDETOMOVE。 | |
| # reportAnalysisWinratesAs = SIDETOMOVE | |
| # 分析時增加根節點探索噪聲,使 KataGo 顯示更多候選手。 | |
| # 數值越大,越會分配搜尋量給非主流選點;只影響分析,不影響對弈。 | |
| # analysisWideRootNoise = 0.04 | |
| # 分析時忽略根節點前的歷史手順,降低錯誤棋譜歷史對目前局面的影響。 | |
| # analysisIgnorePreRootHistory = true | |
| # =========================================================================== | |
| # 規則 | |
| # =========================================================================== | |
| # 規則可在 GTP 運行中透過自訂指令修改。 | |
| # 規則說明:https://lightvector.github.io/KataGo/rules.html | |
| # GTP 擴充指令:https://github.com/lightvector/KataGo/blob/master/docs/GTP_Extensions.md | |
| # 常見合法值: | |
| # chinese, japanese, korean, aga, chinese-ogs, new-zealand, stone-scoring, | |
| # ancient-territory, bga, aga-button | |
| # 注意:日韓規則在少數複雜死活/終局爭議局面,未必能完全等同人工裁判。 | |
| rules = tromp-taylor | |
| # 若不使用 rules,也可分別指定以下規則組合。 | |
| # koRule = SIMPLE # 簡單劫爭規則,三劫循環可為無勝負。 | |
| # koRule = POSITIONAL # 位置超級劫。 | |
| # koRule = SITUATIONAL # 情境超級劫。 | |
| # scoringRule = AREA # 數子法。 | |
| # scoringRule = TERRITORY # 數目法。 | |
| # taxRule = NONE # 所有被圍空點計分。 | |
| # taxRule = SEKI # 雙活中的眼不計分。 | |
| # taxRule = ALL # 所有棋塊扣除成活兩眼所需點數。 | |
| # 是否允許多子自殺;單子自殺永遠非法。 | |
| # multiStoneSuicideLegal = false | |
| # multiStoneSuicideLegal = true | |
| # 按鈕制:數子法中第一手 PASS 獎勵 0.5 目且不直接結束對局。 | |
| # hasButton = false | |
| # hasButton = true | |
| # 人類規則下是否允許未清理死子前 PASS。 | |
| # friendlyPassOk = false | |
| # friendlyPassOk = true | |
| # 讓子局貼目補償方式。 | |
| # whiteHandicapBonus = 0 # 白方無補償,常見於 Tromp-Taylor、新西蘭、日本規則。 | |
| # whiteHandicapBonus = N-1 # 白方獲 N-1 目補償,常見於 AGA。 | |
| # whiteHandicapBonus = N # 白方獲 N 目補償,常見於中國規則。 | |
| # 若 GTP 未指定棋盤大小,可指定預設棋盤大小。 | |
| # defaultBoardSize = 19 | |
| # 強制固定貼目;若啟用,會忽略 GTP 控制器傳入的 komi。 | |
| # ignoreGTPAndForceKomi = 7 | |
| # =========================================================================== | |
| # 機器人行為 | |
| # =========================================================================== | |
| # ------------------------------ | |
| # 投子 | |
| # ------------------------------ | |
| # 是否允許投子。 | |
| allowResignation = true | |
| # 投子門檻。-0.90 約表示勝率極低時才投子。 | |
| resignThreshold = -0.90 | |
| # 連續幾回合低於投子門檻後才投子。 | |
| resignConsecTurns = 3 | |
| # 若目差仍小於指定值,即使勝率很低也不投子。 | |
| # resignMinScoreDifference = 10 | |
| # 依棋盤面積限制過早投子。例如 0.25 表示 19 路約 90 手後才允許投子。 | |
| # resignMinMovesPerBoardArea = 0.00 | |
| # ------------------------------ | |
| # 讓子 | |
| # ------------------------------ | |
| # 若黑方開局連下多手,視為讓子局。 | |
| # assumeMultipleStartingBlackMovesAreHandicap = true | |
| # 讓子或貼目不利時,動態提高策略搜索強度。 | |
| # 不影響 Lizzie 類分析用途。 | |
| # dynamicPlayoutDoublingAdvantageCapPerOppLead = 0.045 | |
| # 固定策略強弱,範圍約 -3.0 至 3.0。 | |
| # 此設定會影響分析工具,通常不建議啟用。 | |
| # playoutDoublingAdvantage = 0.0 | |
| # playoutDoublingAdvantagePla = BLACK | |
| # playoutDoublingAdvantagePla = WHITE | |
| # ------------------------------ | |
| # PASS 與終局 | |
| # ------------------------------ | |
| # 較保守地處理 PASS,不假設 PASS 一定直接結束對局。 | |
| # conservativePass = true | |
| # 數目法下禁止進入特殊清理階段,主要用於嚴格規則測試。 | |
| # preventCleanupPhase = true | |
| # ------------------------------ | |
| # 其他行為 | |
| # ------------------------------ | |
| # 對稱局面下僅搜尋等效選點之一。 | |
| # rootSymmetryPruning = true | |
| # 避免特定錯誤定式;主要用於對抗特定 AI。 | |
| # avoidMYTDaggerHack = false | |
| # 避免棋盤各角重複相同定式。 | |
| # avoidRepeatedPatternUtility = 0.0 | |
| # 對抗鏡像棋;GTP 對弈預設可能啟用,分析時通常停用。 | |
| # antiMirror = true | |
| # 修復 PASS 導致搜尋異常的罕見情況。 | |
| # enablePassingHacks = true | |
| # 避免歷史手順中的潛在錯誤影響目前選點。 | |
| # ignorePreRootHistory = false | |
| # =========================================================================== | |
| # 實驗性評估快取 | |
| # =========================================================================== | |
| # v1.16.4 起新增。預設不啟用。 | |
| # 啟用後,KataGo 可能重用先前深入分析過的局面評估。 | |
| # 對互動式覆盤可能有幫助,但仍屬實驗性功能。 | |
| # useEvalCache = false | |
| # evalCacheMinVisits = 100 | |
| # =========================================================================== | |
| # 搜尋限制 | |
| # =========================================================================== | |
| # Playouts:本回合新增的搜尋量。 | |
| # Visits:包含先前回合仍可沿用的搜尋量。 | |
| # Time:時間,單位為秒。 | |
| # 每手最大 visits。搭配 Lizzie 分析時,500 是較輕量的預設值。 | |
| maxVisits = 500 | |
| # 每手最大 playouts。 | |
| # maxPlayouts = 300 | |
| # 每手最大搜尋時間。 | |
| # maxTime = 10.0 | |
| # 是否在對手回合長考。一般 GUI 分析可關閉,避免背景持續耗用 GPU。 | |
| ponderingEnabled = false | |
| # 長考時最大 visits。 | |
| # maxVisitsPondering = 5000 | |
| # 長考時最大 playouts。 | |
| # maxPlayoutsPondering = 3000 | |
| # 長考時最大時間。 | |
| maxTimePondering = 60.0 | |
| # GTP 時間控制緩衝秒數,避免網路或 GUI 延遲導致超時。 | |
| lagBuffer = 1.0 | |
| # 搜尋執行緒數。此值非常依硬體而定,建議用 katago benchmark 測試。 | |
| # RTX 3080 可從 6、8、10、12 等值測試,不必固定套用。 | |
| numSearchThreads = 6 | |
| # 對手 PASS 後降低搜尋量,使收官或終局處理較快。 | |
| searchFactorAfterOnePass = 0.50 | |
| searchFactorAfterTwoPass = 0.25 | |
| # 大幅領先時降低搜尋量,使對局更快結束。 | |
| searchFactorWhenWinning = 0.40 | |
| searchFactorWhenWinningThreshold = 0.95 | |
| # =========================================================================== | |
| # GPU / 神經網路設定 | |
| # =========================================================================== | |
| # 單次送入 GPU 的最大批次大小。 | |
| # 若多 GPU 或記憶體不足,可視情況調整。 | |
| # nnMaxBatchSize = <整數> | |
| # 神經網路快取大小。實際條目數為 2^nnCacheSizePowerOfTwo。 | |
| # 每條約 1.5KB;若啟用完整盤面視覺化,可能約 3KB。 | |
| # nnCacheSizePowerOfTwo = 20 | |
| # 神經網路快取互斥鎖池大小。實際數量為 2^nnMutexPoolSizePowerOfTwo。 | |
| # nnMutexPoolSizePowerOfTwo = 16 | |
| # 是否隨機旋轉/翻轉盤面輸入,提高多樣性。 | |
| # nnRandomize = true | |
| # 固定神經網路隨機種子。 | |
| # nnRandSeed = abcdefg | |
| # 強制使用最大棋盤尺寸的 NN buffer,適合多棋局並行或頻繁變更棋盤大小。 | |
| # gtpForceMaxNNSize = false | |
| # ------------------------------ | |
| # 多 GPU / 多 NN Server 設定 | |
| # ------------------------------ | |
| # 使用多個 NN Server 執行緒。多 GPU 或 Metal GPU+ANE 混合時才需要調整。 | |
| # numNNServerThreadsPerModel = 1 | |
| # ------------------------------ | |
| # TensorRT GPU 設定 | |
| # ------------------------------ | |
| # 僅適用於 TensorRT 版本。 | |
| # 請確認 KataGo TensorRT 執行檔、CUDA、TensorRT 版本相容。 | |
| # 單 GPU:若不是使用預設第 0 張卡,可取消註解指定。 | |
| # trtDeviceToUse = 0 | |
| # 多 GPU 範例,需要搭配 numNNServerThreadsPerModel。 | |
| # trtDeviceToUseThread0 = 0 | |
| # trtDeviceToUseThread1 = 1 | |
| # ------------------------------ | |
| # CUDA GPU 設定 | |
| # ------------------------------ | |
| # 僅適用於 CUDA 版本。 | |
| # 單 GPU:若不是使用預設第 0 張卡,可取消註解指定。 | |
| # cudaDeviceToUse = 0 | |
| # 多 GPU 範例,需要搭配 numNNServerThreadsPerModel。 | |
| # cudaDeviceToUseThread0 = 0 | |
| # cudaDeviceToUseThread1 = 1 | |
| # FP16 與 NHWC 預設自動偵測。除非測試確認需要,通常維持 auto。 | |
| # cudaUseFP16 = auto | |
| # cudaUseNHWC = auto | |
| # ------------------------------ | |
| # Metal GPU 設定 | |
| # ------------------------------ | |
| # 僅適用於 macOS Metal 版本。 | |
| # Windows / NVIDIA 使用者通常不需要修改此區塊。 | |
| # v1.16.x 起,Metal backend 支援以 thread 指定 GPU / ANE。 | |
| # 0 = GPU only | |
| # 100 = ANE only | |
| # 單 Metal 裝置。 | |
| # metalDeviceToUse = 0 | |
| # GPU-only 範例。 | |
| # numNNServerThreadsPerModel = 1 | |
| # metalDeviceToUseThread0 = 0 | |
| # GPU + ANE 混合範例。 | |
| # numNNServerThreadsPerModel = 4 | |
| # metalDeviceToUseThread0 = 0 | |
| # metalDeviceToUseThread1 = 0 | |
| # metalDeviceToUseThread2 = 100 | |
| # metalDeviceToUseThread3 = 100 | |
| # Metal FP16。 | |
| # metalUseFP16 = true | |
| # ------------------------------ | |
| # OpenCL GPU 設定 | |
| # ------------------------------ | |
| # 僅適用於 OpenCL 版本。 | |
| # 針對不同棋盤尺寸重新調校 OpenCL。 | |
| # openclReTunePerBoardSize = false | |
| # 單 GPU:若 KataGo 選錯 OpenCL 裝置,可取消註解指定。 | |
| # 注意:目前常用參數名稱為 openclDeviceToUse。 | |
| # openclDeviceToUse = 0 | |
| # 多 GPU 範例,需要先查看啟動日誌確認裝置 ID。 | |
| # openclDeviceToUseThread0 = X | |
| # openclDeviceToUseThread1 = Y | |
| # FP16 預設自動偵測。 | |
| # openclUseFP16 = auto | |
| # ------------------------------ | |
| # Eigen CPU 設定 | |
| # ------------------------------ | |
| # 僅適用於純 CPU / Eigen 版本。 | |
| # 神經網路評估使用的 CPU 執行緒數;預設通常同 numSearchThreads。 | |
| # numEigenThreadsPerModel = X | |
| # =========================================================================== | |
| # 根節點選點與偏差 | |
| # =========================================================================== | |
| # 固定搜尋隨機種子。 | |
| # searchRandSeed = hijklmn | |
| # 佈局階段選點隨機性溫度。 | |
| # chosenMoveTemperatureEarly = 0.5 | |
| # 佈局階段溫度衰減週期;手數會依棋盤大小縮放。 | |
| # chosenMoveTemperatureHalflife = 19 | |
| # 一般選點溫度。 | |
| # chosenMoveTemperature = 0.10 | |
| # 選點前扣除的 visits 數,降低低概率選點權重。 | |
| # chosenMoveSubtract = 0 | |
| # 修剪低於此閾值的選點。 | |
| # chosenMovePrune = 1 | |
| # 根節點要採樣的對稱數。 | |
| # rootNumSymmetriesToSample = 1 | |
| # 是否使用 LCB,也就是最低置信邊界選點。 | |
| # useLcbForSelection = true | |
| # LCB 所需標準差倍數。 | |
| # lcbStdevs = 5.0 | |
| # 候選手 visits 達到最佳手此比例後才啟用 LCB。 | |
| # minVisitPropForLCB = 0.15 | |
| # =========================================================================== | |
| # 內部參數 | |
| # =========================================================================== | |
| # 一般使用者不建議修改。以下保留作為進階調校參考。 | |
| # 勝負效用縮放因子。 | |
| # winLossUtilityFactor = 1.0 | |
| # 目差效用縮放因子。 | |
| # staticScoreUtilityFactor = 0.10 | |
| # dynamicScoreUtilityFactor = 0.30 | |
| # 動態目差中心向零調整。 | |
| # dynamicScoreCenterZeroWeight = 0.20 | |
| # dynamicScoreCenterScale = 0.75 | |
| # 無勝負對白方的效用。 | |
| # noResultUtilityForWhite = 0.0 | |
| # 和局對白方的等效勝局數。 | |
| # drawEquivalentWinsForWhite = 0.5 | |
| # MCTS 探索常數。 | |
| # cpuctExploration = 1.0 | |
| # cpuctExplorationLog = 0.45 | |
| # 波動局面與穩定局面的探索參數。 | |
| # cpuctUtilityStdevPrior = 0.40 | |
| # cpuctUtilityStdevPriorWeight = 2.0 | |
| # cpuctUtilityStdevScale = 0.85 | |
| # MCTS FPU 削減常數。 | |
| # fpuReductionMax = 0.2 | |
| # rootFpuReductionMax = 0.1 | |
| # fpuParentWeightByVisitedPolicy = true | |
| # 基於網路不確定性的評估加權。 | |
| # useUncertainty = true | |
| # uncertaintyExponent = 1.0 | |
| # uncertaintyCoeff = 0.25 | |
| # 樂觀策略探索。 | |
| # rootPolicyOptimism = 0.2 | |
| # policyOptimism = 1.0 | |
| # 劣勢選點削減指數。 | |
| # valueWeightExponent = 0.25 | |
| # 終局人性化獎勵,例如避免填子浪費時間。 | |
| # rootEndingBonusPoints = 0.5 | |
| # 修剪無意義拖延手。 | |
| # rootPruneUselessMoves = true | |
| # v1.16.x 官方範例新增/保留的進階內部參數。 | |
| # 基於局部棋形 pattern key 的子樹價值偏差修正。 | |
| # subtreeValueBiasFactor = 0.45 | |
| # subtreeValueBiasWeightExponent = 0.85 | |
| # 使用圖搜索,共享轉置局面搜尋結果。 | |
| # useGraphSearch = true | |
| # 搜尋節點表同步分片數。 | |
| # nodeTableShardsPowerOfTwo = 16 | |
| # 每個搜尋執行緒下降節點時加入的 virtual loss 數量。 | |
| # numVirtualLossesPerThread = 1 | |
| # 高多執行緒搜尋下改善評估品質的噪聲剪枝。 | |
| # useNoisePruning = true | |
| # =========================================================================== | |
| # Automatic avoid patterns | |
| # =========================================================================== | |
| # 進階功能:讓 KataGo 自動記錄自己過去下過的手, | |
| # 並在後續對局中降低重複下法傾向。 | |
| # 一般 Lizzie / Lizzieyzy Next 分析不需要啟用。 | |
| # autoAvoidRepeatDir = PATH_TO_NEW_DIRECTORY | |
| # autoAvoidRepeatUtility = 0.004 | |
| # autoAvoidRepeatLambda = 0.9995 | |
| # autoAvoidRepeatMaxPoses = 10000 | |
| # autoAvoidRepeatMinTurnNumber = 0 | |
| # autoAvoidRepeatMaxTurnNumber = 50 | |
| # autoAvoidRepeatSaveChunkSize = 200 | |
| # =========================================================================== | |
| # Avoid SGF patterns | |
| # =========================================================================== | |
| # 進階功能:載入 SGF 檔案,使 KataGo 避免或偏好特定棋譜模式。 | |
| # 一般覆盤與 GUI 分析不需要啟用。 | |
| # avoidSgfPatternDirs = path/to/directory/with/sgfs/ | |
| # avoidSgfPatternUtility = 0.001 | |
| # avoidSgfPatternMaxFiles = 20 | |
| # avoidSgfPatternLambda = 0.90 | |
| # avoidSgfPatternAllowedNames = my-ogs-bot-name1,my-ogs-bot-name2 | |
| # avoidSgfPatternMinTurnNumber = 0 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment