qpanda3_runtime.task.session#
Session management for variational quantum algorithms.
This module provides interfaces for managing variational quantum computing sessions, including abstract base classes and concrete implementations.
Classes#
- FakeVQSessionclass
Simulated variational quantum session for testing purposes.
See also
VQSessionConcrete implementation for real quantum backends.
VQSessionABCAbstract base class for variational quantum sessions.
Notes
Sessions should be used within context managers (with statements).
Variational sessions support parameterized quantum circuit execution.
Submodules#
Classes#
Fake variational quantum session for local testing and simulation. |
Package Contents#
- class qpanda3_runtime.task.session.FakeVQSession(runtime_service, vqcircuit: pyqpanda3.vqcircuit.VQCircuit, device: qpanda3_runtime.device.fake_backend.FakeBackend, channel=default_channel, info=Union[Dict, None])#
Bases:
qpanda3_runtime.task.session.vqsession_abc.VQSessionABCFake variational quantum session for local testing and simulation.
This class provides a mock implementation of VQSessionABC that runs quantum circuits locally using a fake backend device, without requiring remote quantum computing services.
- Parameters:
runtime_service (
object) – Runtime service instance for task management.vqcircuit (
VQCircuit) – Variational quantum circuit (ansatz) structure.device (
FakeBackend) – Fake backend device for local quantum circuit simulation.channel (
object, optional) – Communication channel (default is default_channel).info (
DictorNone, optional) – Additional session information.
- Variables:
_ansatz (
VQCircuit) – Internal storage for the variational quantum circuit._device (
FakeBackend) – Internal storage for the fake backend device.
- run_vqtask(gate_params, measure_list: list) qpanda3_runtime.task.qtask_manager.QTaskManager#
Execute a variational quantum task using the session’s ansatz structure.
This method generates quantum circuits from the variational ansatz using the provided gate parameters, transpiles them for the fake backend device, and simulates quantum measurements.
- Parameters:
gate_params (
array-like) – Quantum gate parameters adapted to the ansatz structure. Used for generating quantum computing tasks.measure_list (
list) – List of qubit indices to be measured.
- Returns:
Task manager object for the computing task.
- Return type:
QTaskManager- Raises:
RuntimeError – If called outside of a VQSession context manager.
Notes
This method must be called within a VQSession context manager. The generated circuits are transpiled for the fake backend device before simulation.
Examples
>>> with FakeVQSession(...) as session: ... task_manager = session.run_vqtask(gate_params, [0, 1]) ... result = task_manager.get_result()
- release()#
Release the fake variational quantum session.
This method is a no-op for fake sessions as they don’t require remote resource cleanup.
Notes
Fake sessions don’t hold remote resources, so this method doesn’t perform any actual cleanup operations.