Skip to content

WIP: NetKet v3.0

Vicentini Filippo requested to merge v3.0 into master

Created by: gcarleo

This is a WIP pull request for version 3.0

Major goals for this release:

  • Remove all C++ code
  • Improve documentation and tutorials
  • Define and efficiently use models and samplers in JAX
  • Define and use models in PyTorch
  • GPU support

Breaking changes:

  • netket.optimizer objects (including SR) are now constructed passing also an explicit netket.machine.AbstractMachine object for example
machine=nk.machine.Rbm(alpha=1,hilbert=hi)
opt=nk.optimizer.Sgd(machine,learning_rate=0.01)
  • log_val and der_log methods in machines derived from netket.machine.AbstractMachine now accept only batched inputs (matrices)
  • netket.utils.seed is now in netket.random.seed together with all other random methods

Main Remaining Tasks :

  • Rewrite graph.Lattice in python #405
  • Make machine.Torch compatible with the latest Jacobian Vector function #363
  • Add missing samplers in sampler.jax.* #416 (closed)
  • Make dispatching over optimal sampling/optimizer backends automatic #413 (closed)
  • Write tutorials on the use of backends and GPU #410 (closed)
  • MPS wave-functions in JAX #390 (closed)

Merge request reports