Skip to main content

A library for quantum machine learning following the sklearn standard.

Project description

sQUlearn 0.1.0

Note that this is an early access version! Not everything that is described is already working 100%.

Prerequisites

The package requires at least Python 3.9.

Installation

Stable Release

To install the stable release version of sQUlearn, run the following command:

pip install squlearn

Alternatively, you can install sQUlearn directly from GitHub via

pip install git+ssh://git@github.com:sQUlearn/squlearn.git

Examples

There are several more elaborate examples available in the folder ./examples which display the features of this package. Tutorials for beginners can be found at ./examples/tutorials.

Contribution

If you plan to contribute to this project, please read this section carefully and check that your contribution fits the desired process and style.

Install development version

To contribute to sQUlearn install the package from the source code:

git clone https://github.com/sQUlearn/squlearn.git && cd squlearn
pip install -e .

Devtools

Install the recommended tools with

pip install -r requirements_dev.txt

Style Guide

Code Style

We try to match all of our python code closely to the PEP8 style guide with the exception of using a line length of 99. To ensure this we use the Black formater with the configuration specified in pyproject.toml. To format your code, run

black path/to/folder/or/file.py

from the top level directory to ensure the use of the pyproject.toml configuration file.

We don't enforce but highly encourage the use of the pylint linter to check newly written code and adapt accordingly. To run the linter with the desired configuration run

pylint path/to/folder/or/file.py

from the top level directory to again ensure the use of the pyproject.toml configuration file. Running pylint before and after the contribution shouldn't add violations and/or lower the overall code score.

Docstrings

We furthermore desire to use the Google Python Style Guide for our Docstrings. Generally we at least expect

  • A one-line summary, terminated by a period, and
  • a description of the class/method.

For classes we furthermore expect

  • A list of attributes.

For methods we furthermore expect

  • A list of arguments, and
  • A list of return values.

Git Flow

We use the Git Flow branch structure specified here except for release branches.


License

Apache License 2.0

Imprint

This project is maintained by the quantum computing group at the Fraunhofer Institute for Manufacturing Engineering and Automation IPA. It started as a collection of implementations of quantum machine learning methods.

https://www.ipa.fraunhofer.de/en/expertise/cyber-cognitive-intelligence-cci/quantencomputing.html


Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

squlearn-0.1.0.tar.gz (86.7 kB view hashes)

Uploaded Source

Built Distribution

squlearn-0.1.0-py3-none-any.whl (112.8 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page