{"id":49416403,"url":"https://github.com/scaleway/pennylane-scaleway","last_synced_at":"2026-04-29T03:09:56.177Z","repository":{"id":321079119,"uuid":"1084259477","full_name":"scaleway/pennylane-scaleway","owner":"scaleway","description":"Scaleway provider implementation for Pennylane SDK (Quantum Machine Learning)","archived":false,"fork":false,"pushed_at":"2026-02-20T17:44:32.000Z","size":541,"stargazers_count":2,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-02-20T21:16:43.808Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/scaleway.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-10-27T12:51:22.000Z","updated_at":"2026-02-20T16:47:25.000Z","dependencies_parsed_at":"2025-10-27T18:21:09.608Z","dependency_job_id":null,"html_url":"https://github.com/scaleway/pennylane-scaleway","commit_stats":null,"previous_names":["scaleway/pennylane-scaleway"],"tags_count":12,"template":false,"template_full_name":null,"purl":"pkg:github/scaleway/pennylane-scaleway","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scaleway%2Fpennylane-scaleway","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scaleway%2Fpennylane-scaleway/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scaleway%2Fpennylane-scaleway/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scaleway%2Fpennylane-scaleway/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/scaleway","download_url":"https://codeload.github.com/scaleway/pennylane-scaleway/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scaleway%2Fpennylane-scaleway/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32408525,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-29T02:37:21.628Z","status":"ssl_error","status_checked_at":"2026-04-29T02:36:50.947Z","response_time":110,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-04-29T03:09:47.276Z","updated_at":"2026-04-29T03:09:56.172Z","avatar_url":"https://github.com/scaleway.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n\u003ctable align=\"center\" bgcolor=\"black\"\u003e\n    \u003ctr\u003e\n        \u003ctd bgcolor=\"black\" align=\"center\" width=\"300\"\u003e\u003cimg src=\"assets/pennylane-logo.png\" width=\"300\" alt=\"Pennylane Logo\"\u003e\u003c/td\u003e\n        \u003ctd valign=\"middle\" style=\"font-size: 24px; font-weight: bold; padding: 0 20px;\"\u003e×\u003c/td\u003e\n        \u003ctd bgcolor=\"black\" align=\"center\" width=\"300\"\u003e\u003cimg src=\"assets/scaleway-logo.png\" width=\"200\" alt=\"Scaleway Logo\"\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n\u003c/table\u003e\n\n# Pennylane devices running on Scaleway's Quantum-as-a-Service\n**[Pennylane](https://pennylane.ai/)** is an open-source framework for quantum machine learning, automatic differentiation, and optimization of hybrid quantum-classical computations.\n\n**Pennylane-Scaleway** is a Python package to run pennylane's QML circuits on **[Scaleway](https://www.scaleway.com/)** infrastructure, providing access to:\n- [Aer](https://github.com/Qiskit/qiskit-aer) state vector and tensor network multi-GPU emulators\n- [AQT](https://www.aqt.eu/) trapped-ions quantum computers\n- [IQM](https://meetiqm.com/) superconducting quantum computers\n- [CUDA-Q](https://developer.nvidia.com/cuda-q) NVIDIA's quantum framework\n- [qsim](https://quantumai.google/qsim) Google's full state-vector simulator\n\nMore info on the **[Quantum service web page](https://www.scaleway.com/en/quantum-as-a-service/)**.\n\n## Installation\n\n### Prerequisites\n\nGet your `project-id` as well as `secret-key` credentials from your Scaleway account.\nYou can create and find them in the **[Scaleway console](https://console.scaleway.com/)**. Here how to create an [API key](https://www.scaleway.com/en/docs/iam/how-to/create-api-keys/).\n\nFor more information about the device you want to use, its pricing and capabilities, you can visit [this page](https://www.scaleway.com/fr/quantum-as-a-service/). Use the `backend` parameter to select the device you want to use (for instance `backend=\"EMU-IBEX-12PQ-L4\"` if you want to try AQT emulation using a L4 GPU).\n\n### Supported device names\n\nThe following device names are supported:\n - `scaleway.aer` - Aer emulation, offers flexibility, noiseless by default but can handle given Aer's noise models, large choice of backends.\n - `scaleway.aqt` - AQT (Alpine Quantum Technologies), noisy trapped-ions based quantum computers.\n - `scaleway.iqm` - IQM, superconducting quantum computers.\n - `scaleway.cudaq` - NVIDIA, emulation framework.\n - `scaleway.qsim` - Google, full state-vector simulator.\n\n### Install the package\nWe encourage installing Scaleway provider via pip:\n\n```bash\npip install pennylane-scaleway\n```\n\n## Getting started\n\nTo run your pennylane's circuits on Scaleway's quantum backends, simply change your device's name and add your `project_id` and `secret_key` (OR set the environment variables `SCW_PROJECT_ID` and `SCW_SECRET_KEY`):\n```python\nimport pennylane as qml # No need to import pennylane-scaleway as long as it is installed in your current environment.\n\ndevice = qml.device(\"scaleway.aer\",\n        wires=2,\n        project_id=\u003cyour-project-id\u003e,   # Or set SCW_PROJECT_ID environment variable\n        secret_key=\u003cyour-secret-key\u003e,   # Or set SCW_SECRET_KEY environment variable\n        backend=\"EMU-AER-16C-128M\"\n    )\n\n@qml.set_shots(512)\n@qml.qnode(device)\ndef my_circuit():\n    qml.Hadamard(wires=0)\n    qml.CNOT(wires=[0, 1])\n    return qml.counts()\n\nprint(my_circuit())\n\ndevice.stop() # Don't forget to close the session when you're done!\n```\n\nYou can also use the device as a context manager so your session is automatically closed when exiting the context:\n```python\nimport pennylane as qml\n\nwith qml.device(\"scaleway.aqt\",\n    project_id=\u003cyour-project-id\u003e,\n    secret_key=\u003cyour-secret-key\u003e,\n    backend=\"EMU-IBEX-12PQ-L4\",\n) as dev:\n\n    @qml.set_shots(512)\n    @qml.qnode(dev)\n    def circuit():\n        qml.Hadamard(wires=0)\n        qml.CNOT(wires=[0, 1])\n        return qml.counts()\n\n    print(circuit())\n```\n\n\u003e **Friendly reminder** to avoid writing your credentials directly in your code. Use environment variables instead, load from a .env file or any secret management technique of your choice.\n\n## Session management\nA QPU session is automatically created when you instantiate a device. You can manage it manually by calling `device.start()` and `device.stop()`, but it is recommended to use the context manager approach instead. You may also attach to an existing session, handle maximum session duration and idle duration by setting these as keyword arguments when instantiating the device. For example:\n\n```python\nimport pennylane as qml\n\nwith qml.device(\"scaleway.aer\",\n    wires=2,\n    project_id=\u003cyour-project-id\u003e,\n    secret_key=\u003cyour-secret-key\u003e,\n    backend=\"EMU-AER-16C-128M\",\n    max_duration=\"1h\",\n    max_idle_duration=\"5m\"\n) as dev:\n...\n```\n\nYou can visualize your sessions on the **[Scaleway Console](https://console.scaleway.com/)** under the Labs/Quantum section.\n\n## Documentation\nDocumentation is available at **[Scaleway Docs](https://www.scaleway.com/en/docs/)**.\n\nYou can find examples under the [examples folder](doc/examples/) of this repository.\n\n## Development\nThis repository is in a very early stage and is still in active development. If you are looking for a way to contribute please read [CONTRIBUTING.md](CONTRIBUTING.md).\n\n## Reach us\nWe love feedback! Feel free to reach us on [Scaleway Slack community](https://slack.scaleway.com/), we are waiting for you on [#opensource](https://scaleway-community.slack.com/app_redirect?channel=opensource).\n\n## License\n[License Apache 2.0](LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscaleway%2Fpennylane-scaleway","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fscaleway%2Fpennylane-scaleway","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscaleway%2Fpennylane-scaleway/lists"}