qedma-api 0.16.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- qedma_api-0.16.1/PKG-INFO +52 -0
- qedma_api-0.16.1/README.md +21 -0
- qedma_api-0.16.1/pyproject.toml +144 -0
- qedma_api-0.16.1/qedma_api/__init__.py +20 -0
- qedma_api-0.16.1/qedma_api/client.py +1005 -0
- qedma_api-0.16.1/qedma_api/helpers.py +205 -0
- qedma_api-0.16.1/qedma_api/models.py +596 -0
- qedma_api-0.16.1/qedma_api/pauli_utils.py +43 -0
- qedma_api-0.16.1/qedma_api/py.typed +0 -0
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
Metadata-Version: 2.3
|
|
2
|
+
Name: qedma-api
|
|
3
|
+
Version: 0.16.1
|
|
4
|
+
Summary: Qedma QESEM SDK
|
|
5
|
+
Author: Qedma Support
|
|
6
|
+
Author-email: support@qedma.com
|
|
7
|
+
Requires-Python: >=3.10,<3.14
|
|
8
|
+
Classifier: Operating System :: MacOS
|
|
9
|
+
Classifier: Operating System :: Microsoft :: Windows
|
|
10
|
+
Classifier: Operating System :: POSIX
|
|
11
|
+
Classifier: Operating System :: Unix
|
|
12
|
+
Classifier: Programming Language :: Python
|
|
13
|
+
Classifier: Programming Language :: Python :: 3
|
|
14
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
18
|
+
Classifier: Typing :: Typed
|
|
19
|
+
Requires-Dist: loguru (>=0.7.2,<0.8.0)
|
|
20
|
+
Requires-Dist: pydantic (>=2.9)
|
|
21
|
+
Requires-Dist: qiskit (>=1.0.2,<3.0.0)
|
|
22
|
+
Requires-Dist: qiskit-qasm3-import (>=0.5.1,<0.6.0)
|
|
23
|
+
Requires-Dist: requests (>=2.32.3,<3.0.0)
|
|
24
|
+
Requires-Dist: typing-extensions (>=4.12.2,<5.0.0)
|
|
25
|
+
Project-URL: documentation, https://docs.qedma.io/
|
|
26
|
+
Project-URL: download, https://pypi.org/project/qedma-api/#files
|
|
27
|
+
Project-URL: homepage, https://www.qedma.com/
|
|
28
|
+
Project-URL: release notes, https://docs.qedma.io/release_notes/
|
|
29
|
+
Description-Content-Type: text/markdown
|
|
30
|
+
|
|
31
|
+
# QEDMA API Client
|
|
32
|
+
|
|
33
|
+
Qedma’s mission is to significantly accelerate the timeline towards quantum advantage by providing QESEM (Quantum Error Suppression and Error Mitigation): a robust, cutting-edge, cross-platform Quantum error reduction software solution.
|
|
34
|
+
|
|
35
|
+
## Overview
|
|
36
|
+
|
|
37
|
+
The QEDMA API client provides a Python interface to interact with QEDMA's quantum computing services. This client allows you to create and manage jobs, monitor their status, and retrieve results.
|
|
38
|
+
|
|
39
|
+
## Features
|
|
40
|
+
|
|
41
|
+
- **Error Mitigation**: Built-in error mitigation
|
|
42
|
+
- **Real-time Monitoring**: Track job status and execution progress
|
|
43
|
+
|
|
44
|
+
## Installation
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
pip install qedma-api
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
## Documentation
|
|
51
|
+
A full documentation of the API can be found [here](https://docs.qedma.io/).
|
|
52
|
+
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# QEDMA API Client
|
|
2
|
+
|
|
3
|
+
Qedma’s mission is to significantly accelerate the timeline towards quantum advantage by providing QESEM (Quantum Error Suppression and Error Mitigation): a robust, cutting-edge, cross-platform Quantum error reduction software solution.
|
|
4
|
+
|
|
5
|
+
## Overview
|
|
6
|
+
|
|
7
|
+
The QEDMA API client provides a Python interface to interact with QEDMA's quantum computing services. This client allows you to create and manage jobs, monitor their status, and retrieve results.
|
|
8
|
+
|
|
9
|
+
## Features
|
|
10
|
+
|
|
11
|
+
- **Error Mitigation**: Built-in error mitigation
|
|
12
|
+
- **Real-time Monitoring**: Track job status and execution progress
|
|
13
|
+
|
|
14
|
+
## Installation
|
|
15
|
+
|
|
16
|
+
```bash
|
|
17
|
+
pip install qedma-api
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## Documentation
|
|
21
|
+
A full documentation of the API can be found [here](https://docs.qedma.io/).
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
[tool.poetry]
|
|
2
|
+
name = "qedma-api"
|
|
3
|
+
version = "0.16.1"
|
|
4
|
+
description = "Qedma QESEM SDK"
|
|
5
|
+
authors = ["Qedma Support <support@qedma.com>"]
|
|
6
|
+
readme = "README.md"
|
|
7
|
+
packages = [{include = "qedma_api"}]
|
|
8
|
+
exclude = ["docs", "qedma_api/tests"]
|
|
9
|
+
classifiers = [
|
|
10
|
+
'Programming Language :: Python',
|
|
11
|
+
'Programming Language :: Python :: 3',
|
|
12
|
+
'Programming Language :: Python :: 3.11',
|
|
13
|
+
'Programming Language :: Python :: 3.12',
|
|
14
|
+
'Programming Language :: Python :: 3.13',
|
|
15
|
+
'Typing :: Typed',
|
|
16
|
+
'Operating System :: Microsoft :: Windows',
|
|
17
|
+
'Operating System :: POSIX',
|
|
18
|
+
'Operating System :: Unix',
|
|
19
|
+
'Operating System :: MacOS',
|
|
20
|
+
]
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
[tool.poetry.dependencies]
|
|
24
|
+
python = ">=3.10,<3.14"
|
|
25
|
+
requests = "^2.32.3"
|
|
26
|
+
loguru = "^0.7.2"
|
|
27
|
+
pydantic = ">=2.9"
|
|
28
|
+
qiskit = ">=1.0.2,<3.0.0"
|
|
29
|
+
typing-extensions = "^4.12.2"
|
|
30
|
+
qiskit-qasm3-import = "^0.5.1"
|
|
31
|
+
|
|
32
|
+
[tool.poetry.group.dev.dependencies]
|
|
33
|
+
pytest = "^8"
|
|
34
|
+
pytest-cov = ">=4.0.0,<7"
|
|
35
|
+
black = {version = "^25.1.0", extras = ["d"]}
|
|
36
|
+
pylint = ">=2.14.5,<4"
|
|
37
|
+
mypy = "^1.15"
|
|
38
|
+
isort = "^6.0.1"
|
|
39
|
+
types-requests = "^2.32.0"
|
|
40
|
+
responses = "^0.25.0"
|
|
41
|
+
pytest-mock = "^3.14.0"
|
|
42
|
+
qiskit-ibm-runtime = "^0.40.0"
|
|
43
|
+
|
|
44
|
+
[[tool.poetry.source]]
|
|
45
|
+
name = "PyPI"
|
|
46
|
+
priority = "primary"
|
|
47
|
+
|
|
48
|
+
[build-system]
|
|
49
|
+
requires = ["poetry-core"]
|
|
50
|
+
build-backend = "poetry.core.masonry.api"
|
|
51
|
+
|
|
52
|
+
[tool.poetry.urls]
|
|
53
|
+
homepage = "https://www.qedma.com/"
|
|
54
|
+
documentation = "https://docs.qedma.io/"
|
|
55
|
+
download = "https://pypi.org/project/qedma-api/#files"
|
|
56
|
+
"release notes" = "https://docs.qedma.io/release_notes/"
|
|
57
|
+
|
|
58
|
+
[tool.mypy]
|
|
59
|
+
disallow_any_unimported = true
|
|
60
|
+
disallow_untyped_defs = true
|
|
61
|
+
no_implicit_optional = true
|
|
62
|
+
check_untyped_defs = true
|
|
63
|
+
warn_unused_ignores = true
|
|
64
|
+
warn_return_any = true
|
|
65
|
+
show_error_codes = true
|
|
66
|
+
strict_equality = true
|
|
67
|
+
extra_checks = true
|
|
68
|
+
warn_unused_configs = true
|
|
69
|
+
warn_redundant_casts = true
|
|
70
|
+
disallow_incomplete_defs = true
|
|
71
|
+
disallow_untyped_decorators = true
|
|
72
|
+
disallow_any_generics = true
|
|
73
|
+
disallow_subclassing_any = true
|
|
74
|
+
disallow_untyped_calls = true
|
|
75
|
+
implicit_reexport = true
|
|
76
|
+
plugins = ["pydantic.mypy"]
|
|
77
|
+
|
|
78
|
+
[tool.pydantic-mypy]
|
|
79
|
+
init_forbid_extra = true
|
|
80
|
+
init_typed = true
|
|
81
|
+
|
|
82
|
+
[[tool.mypy.overrides]]
|
|
83
|
+
module = [
|
|
84
|
+
"qiskit.*",
|
|
85
|
+
"qiskit_ibm_runtime.*",
|
|
86
|
+
]
|
|
87
|
+
ignore_missing_imports = true
|
|
88
|
+
|
|
89
|
+
[tool.pytest.ini_options]
|
|
90
|
+
minversion = "8.0"
|
|
91
|
+
addopts = "--disable-warnings"
|
|
92
|
+
|
|
93
|
+
[tool.pylint.messages_control]
|
|
94
|
+
variable-rgx="[a-z0-9_]{1,60}$"
|
|
95
|
+
function-rgx="[a-z0-9_]{2,60}$"
|
|
96
|
+
argument-rgx="[a-z0-9_]{1,30}$"
|
|
97
|
+
attr-rgx="[a-z0-9_]{1,30}$"
|
|
98
|
+
min-similarity-lines=15
|
|
99
|
+
max-args=10
|
|
100
|
+
max-attributes=10
|
|
101
|
+
max-positional-arguments=5
|
|
102
|
+
|
|
103
|
+
[tool.pylint.format]
|
|
104
|
+
max-line-length = "100"
|
|
105
|
+
|
|
106
|
+
[tool.pylint.master]
|
|
107
|
+
|
|
108
|
+
[tool.black]
|
|
109
|
+
line-length = 100
|
|
110
|
+
target-version = ['py310', 'py311', 'py312', 'py313']
|
|
111
|
+
include = '\.pyi?$'
|
|
112
|
+
exclude = '''
|
|
113
|
+
(
|
|
114
|
+
/(
|
|
115
|
+
\.eggs # exclude a few common directories in the
|
|
116
|
+
| \.git # root of the project
|
|
117
|
+
| \.hg
|
|
118
|
+
| \.mypy_cache
|
|
119
|
+
| \.tox
|
|
120
|
+
| \.venv
|
|
121
|
+
| _build
|
|
122
|
+
| buck-out
|
|
123
|
+
| build
|
|
124
|
+
| dist
|
|
125
|
+
)/
|
|
126
|
+
)
|
|
127
|
+
'''
|
|
128
|
+
|
|
129
|
+
[tool.isort]
|
|
130
|
+
profile = "black"
|
|
131
|
+
skip_gitignore = true
|
|
132
|
+
line_length = 100
|
|
133
|
+
lines_after_imports = 2
|
|
134
|
+
atomic = true
|
|
135
|
+
auto_identify_namespace_packages = false
|
|
136
|
+
sections = ["FUTURE", "STDLIB", "THIRDPARTY", "FIRSTPARTY", "LOCALFOLDER"]
|
|
137
|
+
known_local_folder = ["qedma_api"]
|
|
138
|
+
|
|
139
|
+
[tool.coverage.report]
|
|
140
|
+
exclude_also = [
|
|
141
|
+
"if TYPE_CHECKING:",
|
|
142
|
+
"# pragma: no cover",
|
|
143
|
+
"def __repr__",
|
|
144
|
+
]
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"""Qedma API package."""
|
|
2
|
+
|
|
3
|
+
from . import helpers
|
|
4
|
+
from .client import Client, ClientJobDetails
|
|
5
|
+
from .models import (
|
|
6
|
+
Circuit,
|
|
7
|
+
CircuitOptions,
|
|
8
|
+
ExecutionMode,
|
|
9
|
+
ExpectationValue,
|
|
10
|
+
ExpectationValues,
|
|
11
|
+
IBMQProvider,
|
|
12
|
+
JobDetails,
|
|
13
|
+
JobOptions,
|
|
14
|
+
JobStatus,
|
|
15
|
+
Observable,
|
|
16
|
+
ObservableMetadata,
|
|
17
|
+
PrecisionMode,
|
|
18
|
+
TranspilationLevel,
|
|
19
|
+
TranspiledCircuit,
|
|
20
|
+
)
|