Skip to content

Commit

Permalink
Better warnings for gtp and analysis engine, warn unused analysis fields
Browse files Browse the repository at this point in the history
  • Loading branch information
lightvector committed Jul 16, 2024
1 parent 7b589c7 commit f997b26
Show file tree
Hide file tree
Showing 7 changed files with 161 additions and 12 deletions.
49 changes: 46 additions & 3 deletions cpp/command/analysis.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,8 @@ int MainCmds::analysis(const vector<string>& args) {
const bool logErrorsAndWarnings = cfg.contains("logErrorsAndWarnings") ? cfg.getBool("logErrorsAndWarnings") : true;
const bool logSearchInfo = cfg.contains("logSearchInfo") ? cfg.getBool("logSearchInfo") : false;

const bool warnUnusedFields = cfg.contains("warnUnusedFields") ? cfg.getBool("warnUnusedFields") : true;

auto loadParams = [&humanModelFile](ConfigParser& config, SearchParams& params, Player& perspective, Player defaultPerspective) {
bool hasHumanModel = humanModelFile != "";
params = Setup::loadSingleParams(config,Setup::SETUP_FOR_ANALYSIS,hasHumanModel);
Expand Down Expand Up @@ -203,12 +205,46 @@ int MainCmds::analysis(const vector<string>& args) {
logger.write("Loaded model "+ modelFile);
cmd.logOverrides(logger);

if(humanModelFile != "" && !cfg.contains("humanSLProfile")) {
logger.write("WARNING: Provided -human-model but humanSLProfile was not set in the config. The human SL model will not be used until it is set.");
if(humanModelFile != "" && !cfg.contains("humanSLProfile") && humanEval->requiresSGFMetadata()) {
logger.write("Warning: Provided -human-model but humanSLProfile is not yet set. The human SL model will only be used on queries that provide humanSLProfile in overrideSettings.");
if(!logger.isLoggingToStderr())
cerr << "WARNING: Provided -human-model but humanSLProfile was not set in the config. The human SL model will not be used until it is set." << endl;
cerr << "Warning: Provided -human-model but humanSLProfile is not yet set. The human SL model will only be used on queries that provide humanSLProfile in overrideSettings." << endl;
}

//Expected possible keys for queries
const std::set<std::string> expectedKeys = {
"id",
"action",
"terminateId",
"turnNumbers",
"boardXSize",
"boardYSize",
"initialStones",
"moves",
"initialPlayer",
"analyzeTurns",
"priorities",
"rules",
"komi",
"whiteHandicapBonus",
"overrideSettings",
"maxVisits",
"analysisPVLen",
"rootFpuReductionMax",
"rootPolicyTemperature",
"includeMovesOwnership",
"includeMovesOwnershipStdev",
"includeOwnership",
"includeOwnershipStdev",
"includePolicy",
"includePVVisits",
"reportDuringSearchEvery",
"firstReportDuringSearchAfter",
"priority",
"allowMoves",
"avoidMoves"
};

ThreadSafeQueue<string*> toWriteQueue;
auto writeLoop = [&toWriteQueue,&logAllResponses,&logger]() {
while(true) {
Expand Down Expand Up @@ -1092,6 +1128,13 @@ int MainCmds::analysis(const vector<string>& args) {
BoardHistory hist(board,nextPla,rules,0);
hist.setAssumeMultipleStartingBlackMovesAreHandicap(assumeMultipleStartingBlackMovesAreHandicap);

if(warnUnusedFields) {
for (auto it = input.begin(); it != input.end(); ++it) {
if(expectedKeys.find(it.key()) == expectedKeys.end())
reportWarningForId(rbase.id, it.key(), "Unexpected or unused field, do you have a typo? (set warnUnusedFields=false in the config to disable this warning)");
}
}

//Build and enqueue requests
vector<AnalyzeRequest*> newRequests;
bool foundIllegalMove = false;
Expand Down
6 changes: 3 additions & 3 deletions cpp/command/gtp.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2097,10 +2097,10 @@ int MainCmds::gtp(const vector<string>& args) {
cerr << "GTP ready, beginning main protocol loop" << endl;
}

if(humanModelFile != "" && !cfg.contains("humanSLProfile")) {
logger.write("WARNING: Provided -human-model but humanSLProfile was not set in the config. The human SL model will not be used until it is set.");
if(humanModelFile != "" && !cfg.contains("humanSLProfile") && engine->humanEval->requiresSGFMetadata()) {
logger.write("WARNING: Provided -human-model but humanSLProfile was not set in the config or overrides. The human SL model will not be used until it is set in the config or at runtime via kata-set-param.");
if(!logger.isLoggingToStderr())
cerr << "WARNING: Provided -human-model but humanSLProfile was not set in the config. The human SL model will not be used until it is set." << endl;
cerr << "WARNING: Provided -human-model but humanSLProfile was not set in the config or overrides. The human SL model will not be used until it is set in the config or at runtime via kata-set-param." << endl;
}

bool currentlyGenmoving = false;
Expand Down
4 changes: 4 additions & 0 deletions cpp/configs/analysis_example.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,10 @@ logDir = analysis_logs # Each run of KataGo will log to a separate file in this
# logErrorsAndWarnings = true # Log all lines output to stdout from the analysis engine that are errors and warnings
# logSearchInfo = false # Log debug info for every search performed

# Report a warning whenever a query contains a field that is unused. Helps to guard against
# typos when writing code that queries the analysis engine.
# warnUnusedFields = true

# Analysis------------------------------------------------------------------------------------

# Controls the number of moves after the first move in a variation.
Expand Down
1 change: 1 addition & 0 deletions cpp/tests/analysis/badoverride.txt
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
{"id":"badoverride","initialStones":[],"moves":[],"rules":"tromp-taylor","komi":7.5,"boardXSize":19,"boardYSize":19,"overrideSettings":{"sldjfslkjf":1234}}
{"id":"badfield","initialStones":[],"moves":[],"rules":"tromp-taylor","komi":7.5,"boardXSize":19,"boardYSize":19,"overrideSettings":{},"myUnusedField":3,"boardxsize":13}
55 changes: 52 additions & 3 deletions cpp/tests/results/analysis/badoverride.txt.log
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,12 @@ trtUseFP16 = false
: Started, ready to begin handling requests
: Request: {"id":"badoverride","initialStones":[],"moves":[],"rules":"tromp-taylor","komi":7.5,"boardXSize":19,"boardYSize":19,"overrideSettings":{"sldjfslkjf":1234}}
: Warning: {"field":"overrideSettings","id":"badoverride","warning":"Unknown config params: sldjfslkjf"}
: Request: {"id":"badfield","initialStones":[],"moves":[],"rules":"tromp-taylor","komi":7.5,"boardXSize":19,"boardYSize":19,"overrideSettings":{},"myUnusedField":3,"boardxsize":13}
: Warning: {"field":"boardxsize","id":"badfield","warning":"Unexpected or unused field, do you have a typo? (set warnUnusedFields=false in the config to disable this warning)"}
: Warning: {"field":"myUnusedField","id":"badfield","warning":"Unexpected or unused field, do you have a typo? (set warnUnusedFields=false in the config to disable this warning)"}
: Response: {"field":"overrideSettings","id":"badoverride","warning":"Unknown config params: sldjfslkjf"}
: Response: {"field":"boardxsize","id":"badfield","warning":"Unexpected or unused field, do you have a typo? (set warnUnusedFields=false in the config to disable this warning)"}
: Response: {"field":"myUnusedField","id":"badfield","warning":"Unexpected or unused field, do you have a typo? (set warnUnusedFields=false in the config to disable this warning)"}
: MoveNum: 0 HASH: CDCBC1F514D7E680FACD226074256633
A B C D E F G H J K L M N O P Q R S T
19 . . . . . . . . . . . . . . . . . . .
Expand Down Expand Up @@ -98,9 +103,53 @@ Q4 : T -0.92c W -1.53c S 0.13c ( -0.1 L +0.0) LCB -20.49c P 5.83% WF 6
D4 : T 0.25c W -0.61c S 0.15c ( -0.1 L -0.0) LCB -27.79c P 4.67% WF 5.0 PSV 5 N 5 -- D4 R16 C16

: Response: {"id":"badoverride","isDuringSearch":false,"moveInfos":[{"edgeVisits":12,"edgeWeight":12.0,"lcb":0.48387529,"move":"Q3","order":0,"prior":0.0898988396,"pv":["Q3","R16","D3","D17"],"scoreLead":0.248475895,"scoreMean":0.248475895,"scoreSelfplay":0.231620033,"scoreStdev":30.5221434,"utility":0.0046332872,"utilityLcb":-0.044619109,"visits":12,"weight":12.0,"winrate":0.501465432},{"edgeVisits":11,"edgeWeight":11.0,"lcb":0.477691393,"move":"Q17","order":1,"prior":0.0873713195,"pv":["Q17","D3","C16","Q3","E16"],"scoreLead":0.267796795,"scoreMean":0.267796795,"scoreSelfplay":0.269332017,"scoreStdev":30.5407759,"utility":0.00712976278,"utilityLcb":-0.0548715758,"visits":11,"weight":11.0,"winrate":0.499834728},{"edgeVisits":10,"edgeWeight":10.0,"lcb":0.472938128,"move":"D3","order":2,"prior":0.0843607783,"pv":["D3","R16","C16","Q3","E16"],"scoreLead":0.288490919,"scoreMean":0.288490919,"scoreSelfplay":0.240429936,"scoreStdev":30.5160468,"utility":0.00269846032,"utilityLcb":-0.0750791758,"visits":10,"weight":10.0,"winrate":0.500715855},{"edgeVisits":10,"edgeWeight":10.0,"lcb":0.473528867,"move":"R16","order":3,"prior":0.0734689012,"pv":["R16","Q3","C4","D17"],"scoreLead":0.144833998,"scoreMean":0.144833998,"scoreSelfplay":0.162328991,"scoreStdev":30.5743452,"utility":0.00804121948,"utilityLcb":-0.0673829706,"visits":10,"weight":10.0,"winrate":0.500466077},{"edgeVisits":10,"edgeWeight":10.0,"lcb":0.470460084,"move":"C4","order":4,"prior":0.0860089138,"pv":["C4","R16","C16","Q3","E16"],"scoreLead":0.0996444321,"scoreMean":0.0996444321,"scoreSelfplay":0.0563232875,"scoreStdev":30.4857508,"utility":-0.00170071579,"utilityLcb":-0.0756140769,"visits":10,"weight":10.0,"winrate":0.496857713},{"edgeVisits":9,"edgeWeight":9.0,"lcb":0.466308971,"move":"C16","order":5,"prior":0.0821146071,"pv":["C16","R16","D3","Q3","E16"],"scoreLead":0.160868161,"scoreMean":0.160868161,"scoreSelfplay":0.169965189,"scoreStdev":30.5316439,"utility":0.0049062361,"utilityLcb":-0.0879850913,"visits":9,"weight":9.0,"winrate":0.499484445},{"edgeVisits":8,"edgeWeight":8.0,"lcb":0.457091782,"move":"R4","order":6,"prior":0.088979058,"pv":["R4","R16","D3","D17"],"scoreLead":0.0676064736,"scoreMean":0.0676064736,"scoreSelfplay":-0.0445171788,"scoreStdev":30.5791584,"utility":-0.00445761188,"utilityLcb":-0.117472266,"visits":8,"weight":8.0,"winrate":0.497454159},{"edgeVisits":6,"edgeWeight":6.0,"lcb":0.419750536,"move":"D17","order":7,"prior":0.0799687803,"pv":["D17","D3","Q3","Q17","Q5"],"scoreLead":-0.0408678919,"scoreMean":-0.0408678919,"scoreSelfplay":-0.104433093,"scoreStdev":30.6026592,"utility":-0.0110152024,"utilityLcb":-0.21400015,"visits":6,"weight":6.0,"winrate":0.49224516},{"edgeVisits":6,"edgeWeight":6.0,"lcb":0.422450233,"move":"Q4","order":8,"prior":0.0583415255,"pv":["Q4","R16","D3","D17"],"scoreLead":0.0249804797,"scoreMean":0.0249804797,"scoreSelfplay":-0.143232632,"scoreStdev":30.5508993,"utility":-0.00917023946,"utilityLcb":-0.204930081,"visits":6,"weight":6.0,"winrate":0.492364462},{"edgeVisits":5,"edgeWeight":5.0,"lcb":0.396830824,"move":"D4","order":9,"prior":0.0467116497,"pv":["D4","R16","C16"],"scoreLead":-0.04752443,"scoreMean":-0.04752443,"scoreSelfplay":-0.106671067,"scoreStdev":30.7064224,"utility":0.00245411176,"utilityLcb":-0.277884428,"visits":5,"weight":5.0,"winrate":0.496951731},{"edgeVisits":5,"edgeWeight":5.0,"lcb":0.387026176,"move":"D16","order":10,"prior":0.0466186367,"pv":["D16","D3","Q17","Q3"],"scoreLead":-0.191744837,"scoreMean":-0.191744837,"scoreSelfplay":-0.319932207,"scoreStdev":30.6021269,"utility":-0.0118735125,"utilityLcb":-0.296900672,"visits":5,"weight":5.0,"winrate":0.48882159},{"edgeVisits":4,"edgeWeight":4.0,"lcb":0.338120648,"move":"Q16","order":11,"prior":0.0390181653,"pv":["Q16","D3","D17"],"scoreLead":-0.120410532,"scoreMean":-0.120410532,"scoreSelfplay":-0.205809362,"scoreStdev":30.6880204,"utility":-0.00611534217,"utilityLcb":-0.437815038,"visits":4,"weight":4.0,"winrate":0.492299111},{"edgeVisits":3,"edgeWeight":3.0,"lcb":0.22965397,"move":"C3","order":12,"prior":0.0324081928,"pv":["C3","R16","C16"],"scoreLead":-0.664282645,"scoreMean":-0.664282645,"scoreSelfplay":-0.48307692,"scoreStdev":30.7819257,"utility":-0.0139169073,"utilityLcb":-0.755047047,"visits":3,"weight":3.0,"winrate":0.494343306}],"rootInfo":{"currentPlayer":"B","rawLead":-0.038296897,"rawNoResultProb":0.0,"rawScoreSelfplay":-0.504386127,"rawScoreSelfplayStdev":31.2236655,"rawStScoreError":-1.0,"rawStWrError":-0.5,"rawVarTimeLeft":-1.0,"rawWinrate":0.472495511,"scoreLead":0.111541855,"scoreSelfplay":0.0694282872,"scoreStdev":30.569566,"symHash":"47E1EBDAE69A5DED3FF8DB1FA4E91845","thisHash":"47E1EBDAE69A5DED3FF8DB1FA4E91845","utility":-3.22281584e-05,"visits":100,"weight":100.0,"winrate":0.497647823},"turnNumber":0}
: MoveNum: 0 HASH: CDCBC1F514D7E680FACD226074256633
A B C D E F G H J K L M N O P Q R S T
19 . . . . . . . . . . . . . . . . . . .
18 . . . . . . . . . . . . . . . . . . .
17 . . . . . . . . . . . . . . . . . . .
16 . . . . . . . . . . . . . . . . . . .
15 . . . . . . . . . . . . . . . . . . .
14 . . . . . . . . . . . . . . . . . . .
13 . . . . . . . . . . . . . . . . . . .
12 . . . . . . . . . . . . . . . . . . .
11 . . . . . . . . . . . . . . . . . . .
10 . . . . . . . . . . . . . . . . . . .
9 . . . . . . . . . . . . . . . . . . .
8 . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . .

koPOSITIONALscoreAREAtaxNONEsui1komi7.5
Root visits: 100
New playouts: 100
NN rows: 99
NN batches: 99
NN avg batch size: 1
PV: Q17 Q3 C16 D3 E16
Tree:
: T -0.15c W -0.63c S 0.23c ( +0.0 L +0.0) N 100 -- Q17 Q3 C16 D3 E16
---Black(^)---
Q17 : T 0.54c W 0.04c S 0.34c ( +0.2 L +0.1) LCB -5.24c P 8.74% WF 11.0 PSV 15 N 11 -- Q17 Q3 C16 D3 E16
Q3 : T 0.53c W 0.12c S 0.39c ( +0.2 L +0.3) LCB -7.01c P 8.99% WF 10.0 PSV 10 N 10 -- Q3 R16 D3 D17
D3 : T 0.28c W 0.14c S 0.39c ( +0.2 L +0.3) LCB -7.48c P 8.44% WF 10.0 PSV 10 N 10 -- D3 R16 C16 Q3 E16
C4 : T -0.12c W -0.49c S 0.25c ( +0.0 L +0.1) LCB -8.18c P 8.60% WF 10.0 PSV 9 N 10 -- C4 R16 C16 Q3 E16
C16 : T -0.07c W -0.45c S 0.31c ( +0.1 L +0.1) LCB -6.27c P 8.21% WF 11.0 PSV 8 N 11 -- C16 R16 D3 Q3 E16
R4 : T -0.57c W -0.65c S 0.18c ( -0.1 L -0.0) LCB -9.60c P 8.90% WF 9.0 PSV 8 N 9 -- R4 D3 C16 Q17 E16
D17 : T -0.07c W -0.90c S 0.18c ( -0.1 L -0.1) LCB -14.98c P 8.00% WF 7.0 PSV 7 N 7 -- D17 D3 Q3 Q17 Q5
R16 : T 0.48c W -0.19c S 0.29c ( +0.1 L +0.0) LCB -14.10c P 7.35% WF 7.0 PSV 7 N 7 -- R16 D3 C16 Q3 E16
Q4 : T -0.69c W -1.40c S 0.09c ( -0.2 L -0.1) LCB -28.59c P 5.83% WF 5.0 PSV 5 N 5 -- Q4 R16 D3
Q16 : T 0.32c W -0.97c S 0.12c ( -0.2 L -0.1) LCB -27.59c P 3.90% WF 5.0 PSV 4 N 5 -- Q16 R4 D3

: Response: {"id":"badfield","isDuringSearch":false,"moveInfos":[{"edgeVisits":11,"edgeWeight":11.0,"lcb":0.479593962,"move":"Q17","order":0,"prior":0.0873713195,"pv":["Q17","Q3","C16","D3","E16"],"scoreLead":0.0819510241,"scoreMean":0.0819510241,"scoreSelfplay":0.16588365,"scoreStdev":30.6140778,"utility":0.0053873402,"utilityLcb":-0.0523741647,"visits":11,"weight":11.0,"winrate":0.500223071},{"edgeVisits":10,"edgeWeight":10.0,"lcb":0.473685147,"move":"Q3","order":1,"prior":0.0898988396,"pv":["Q3","R16","D3","D17"],"scoreLead":0.301213362,"scoreMean":0.301213362,"scoreSelfplay":0.241898318,"scoreStdev":30.4932311,"utility":0.00527496519,"utilityLcb":-0.0700505176,"visits":10,"weight":10.0,"winrate":0.500587106},{"edgeVisits":10,"edgeWeight":10.0,"lcb":0.472991423,"move":"D3","order":2,"prior":0.0843607783,"pv":["D3","R16","C16","Q3","E16"],"scoreLead":0.288494048,"scoreMean":0.288494048,"scoreSelfplay":0.240429646,"scoreStdev":30.5160487,"utility":0.00282574789,"utilityLcb":-0.0748028127,"visits":10,"weight":10.0,"winrate":0.500715908},{"edgeVisits":10,"edgeWeight":10.0,"lcb":0.46875243,"move":"C4","order":3,"prior":0.0860089138,"pv":["C4","R16","C16","Q3","E16"],"scoreLead":0.0571804077,"scoreMean":0.0571804077,"scoreSelfplay":0.0412740135,"scoreStdev":30.5273927,"utility":-0.00123051523,"utilityLcb":-0.081800701,"visits":10,"weight":10.0,"winrate":0.497527496},{"edgeVisits":11,"edgeWeight":11.0,"lcb":0.475609197,"move":"C16","order":4,"prior":0.0821146071,"pv":["C16","R16","D3","Q3","E16"],"scoreLead":0.129301806,"scoreMean":0.129301806,"scoreSelfplay":0.127292713,"scoreStdev":30.5112844,"utility":-0.000678616716,"utilityLcb":-0.0626666615,"visits":11,"weight":11.0,"winrate":0.497747784},{"edgeVisits":9,"edgeWeight":9.0,"lcb":0.464515958,"move":"R4","order":5,"prior":0.088979058,"pv":["R4","D3","C16","Q17","E16"],"scoreLead":-0.0215242796,"scoreMean":-0.0215242796,"scoreSelfplay":-0.0673413468,"scoreStdev":30.5971244,"utility":-0.00568143949,"utilityLcb":-0.0959863801,"visits":9,"weight":9.0,"winrate":0.496767723},{"edgeVisits":7,"edgeWeight":7.0,"lcb":0.442267452,"move":"D17","order":6,"prior":0.0799687803,"pv":["D17","D3","Q3","Q17","Q5"],"scoreLead":-0.0512871297,"scoreMean":-0.0512871297,"scoreSelfplay":-0.0616628379,"scoreStdev":30.6558785,"utility":-0.000709540576,"utilityLcb":-0.149824492,"visits":7,"weight":7.0,"winrate":0.495522792},{"edgeVisits":7,"edgeWeight":7.0,"lcb":0.446976204,"move":"R16","order":7,"prior":0.0734689012,"pv":["R16","D3","C16","Q3","E16"],"scoreLead":0.00340309099,"scoreMean":0.00340309099,"scoreSelfplay":0.100339217,"scoreStdev":30.6136846,"utility":0.00484640203,"utilityLcb":-0.140950579,"visits":7,"weight":7.0,"winrate":0.499046554},{"edgeVisits":5,"edgeWeight":5.0,"lcb":0.393351092,"move":"Q4","order":8,"prior":0.0583415255,"pv":["Q4","R16","D3"],"scoreLead":-0.0888727103,"scoreMean":-0.0888727103,"scoreSelfplay":-0.204524268,"scoreStdev":30.6626382,"utility":-0.00688970376,"utilityLcb":-0.285886544,"visits":5,"weight":5.0,"winrate":0.492992821},{"edgeVisits":5,"edgeWeight":5.0,"lcb":0.395489305,"move":"Q16","order":9,"prior":0.0390181653,"pv":["Q16","R4","D3"],"scoreLead":-0.123633533,"scoreMean":-0.123633533,"scoreSelfplay":-0.153464946,"scoreStdev":30.6993655,"utility":0.00319607542,"utilityLcb":-0.275915304,"visits":5,"weight":5.0,"winrate":0.495171941},{"edgeVisits":4,"edgeWeight":4.0,"lcb":0.337994542,"move":"D4","order":10,"prior":0.0467116497,"pv":["D4","R4","C16"],"scoreLead":-0.00884212533,"scoreMean":-0.00884212533,"scoreSelfplay":-0.167284202,"scoreStdev":30.6393019,"utility":-0.0045036601,"utilityLcb":-0.439526931,"visits":4,"weight":4.0,"winrate":0.493359996},{"edgeVisits":5,"edgeWeight":5.0,"lcb":0.387150911,"move":"D16","order":11,"prior":0.0466186367,"pv":["D16","D3","Q17","Q3"],"scoreLead":-0.191723116,"scoreMean":-0.191723116,"scoreSelfplay":-0.319854421,"scoreStdev":30.6021531,"utility":-0.0142090924,"utilityLcb":-0.298893295,"visits":5,"weight":5.0,"winrate":0.488823841},{"edgeVisits":3,"edgeWeight":3.0,"lcb":0.225531097,"move":"C17","order":12,"prior":0.0303548295,"pv":["C17","R16","D3"],"scoreLead":-0.778731823,"scoreMean":-0.778731823,"scoreSelfplay":-0.630044242,"scoreStdev":30.8120698,"utility":-0.0140931439,"utilityLcb":-0.756985312,"visits":3,"weight":3.0,"winrate":0.490849728},{"edgeVisits":2,"edgeWeight":2.0,"lcb":-0.0429219506,"move":"C3","order":13,"prior":0.0324081928,"pv":["C3","R16"],"scoreLead":-0.504181392,"scoreMean":-0.504181392,"scoreSelfplay":-0.482590124,"scoreStdev":30.7174235,"utility":-0.0195532814,"utilityLcb":-1.51380785,"visits":2,"weight":2.0,"winrate":0.490740396}],"rootInfo":{"currentPlayer":"B","rawLead":-0.038296897,"rawNoResultProb":0.0,"rawScoreSelfplay":-0.504386127,"rawScoreSelfplayStdev":31.2236655,"rawStScoreError":-1.0,"rawStWrError":-0.5,"rawVarTimeLeft":-1.0,"rawWinrate":0.472495511,"scoreLead":0.0405124408,"scoreSelfplay":0.0195052246,"scoreStdev":30.5954329,"symHash":"47E1EBDAE69A5DED3FF8DB1FA4E91845","thisHash":"47E1EBDAE69A5DED3FF8DB1FA4E91845","utility":-0.00108239348,"visits":100,"weight":100.0,"winrate":0.497061319},"turnNumber":0}
: tests/models/g170-b6c96-s175395328-d26788732.bin.gz
: NN rows: 90
: NN batches: 90
: NN rows: 99
: NN batches: 99
: NN avg batch size: 1
: GPU -1 finishing, processed 90 rows 90 batches
: GPU -1 finishing, processed 99 rows 99 batches
: All cleaned up, quitting
Loading

0 comments on commit f997b26

Please sign in to comment.