Project Name | Stars | Downloads | Repos Using This | Packages Using This | Most Recent Commit | Total Releases | Latest Release | Open Issues | License | Language |
---|---|---|---|---|---|---|---|---|---|---|
Data Science Best Resources | 2,466 | 12 days ago | 5 | mit | ||||||
Carefully curated resource links for data science in one place | ||||||||||
Awesome Quantum Machine Learning | 2,206 | 3 months ago | 8 | cc0-1.0 | HTML | |||||
Here you can get all the Quantum Machine learning Basics, Algorithms ,Study Materials ,Projects and the descriptions of the projects around the web | ||||||||||
Pennylane | 1,785 | 10 | 24 | a day ago | 33 | June 20, 2022 | 318 | apache-2.0 | Python | |
PennyLane is a cross-platform Python library for differentiable programming of quantum computers. Train a quantum computer the same way as a neural network. | ||||||||||
Quantum | 1,592 | 2 | 2 days ago | 8 | February 03, 2022 | 125 | apache-2.0 | Python | ||
Hybrid Quantum-Classical Machine Learning in TensorFlow | ||||||||||
Awesome Ai Books | 1,086 | 2 months ago | mit | Jupyter Notebook | ||||||
Some awesome AI related books and pdfs for learning and downloading, also apply some playground models for learning | ||||||||||
Yao.jl | 785 | 25 days ago | 1 | December 04, 2019 | 36 | other | Julia | |||
Extensible, Efficient Quantum Algorithm Design for Humans. | ||||||||||
Strawberryfields | 697 | 6 | 7 | a month ago | 25 | June 01, 2022 | 30 | apache-2.0 | Python | |
Strawberry Fields is a full-stack Python library for designing, simulating, and optimizing continuous variable (CV) quantum optical circuits. | ||||||||||
Torchquantum | 679 | 1 | 3 days ago | 5 | March 15, 2021 | 40 | mit | Python | ||
A PyTorch-based framework for Quantum Simulation, Quantum Machine Learning, Quantum Neural Networks, Parameterized Quantum Circuits with support for easy deployments on real quantum computers. | ||||||||||
Covalent | 460 | 2 days ago | 138 | July 07, 2022 | 138 | agpl-3.0 | Python | |||
Pythonic tool for running machine-learning/high performance/quantum-computing workflows in heterogenous environments. | ||||||||||
Netket | 433 | 2 days ago | 46 | May 24, 2022 | 104 | apache-2.0 | Python | |||
Machine learning algorithms for many-body quantum systems |
NetKet is an open-source project delivering cutting-edge methods for the study of many-body quantum systems with artificial neural networks and machine learning techniques. It is a Python library built on JAX.
NetKet runs on MacOS and Linux. We recommend to install NetKet using pip
, but it can also be installed with conda
.
It is often necessary to first update pip
to a recent release (>=20.3
) in order for upper compatibility bounds to be considered and avoid a broken installation.
For instructions on how to install the latest stable/beta release of NetKet see the Get Started page of our website or run the following command (Apple M1 users, follow that link for more instructions):
pip install --upgrade pip
pip install --upgrade netket
If you wish to install the current development version of NetKet, which is the master branch of this GitHub repository, together with the additional dependencies, you can run the following command:
pip install --upgrade pip
pip install 'git+https://github.com/netket/netket.git#egg=netket[all]'
To speed-up NetKet-computations, even on a single machine, you
can install the MPI-related dependencies by using [mpi]
between square brackets.
pip install --upgrade pip
pip install --upgrade "netket[mpi]"
We recommend to install NetKet with all it's extra dependencies, which are documented below.
However, if you do not have a working MPI compiler in your PATH this installation will most likely fail because
it will attempt to install mpi4py
, which enables MPI support in netket.
The latest release of NetKet is always available on PyPi and can be installed with pip
.
NetKet is also available on conda-forge, however the version available through conda install
can be slightly out of date compared to PyPi.
To check what is the latest version released on both distributions you can inspect the badges at the top of this readme.
When installing netket
with pip, you can pass the following extra variants as square brakets. You can install several of them by separating them with a comma.
"[dev]"
: installs development-related dependencies such as black, pytest and testing dependencies"[mpi]"
: Installs mpi4py
to enable multi-process parallelism. Requires a working MPI compiler in your path"[extra]"
: Installs tensorboardx
to enable logging to tensorboard, and openfermion to convert the QubitOperators."[all]"
: Installs all extra dependenciesTo enable MPI support you must install mpi4jax. Please note that we advise to install mpi4jax with the same tool (conda or pip) with which you install it's dependency mpi4py
.
To check whether MPI support is enabled, check the flags
>>> import netket
>>> netket.utils.mpi.available
True
WARNING: Windows support is experimental, and you should expect suboptimal performance.
We suggest to use Windows Subsystem for Linux (WSL), on which you can install NetKet following the same instructions as above, and CUDA and MPI work as intended.
However, if you just want to quickly get started with NetKet, it is also possible to install it natively on Windows. First, download an unofficial build of jax
from cloudhan/jax-windows-builder:
pip install --upgrade pip
pip install "jax[cpu]===0.3.25" -f https://whls.blob.core.windows.net/unstable/index.html --use-deprecated legacy-resolver
Alternatively, you may specify a version with CUDA support.
Then install NetKet as usual:
pip install --upgrade netket
If you want MPI support, please follow the discussion in mpi4jax.
To get started with NetKet, we recommend you give a look at our tutorials page, by running them on your computer or on Google Colaboratory. There are also many example scripts that you can download, run and edit that showcase some use-cases of NetKet, although they are not commented.
If you want to get in touch with us, feel free to open an issue or a discussion here on GitHub, or to join the MLQuantum slack group where several people involved with NetKet hang out. To join the slack channel just accept this invitation