メインコンテンツへスキップ

クイックスタート

パッケージのバージョン

このページのコードは、以下の要件を使用して開発されました。 これらのバージョン以降を使用することをお勧めします。

qiskit[all]~=2.3.0
# Added by doQumentation — required packages for this notebook
!pip install -q qiskit

ローカル環境で2分以内に最初の量子回路を構築できます。サインインやAPIキーは必要ありません。

PythonやVirtual Environmentが初めての方へ
  • Pythonをダウンロードして、Qiskitと一緒にVirtual Environmentを使用してください(推奨)。
Pythonの詳細については、ここをクリックして展開してください。
  • Pythonをインストールするには、まずQiskit PyPIプロジェクトページの「Programming Language」セクションで、最新リリースがサポートしているPythonのバージョンを確認してください。ダウンロード手順については、Python Beginners Guideをご覧ください。
備考

これらの手順ではpypi.orgの標準Pythonディストリビューションを使用しています。ただし、Anacondaminicondaなどの他のPythonディストリビューション、またPoetryなどの他の依存関係管理ワークフローも使用できます。

Virtual Environmentの詳細については、ここをクリックして展開してください。

  • Python Virtual Environmentを使用して、QiskitをほかのアプリケーションとをPython仮想環境は、特定の目的のためにPythonで作業するための隔離されたスペースです。希望するパッケージをインストールしたり、ライブラリや依存関係などを設定したりできます。これはマシン上の「ベース」Python環境に影響を与えません。

仮想環境の重要な利点の一つは、Python環境が壊れた場合でも、簡単に削除して最初からやり直せることです。

仮想環境の情報を保存する場所を選択してください。通常、各プロジェクトディレクトリ内の .venv という名前のディレクトリに保存されます。

仮想環境を設定するには、プロジェクトディレクトリに移動して、Pythonのみがインストールされた最小限の環境を作成します。

python3 -m venv .venv

次に、新しい環境をアクティベートします。

source .venv/bin/activate

1. Qiskitをインストールする

お好みのパッケージマネージャー(pipなど)で以下をインストールしてください。

2. 回路を構築する

Pythonの実行環境を開き、次のコードを実行してBell状態(2つの量子もつれした量子ビット)を構築します。

from qiskit import QuantumCircuit
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()
print(result[0].data.meas.get_counts())
{'11': 534, '00': 490}

期待される出力は、'00' と '11' がほぼ均等に分かれたものです。

3. 結果を可視化する

結果のヒストグラムを取得するには、プログラムに次のコードを追加します。

# Uncomment lines 2 and 8 if you are not using Python in a Jupyter notebook
# import matplotlib.pyplot as plt
from qiskit.visualization import plot_histogram

counts = result[0].data.meas.get_counts()
plot_histogram(counts)

# plt.show()

Output of the previous code cell

この結果は量子エンタングルメントの特徴的なシグネチャです。

4. 変化を確認する

コードを変更して結果にどのような影響があるか試してみましょう。例えば:

  • QuantumCircuit(3) に変更して3番目の量子ビットを追加し、qc.cx(1,2) で2番目のCXゲートを追加します。測定結果は000と111に変わり、これら3つの量子ビットすべてがエンタングルされたことを意味します。

  • 回路の末尾に qc.x(1) を追加することで、結果がシフトする様子を確認できます。

次のステップ

おすすめ
  • Hello worldの手順に従って、実際の量子ハードウェア上で回路を実行してみましょう。
  • ハードウェアでの実行にまだ準備ができていない場合は、量子情報の基礎コースで量子の旅を始めましょう。