Nibbler - Leela Chess Zero (Lc0) interface

Discussion of anything and everything relating to chess playing software and machines.

Moderators: hgm, Rebel, chrisw

User avatar
Guenther
Posts: 4605
Joined: Wed Oct 01, 2008 6:33 am
Location: Regensburg, Germany
Full name: Guenther Simon

Re: Nibbler - Leela Chess Zero (Lc0) interface

Post by Guenther »

zullil wrote: Sun Aug 04, 2019 7:47 pm
Max wrote: Sun Aug 04, 2019 6:47 pm Nibbler version 1.01 was just released at https://github.com/fohristiwhirl/nibbler/releases

No need for manual settings any more. Just download, unzip to a folder of your choice and start the Nibbler binary.

If this is your first start, Nibbler will probably not find the Lc0 engine and your weights file.
  • In this case, you notice a blue message "Engine not found...". Just open the menu entry Engine and click "Choose weights file..." and/or "Choose engine...".
Board and font size can now be changed with the menu entry Sizes. Your changes get saved.

Engine.png
Some further info:

Nibbler will now create config.json for you, and (under Linux) it will be saved in ~/.config/Nibbler. From Nibbler you can set some of the preferences in config.json. It does not appear that you can set many of Lc0's parameters, so these need to be added manually to config.json or placed in your lc0.config file.
In Windows it will be saved in:
C:\Users\'XYZ'\AppData\Roaming\Nibbler\

It seems the old config option of max lines to display isn't valid anymore and it will always show 20 max lines now.
Using 'Top move only' does not work here and there seems to be no other option to shrink the number of displayed lines?
https://rwbc-chess.de

trollwatch:
Chessqueen + chessica + AlexChess + Eduard + Sylwy
Steppenwolf
Posts: 75
Joined: Thu Jan 31, 2019 4:54 pm
Full name: Sven Steppenwolf

Re: Nibbler - Leela Chess Zero (Lc0) interface

Post by Steppenwolf »

Great, Great GUI. :D

Above, you described a procedure to compile a macOS binary version.
Nevertheless, I did not worked to me. Maybe I am too stupid, but please can you post also under Github a Mac-Version?

Is it also possible to use this version with Stockfish under Mac? Can you adjust the number of the Cores etc?

Thanks in Advance.
Sven
Max
Posts: 247
Joined: Tue Apr 13, 2010 10:41 am

Re: Nibbler - Leela Chess Zero (Lc0) interface

Post by Max »

I put a macOS App version of Nibbler - including a compiled lc0 0.22.0 engine - on github

https://github.com/twoplan/Nibbler-for-macOS

Feedback from mac users, if this works on other systems than mine, is very welcome :!:

:arrow: All the programing stuff was done by others! This package is just a combination of nibbler, electron and lc0 for mac users.
Hope we're not just the biological boot loader for digital super intelligence. Unfortunately, that is increasingly probable - Elon Musk
Steppenwolf
Posts: 75
Joined: Thu Jan 31, 2019 4:54 pm
Full name: Sven Steppenwolf

Re: Nibbler - Leela Chess Zero (Lc0) interface

Post by Steppenwolf »

Dear Max,

thanks for posting the first macOS version of Nibbler!

For me (with my MacBook Pro, mid 2014 with Mojave 10.14.6) it works perfectly. Also the Lc0 runs with blas backend well. It was also good from you to post the nps for each backend with the different sizes of the weights files. So I have a good comparison if everything goes fine.

I have some additional remarks/wishes for the next release:

-Is it possible to run properly also UCI engines like Stockfish (by using different configuration options like number of threads, analysis contempt etc.) in Nibbler?

-Adding the possibility for engine matches between SF and Lc0?

-Analysing the same position by running two engines simultanously?

-Automatic backward analysis feature for pgn-files?

-Adding the possiblity for more sizes of the board (larger than 1280) and the infobox and move history font (larger than 32). I am using a resolution of 1920 x 1200.

-Loading of opening books?

-…?

Please go ahead with your nice GUI!!!

Sven
Max
Posts: 247
Joined: Tue Apr 13, 2010 10:41 am

Re: Nibbler - Leela Chess Zero (Lc0) interface

Post by Max »

Steppenwolf wrote: Tue Aug 06, 2019 7:55 am Dear Max,

thanks for posting the first macOS version of Nibbler!
..
..

Please go ahead with your nice GUI!!!

Sven
Thanks Sven for your feedback!

:arrow: :arrow: There is a big misunderstanding: I'm not the author of Nibbler! I connected only some parts for the convenience of mac users ( = the macOS App version of Nibbler from the post above).

For your requests, please get in contact with fohristiwhirl, the creator of Nibbler at https://github.com/fohristiwhirl/nibbler
Hope we're not just the biological boot loader for digital super intelligence. Unfortunately, that is increasingly probable - Elon Musk
Steppenwolf
Posts: 75
Joined: Thu Jan 31, 2019 4:54 pm
Full name: Sven Steppenwolf

Re: Nibbler - Leela Chess Zero (Lc0) interface

Post by Steppenwolf »

Thanks Max for this clarification!

I am not member of Github and I do not want to make an extra login for this issue.

I would appreciate if you could foreward/post my suggestions on his Github.

Thanks again and I am waiting for your next macOS release of Nibbler-:)
Sven
User avatar
Guenther
Posts: 4605
Joined: Wed Oct 01, 2008 6:33 am
Location: Regensburg, Germany
Full name: Guenther Simon

Re: Nibbler - Leela Chess Zero (Lc0) interface

Post by Guenther »

Steppenwolf wrote: Tue Aug 06, 2019 11:36 am Thanks Max for this clarification!

