I’m asking because the Leela Chess Zero project (http://lczero.org/) has a distributed model where neural network files are being distributed to thousands of contributors by direct download, and this process could perhaps be improved.
Currently, the files are about 70 MB.
Basically my question is: what steps would be involved in making this work? Server side and client side.
I’m not part of the development team directly but I said I would look into the feasibility of this.
The situation is that there is a client running training data generation and once in a while there is a new version of the network file, which it then downloads from the server.
I’m thinking that these neural network files could be put in IPFS and the clients could run an IPFS daemon to share the load of distributing the files.
The client itself is written in go, at https://github.com/glinscott/leela-chess/tree/master/go/src/client.