qiskit – skill Lập trình cho agent AI
Xây dựng và transpile mạch Qiskit, kiểm thử simulator cục bộ và chuẩn bị workload trên phần cứng đã được ủy quyền với primitive Sampler/Estimator.
Cài skill qiskit bằng một lệnh
Chọn công cụ bạn đang dùng, copy lệnh và dán vào terminal. Skill sẽ nằm trong thư mục skills của công cụ đó và sẵn sàng dùng ở phiên làm việc tiếp theo.
Claude Code
mkdir -p ~/.claude/skills && curl -fsSL https://skill.dn1nguoi.com/z/qiskit-a324f.tgz | tar xz -C ~/.claude/skills
Gọi trong Claude Code: /qiskit – rồi mô tả công việc bạn muốn làm.
Codex
mkdir -p ~/.codex/skills && curl -fsSL https://skill.dn1nguoi.com/z/qiskit-a324f.tgz | tar xz -C ~/.codex/skills
Gọi trong Codex: $qiskit – rồi mô tả công việc bạn muốn làm.
Hermes Agent
mkdir -p ~/.hermes/skills && curl -fsSL https://skill.dn1nguoi.com/z/qiskit-a324f.tgz | tar xz -C ~/.hermes/skills
Gọi trong Hermes Agent: /qiskit – rồi mô tả công việc bạn muốn làm.
DeepSeek
mkdir -p ~/.deepcode/skills && curl -fsSL https://skill.dn1nguoi.com/z/qiskit-a324f.tgz | tar xz -C ~/.deepcode/skills
Gọi trong DeepSeek: /qiskit – rồi mô tả công việc bạn muốn làm.
Nội dung SKILL.md
Nội dung SKILL.md gốc bằng tiếng Anh.
Bundled upstream support
Supporting files are included at skill-relative paths. See [UPSTREAM-NOTICE.md](UPSTREAM-NOTICE.md) for their pinned sources, licenses, hashes, and import changes.
Qiskit
When to Use
- You are building or optimizing quantum circuits with Qiskit for simulators or real hardware.
- You need IBM Quantum-style tooling for transpilation, execution, visualization, or algorithm libraries.
- You want guidance on moving from a simple circuit prototype to backend-aware execution.
Overview
Qiskit provides circuit construction, transpilation and quantum-computing tools.
Provider plugins and hardware access require their own supported versions,
authentication and account entitlements. Performance depends on the workload.
Hardware jobs, sessions and serverless calls can consume paid quota. Prepare and
test locally first; authorize the exact provider, target and budget before any
remote submission. Examples are sketches requiring version checks and supplied
variables, not preauthorized workloads.
Quick Start
Installation
uv pip install qiskit
uv pip install "qiskit[visualization]" matplotlibFirst Circuit
from qiskit import QuantumCircuit
from qiskit.primitives import StatevectorSampler
# Create Bell state (entangled qubits)
qc = QuantumCircuit(2)
qc.h(0) # Hadamard on qubit 0
qc.cx(0, 1) # CNOT from qubit 0 to 1
qc.measure_all() # Measure both qubits
# Run locally
sampler = StatevectorSampler()
result = sampler.run([qc], shots=1024).result()
counts = result[0].data.meas.get_counts()
print(counts) # {'00': ~512, '11': ~512}Visualization
from qiskit.visualization import plot_histogram
qc.draw('mpl') # Circuit diagram
plot_histogram(counts) # Results histogramCore Capabilities
1. Setup and Installation
For detailed installation, authentication, and IBM Quantum account setup:
- See
references/setup.md
Topics covered:
- Installation with uv
- Python environment setup
- IBM Quantum account and API token configuration
- Local vs. cloud execution
2. Building Quantum Circuits
For constructing quantum circuits with gates, measurements, and composition:
- See
references/circuits.md
Topics covered:
- Creating circuits with QuantumCircuit
- Single-qubit gates (H, X, Y, Z, rotations, phase gates)
- Multi-qubit gates (CNOT, SWAP, Toffoli)
- Measurements and barriers
- Circuit composition and properties
- Parameterized circuits for variational algorithms
3. Primitives (Sampler and Estimator)
For executing quantum circuits and computing results:
- See
references/primitives.md
Topics covered:
- Sampler: Get bitstring measurements and probability distributions
- Estimator: Compute expectation values of observables
- V2 interface (StatevectorSampler, StatevectorEstimator)
- IBM Quantum Runtime primitives for hardware
- Sessions and Batch modes
- Parameter binding
4. Transpilation and Optimization
For optimizing circuits and preparing for hardware execution:
- See
references/transpilation.md
Topics covered:
- Why transpilation is necessary
- Optimization levels (0-3)
- Six transpilation stages (init, layout, routing, translation, optimization, scheduling)
- Advanced features (virtual permutation elision, gate cancellation)
- Common parameters (initial_layout, approximation_degree, seed)
- Best practices for efficient circuits
5. Visualization
For displaying circuits, results, and quantum states:
- See
references/visualization.md
Topics covered:
- Circuit drawings (text, matplotlib, LaTeX)
- Result histograms
- Quantum state visualization (Bloch sphere, state city, QSphere)
- Backend topology and error maps
- Customization and styling
- Saving publication-quality figures
6. Hardware Backends
For running on simulators and real quantum computers:
- See
references/backends.md
Topics covered:
- IBM Quantum backends and authentication
- Backend properties and status
- Running on real hardware with Runtime primitives
- Job management and queuing
- Session mode (iterative algorithms)
- Batch mode (parallel jobs)
- Local simulators (StatevectorSampler, Aer)
- Third-party providers (IonQ, Amazon Braket)
- Error mitigation strategies
7. Qiskit Patterns Workflow
For implementing the four-step quantum computing workflow:
- See
references/patterns.md
Topics covered:
- Map: Translate problems to quantum circuits
- Optimize: Transpile for hardware
- Execute: Run with primitives
- Post-process: Extract and analyze results
- Complete VQE example
- Session vs. Batch execution
- Common workflow patterns
8. Quantum Algorithms and Applications
For implementing specific quantum algorithms:
- See
references/algorithms.md
Topics covered:
- Optimization: VQE, QAOA, Grover's algorithm
- Chemistry: Molecular ground states, excited states, Hamiltonians
- Machine Learning: Quantum kernels, VQC, QNN
- Algorithm libraries: Qiskit Nature, Qiskit ML, Qiskit Optimization
- Physics simulations and benchmarking
Workflow Decision Guide
If you need to:
- Install Qiskit or set up IBM Quantum account →
references/setup.md - Build a new quantum circuit →
references/circuits.md - Understand gates and circuit operations →
references/circuits.md - Run circuits and get measurements →
references/primitives.md - Compute expectation values →
references/primitives.md - Optimize circuits for hardware →
references/transpilation.md - Visualize circuits or results →
references/visualization.md - Execute on IBM Quantum hardware →
references/backends.md - Connect to third-party providers →
references/backends.md - Implement end-to-end quantum workflow →
references/patterns.md - Build specific algorithm (VQE, QAOA, etc.) →
references/algorithms.md - Solve chemistry or optimization problems →
references/algorithms.md
Best Practices
Development Workflow
1. Start with simulators: Test locally before using hardware
from qiskit.primitives import StatevectorSampler
sampler = StatevectorSampler()
2. Always transpile: Optimize circuits before execution
from qiskit import transpile
qc_optimized = transpile(qc, backend=backend, optimization_level=3)
3. Use appropriate primitives:
- Sampler for bitstrings (optimization algorithms)
- Estimator for expectation values (chemistry, physics)
4. Choose execution mode:
- Session: Iterative algorithms (VQE, QAOA)
- Batch: Independent parallel jobs
- Single job: One-off experiments
Performance Optimization
- Use optimization_level=3 for production
- Minimize two-qubit gates (major error source)
- Test with noisy simulators before hardware
- Save and reuse transpiled circuits
- Monitor convergence in variational algorithms
Hardware Execution
- Check backend status before submitting
- Use least_busy() for testing
- Save job IDs for later retrieval
- Apply error mitigation (resilience_level)
- Start with fewer shots, increase for final runs
Common Patterns
Pattern 1: Simple Circuit Execution
from qiskit import QuantumCircuit, transpile
from qiskit.primitives import StatevectorSampler
qc = QuantumCircuit(2)
qc.h(0)
qc.cx(0, 1)
qc.measure_all()
sampler = StatevectorSampler()
result = sampler.run([qc], shots=1024).result()
counts = result[0].data.meas.get_counts()Pattern 2: Hardware Execution with Transpilation
from qiskit_ibm_runtime import QiskitRuntimeService, SamplerV2 as Sampler
from qiskit import transpile
service = QiskitRuntimeService()
backend = service.least_busy(operational=True, simulator=False)
qc_optimized = transpile(qc, backend=backend, optimization_level=3)
sampler = Sampler(mode=backend)
job = sampler.run([qc_optimized], shots=1024)
result = job.result()Pattern 3: Variational Algorithm (VQE)
from qiskit_ibm_runtime import Session, EstimatorV2 as Estimator
from scipy.optimize import minimize
with Session(backend=backend) as session:
estimator = Estimator(mode=session)
def cost_function(params):
bound_qc = ansatz.assign_parameters(params)
qc_isa = transpile(bound_qc, backend=backend)
result = estimator.run([(qc_isa, hamiltonian.apply_layout(qc_isa.layout))]).result()
return result[0].data.evs
result = minimize(cost_function, initial_params, method='COBYLA')Additional Resources
- Official Docs: https://quantum.ibm.com/docs
- Qiskit Textbook: https://qiskit.org/learn
- API Reference: https://docs.quantum.ibm.com/api/qiskit
- Patterns Guide: https://quantum.cloud.ibm.com/docs/en/guides/intro-to-patterns
Limitations
- Use this skill only when the task clearly matches the scope described above.
- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.
- Stop and ask for clarification
… (nội dung đầy đủ có trong gói tải về)
Skill liên quan
- qoder-delegate – Giao tác vụ viết code cho Qoder CLI (`qodercli`) chỉ khi người dùng yêu cầu rõ ràng…
- rayden-code – Tạo code React với component Rayden UI, dùng đúng props, token và các mẫu layout cao cấp.
- rclone-cli – Tài liệu tham khảo và hướng dẫn sử dụng trình quản lý lưu trữ đám mây rclone trên dòng…
- react-best-practices – Hướng dẫn tối ưu hiệu năng toàn diện cho ứng dụng React và Next.js, được điều chỉnh từ…
- react-component-performance – Chẩn đoán các component React chậm và đề xuất cách sửa hiệu năng có mục tiêu.
- react-flow-architect – Xây dựng ứng dụng ReactFlow sẵn sàng production với điều hướng phân cấp, tối ưu hiệu…
- react-flow-node-ts – Tạo component node cho React Flow theo các mẫu đã thiết lập, với kiểu TypeScript phù hợp…
- react-modernization – Thành thạo việc nâng cấp phiên bản React, chuyển từ class sang hooks, áp dụng các tính…