sample_tool
Execute quantum circuits on QPU devices to obtain measurement outcome distributions through sampling, enabling statistical analysis of quantum computations.
Instructions
Execute quantum circuit sampling task.
Submit a quantum circuit for sampling on a QPU device. Sampling executes the circuit multiple times and returns the measurement outcome distribution.
Args:
circuit: Quantum circuit(s) to execute. Accepts:
- Single circuit as string (QProg/QCircuit/OriginIR format)
- List of circuits for batch execution
- OriginIR example:
QINIT 2
CREG 2
H q[0]
CNOT q[0],q[1]
MEASURE q[0],c[0]
MEASURE q[1],c[1]
device_id: Target device ID (e.g., '20').
Use list_qpu_devices_tool to find available devices.
shots: Number of sampling shots (default: 1000).
Higher values give more statistical accuracy.
measure_qubits: Qubit indices to measure (optional).
If not specified, uses measurement operations in the circuit.
Returns: Dictionary containing: - status: "success" or "error" - task_id: ID for tracking the task - device_id: Target device - shots: Number of shots requested - message: Status message - note: Instructions for retrieving results
Example: # Submit a Bell state circuit for sampling result = sample_tool( circuit="QINIT 2\nCREG 2\nH q[0]\nCNOT q[0],q[1]\nMEASURE q[0],c[0]\nMEASURE q[1],c[1]", device_id="20", shots=1000 ) task_id = result["task_id"]
Note: Use get_task_status_tool to check progress and get_task_results_tool to retrieve results after the task completes.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| circuit | Yes | ||
| device_id | Yes | ||
| shots | No | ||
| measure_qubits | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||