kosmos.circuit_runner.qiskit_runner¶
Classes¶
- class QiskitRunner(backend: qiskit.providers.BackendV2, num_shots: int = 1024, gradient_method: kosmos.ml.models.vqc.circuit.qiskit_circuit.gradient_method.GradientMethod | None = None)¶
Bases:
kosmos.circuit_runner.circuit_runner.CircuitRunnerGeneral Qiskit circuit runner.
Initialize the Qiskit runner.
- Parameters:
backend (Backend) – The backend to use.
num_shots (int) – Number of shots. Defaults to 1024.
gradient_method (GradientMethod | None) – The gradient method to use when running VQCs. Uses ParameterShiftRule() if None. Defaults to None.
Properties
- property framework¶
The framework used by the circuit runner.
Methods
- run_sampler(circuits: list[qiskit.QuantumCircuit]) qiskit_ibm_runtime.RuntimeJobV2¶
Run circuits using Sampler primitive.
- Parameters:
circuits (list[QuantumCircuit]) – The circuits to run.
- Returns:
The submitted job.
- Return type:
RuntimeJob
- expectation_values(circuits: list[qiskit.QuantumCircuit]) list[numpy.ndarray]¶
Compute Z-basis expectation values for the given circuits.
- Parameters:
circuits – The circuits to run.
- Returns:
- A list of arrays, where each array contains the expectation
values for one circuit in the job.
- Return type:
list[np.ndarray]
- get_gradient_method(parameterized_circuit: QiskitParameterizedCircuit) kosmos.ml.models.vqc.circuit.qiskit_circuit.gradient_method.GradientMethod¶
Get the gradient method instance.
- Parameters:
parameterized_circuit (QiskitParameterizedCircuit) – The Qiskit parameterized circuit.
- Returns:
The gradient method instance.
- Return type:
- class AerSimulatorRunner(num_shots: int = 1024, gradient_method: kosmos.ml.models.vqc.circuit.qiskit_circuit.gradient_method.GradientMethod | None = None)¶
Bases:
QiskitRunnerQiskit circuit runner using the AerSimulator using density matrix simulation.
Initialize the AerSimulator runner.
- Parameters:
num_shots (int) – Number of shots. Defaults to 1024.
gradient_method (GradientMethod | None) – The gradient method to use when running VQCs. Uses ParameterShiftRule() if None. Defaults to None.
Properties
- property framework¶
The framework used by the circuit runner.
- class IBMRuntimeRunner(qiskit_runtime_service: qiskit_ibm_runtime.QiskitRuntimeService, backend_name: str | None = None, min_num_qubits: int | None = None, num_shots: int = 1024, gradient_method: kosmos.ml.models.vqc.circuit.qiskit_circuit.gradient_method.GradientMethod | None = None)¶
Bases:
QiskitRunnerQiskit circuit runner using an IBM Runtime backend.
Initialize the IBM Runtime runner.
- Parameters:
qiskit_runtime_service (QiskitRuntimeService) – The Qiskit Runtime service instance.
backend_name (str | None) – The name of the backend. Returns the least busy backend if None. Defaults to None.
min_num_qubits (int | None) – The minimum number of qubits. Defaults to None.
num_shots (int) – Number of shots. Defaults to 1024.
gradient_method (GradientMethod | None) – The gradient method to use when running VQCs. Uses ParameterShiftRule() if None. Defaults to None.
Properties
- property framework¶
The framework used by the circuit runner.