I am not member of Github and I do not want to make an extra login for this issue.

I would appreciate if you could foreward/post my suggestions on his Github.

Thanks again and I am waiting for your next macOS release of Nibbler-:)
Sven
You can already change the screensize yourself in the still existing but hidden config.json.
No idea though where apps hide user profiles on a Mac. You should know this though.
Here is my example for current version 1.02 (with 1920*1080 resolution):

Code: Select all

{
	"path": "C:\\Engines\\UCI\\LC0_0214-ID42845\\LC0_0214-ID42845.exe",
	"options": {},
	"args": [],
	"width": 1920,
	"height": 1080,
	"board_size": 800,
	"info_font_size": 16,
	"pgn_font_size": 16,
	"fen_font_size": 16,
	"status_font_size": 16,
	"arrow_width": 8,
	"arrowhead_radius": 12,
	"board_font": "18px Arial",
	"light_square": "#e7d0a7",
	"dark_square": "#a77e5c",
	"active_square": "#66aaaa",
	"move_colour": "#ffff00",
	"move_colour_alpha": 0.15,
	"best_colour": "#66aaaa",
	"good_colour": "#66aa66",
	"bad_colour": "#cccc66",
	"terrible_colour": "#cc6666",
	"bad_move_threshold": 0.02,
	"terrible_move_threshold": 0.04,
	"uncertainty_cutoff": -999,
	"arrowhead_type": 0,
	"show_cp": false,
	"cp_white_pov": false,
	"show_n": false,
	"show_n_abs": true,
	"show_p": true,
	"show_v": false,
	"show_q": false,
	"show_d": false,
	"show_u": false,
	"show_q_plus_u": false,
	"searchmoves_buttons": false,
	"infobox_stats_newline": false,
	"max_info_lines": 6,
	"hover_draw": false,
	"hover_method": 0,
	"serious_analysis_mode": false,
	"sam_ev": true,
	"sam_n": true,
	"sam_n_abs": false,
	"sam_of_n": true,
	"sam_p": false,
	"sam_v": false,
	"sam_q": false,
	"sam_d": false,
	"sam_u": false,
	"sam_q_plus_u": false,
	"update_delay": 170,
	"animate_delay_multiplier": 4,
	"search_nodes": "infinite",
	"save_enabled": false,
	"override_piece_directory": null,
	"logfile": "Nibbler.log",
	"log_info_lines": true
}
Most of your other wishes are beyond what the Nibbler author wants to create, as it is/was never planned
to substitute any tournament GUI, but a plain analysis GUI for mainly LC0.
(it is just a neat side effect that it will work with some other uci engines for analysis)

From the readme:
Nibbler

Nibbler is a real-time analysis GUI for Leela Chess Zero (Lc0), which runs Leela in the background and constantly displays opinions about the current position. You can also compel the engine to evaluate one or more specific moves. Nibbler is loosely inspired by Lizzie.
Github answer to the desire for enabling support for other uci programs:
fohristiwhirl commented on 20 Jun •

It's mostly for Lc0. Another UCI engine should at least run, but various things about the display will be off. In addition, to get more info from the engine, we send a command to the engine (MultiPV 500) which, as a side-effect, weakens non-NN engines.
https://rwbc-chess.de

trollwatch:
Chessqueen + chessica + AlexChess + Eduard + Sylwy
zullil
Posts: 6442
Joined: Tue Jan 09, 2007 12:31 am
Location: PA USA
Full name: Louis Zulli

Re: Nibbler - Leela Chess Zero (Lc0) interface

Post by zullil »

Guenther wrote: Tue Aug 06, 2019 12:16 pm
You can already change the screensize yourself in the still existing but hidden config.json.
No idea though where apps hide user profiles on a Mac. You should know this though.
He might be able to determine the location of the file using Nibbler's menu: App --> Show config.json. I suppose macOS needs special prompting to show "hidden" files.
Max
Posts: 247
Joined: Tue Apr 13, 2010 10:41 am

Re: Nibbler - Leela Chess Zero (Lc0) interface

Post by Max »

zullil wrote: Tue Aug 06, 2019 2:42 pm
Guenther wrote: Tue Aug 06, 2019 12:16 pm
You can already change the screensize yourself in the still existing but hidden config.json.
No idea though where apps hide user profiles on a Mac. You should know this though.
He might be able to determine the location of the file using Nibbler's menu: App --> Show config.json. I suppose macOS needs special prompting to show "hidden" files.
Louis, your suggestion works perfect on a mac. Also nothing mac specific too. It's located at ~/Library/Application Support/Nibbler/config.json

But why do you guys want to change the screensize within this file :?:
Just resize the Nibbler window to your needs (like every other window on your system) and save this with menu Sizes/Save window size.
Hope we're not just the biological boot loader for digital super intelligence. Unfortunately, that is increasingly probable - Elon Musk
zullil
Posts: 6442
Joined: Tue Jan 09, 2007 12:31 am
Location: PA USA
Full name: Louis Zulli

Re: Nibbler - Leela Chess Zero (Lc0) interface

Post by zullil »

Guenther wrote: Mon Aug 05, 2019 8:51 am
It seems the old config option of max lines to display isn't valid anymore and it will always show 20 max lines now.
Using 'Top move only' does not work here and there seems to be no other option to shrink the number of displayed lines?
The developer just restored max_info_lines as a hidden configuration option, just for you. :D

Code: Select all

if (typeof config.max_info_lines === "number" && config.max_info_lines > 0) {		// Hidden option, request of rwbc
			info_list = info_list.slice(0, config.max_info_lines);
}

https://github.com/fohristiwhirl/nibble ... f2eb36a881