さあ、はじめよう¶
インストール¶
QiskitはPython3.6以降をサポートしています。 ただし、PythonとQiskitはどちらもエコシステムを進化させており、どちらか一方で新しいリリースが発生すると、互換性に問題が生じる場合があります。
科学技術計算用クロスプラットフォームのPythonディストリビューションである Anaconda をインストールすることをおすすめします。Qiskit tutorials とのやり取りには、Anacondaに含まれるJupyter Notebookをおすすめします。
Qiskitは以下の64ビットシステムでテストされサポートされています。
Ubuntu 16.04またはそれ以降
macOS 10.12.6またはそれ以降
Windows 7またはそれ以降
Qiskitを他のアプリケーションから明確に分離して、経験をよりよいものにするため、Python仮想環境を使用することをおすすめします。
環境を使用するもっともシンプルな方法は、Anacondaに含まれている conda
コマンドを使う方法です。Conda環境では、Pythonの特定のバージョンおよびライブラリを指定することができます。作業したいディレクトリでターミナルウィンドウを開きます。
Anaconda に同梱されているAnaconda プロンプトを使用することをお勧めします。 ユーザーはAnaconda 内に仮想環境を構築して、その環境をアクティベートする必要があります。 これらのコマンドは、 Windows または linux マシンに関係なく、 Anaconda プロンプトで実行できます。
Pythonのみをインストールした最小環境を作ります。
conda create -n ENV_NAME python=3
新しい環境をアクティブにします。
conda activate ENV_NAME
次に、 Qiskit パッケージをインストールします。
pip install qiskit
パッケージが正しくインストールされている場合は、 conda list
を実行して、仮想環境でアクティブなパッケージを確認できます。
可視化機能やJupyter notebookを使用する場合は、Qiskitに visualization
機能を追加してインストールすることをお勧めします。
pip install qiskit[visualization]
zshユーザー(新しいバージョンのmacOSのデフォルトシェル)の場合は、 qiskit[visualization]
を引用符で囲む必要があります。
pip install 'qiskit[visualization]'
以下のクラウドベンダーの環境では、Qiskitがプレインストールされています。
IBM Quantum Lab
Build quantum applications and experiments with Qiskit in a cloud programming environment.

Strangeworks
A platform that enables users and organizations to easily apply quantum computing to their most pressing problems and research.

ソースからエレメントをインストールすることにより、Python Package Index (PyPI) リポジトリのバージョンを使う代わりに、最新のQiskitバージョンにアクセスすることが出来ます。これにより、Qiskit コードの最新版を調査したり、拡張することがより効果的にできるようになります。
ソースからエレメントやコンポーネントをインストールする時には、デフォルトでは、stable
バージョン( pip
パッケージとして公開されているコードベースと同じもの) ではなく、 development
バージョン( master
git ブランチに該当) が使われます。 エレメントやコンポーネントの development
バージョンは通常新しい機能や変更が含まれているため、一般的には他の項目についても development
バージョンを利用することが求められています。
TerraとAerのパッケージは、インストールする前にソースからビルドするためのコンパイラーが必要です。Ignis、Aqua、および IBM Quantum Provider バックエンドは、コンパイラーを必要としません。
pip
のバージョンがソースバージョンより古い場合に、要求するものよりも古いバージョンをインストールしてしまうことを防ぐため、ソースからエレメントをインストールするには以下の順番で実施します:
qiskit-ibmq-provider (IBM Quantum デバイスやオンライン・シミュレーターに接続する場合)
いくつかのコンポーネントとエレメントで同時に作業したい場合には、各エレメントに対して以下のステップを踏みます。
注釈
Pythonの名前空間パッケージを使用しているため、パッケージのインストール方法には注意する必要があります。もしソースからエレメントをインストールすることを考えている場合は、qiskit
メタパッケージを使用しないでください。また、このガイドに従って、開発用に別の仮想環境を使用してください。もし、既存のインストールと開発環境を混在させる場合は、https://github.com/pypa/sample-namespace-packages/blob/master/table.md を参照して、連携するインストール方法の組み合わせを確認してください。
Set up the Virtual Development Environment
conda create -y -n QiskitDevenv python=3
conda activate QiskitDevenv
Installing Terra from Source
ソースからインストールするには、お使いのシステム上にC++11をサポートするC++コンパイラが必要です。
ほとんどのLinuxプラットフォームには、必要なGCCコンパイラーがインストール済みです。
macOSを使用している場合は、XCodeをインストールすることで、Clangのコンパイラーをインストールすることができます。ターミナル・ウィンドウを開き以下のコマンドを入力して、XCodeとClangがイントールされていることを確認します。
clang --version
以下のコマンドでXCodeとClandをインストールします。
xcode-select --install
Windowsでは、Visual C++ Compilerを Build Tools for Visual Studio 2017 からインストールする方法が最も簡単です。その他に Visual Studio 2015 あるいは 2017をインストールする方法もありますが、その際にはインストール・オプションの C++ compiler を選択することを忘れない様にしてください。
コンパイラーがインストールされたら、Qiskit Terraのイントール準備完了です。
Terraリポジトリーをクローンします。
git clone https://github.com/Qiskit/qiskit-terra.git
リポジトリーをクローンすると、
qiskit-terra
という名前のローカル・フォルダーが作成されます。cd qiskit-terra
作成された
qiskit-terra
ディレクトリーから、Pythonの必要なライブラリーをインストールします。pip install cython
もし、テストを実行したり文法をチェックしたい場合は、開発者向けライブラリーをインストールします。
pip install -r requirements-dev.txt
qiskit-terra
をインストールします。pip install .
編集可能モード(プロジェクトのコードを変更しても再インストールする必要なし) でインストールする場合は、次の手順を実行します:
pip install -e .
Terraのインストール後、サンプル・コードを実行することができます。サンプルを実行するには以下のコマンドを使用します:
python examples/python/using_qiskit_terra_level_0.py
注釈
他のコンポーネントをインストールしない場合、qiskit-terraはqiskit-aerとqiskit-ibmq-providerの両方がインストールされていないことを示す RuntimeWarning
を発します。これは追加要素を使用するつもりだが、インストールされていないことに気づかなかったり、AerやIBM Quantum Providerのインストールが何らかの理由でインストールが失敗しているために警告を発します。これらの警告を抑制したい場合は、以下を追加してください:
import warnings
warnings.filterwarnings('ignore', category=RuntimeWarning,
module='qiskit')
コード内にて、qiskit
をまず最初にインポートするように指定します。 これにより、欠落しているqiskit-aerおよびqiskit-ibmq-providerに関する警告が抑制されますが、qiskitまたは他のパッケージからのその他の警告は継続して表示されます。
Installing Aer from Source
Aerリポジトリをクローンします。
git clone https://github.com/Qiskit/qiskit-aer
ビルドの必要要件をインストールします。
pip install cmake scikit-build cython
この後、Aerをインストールする手順は、使用しているオペレーティングシステムによって異なります。 AerはPythonインターフェイスを備えたコンパイル済みのC++プログラムであるため、オペレーティングシステムによっては、普遍的にインストールできないAerバイナリを構築するためのPython以外の依存関係があります。
Linux
コンパイラーの要件をインストールします。
Aerの構築には、C++コンパイラーと開発ヘッダーが必要です。
Fedoraまたは同等のLinuxディストリビューションを使用している場合は、以下の方法でインストールします。
dnf install @development-tools
Ubuntu/Debianの場合は、以下の方法でインストールします。
apt-get install build-essential
OpenBLASの開発ヘッダーをインストールします。
Fedoraまたは同等のLinuxディストリビューションを使用している場合は、以下の方法でインストールします。
dnf install openblas-devel
Ubuntu/Debianの場合は、以下の方法でインストールします。
apt-get install libopenblas-dev
macOS
Windows
Windowsでは、Anaconda3 または Miniconda3 を使用して、すべての依存関係をインストールする必要があります。
コンパイラーの要件をインストールします。
conda install --update-deps vs2017_win-64 vs2017_win-32 msvc_runtime
Qiskit Aerは、量子回路のための高性能なシミュレータフレームワークです。様々なシミュレーションの目的を達成するために、いくつかの バックエンド を提供しています。
conda install --update-deps -c conda-forge -y openblas cmake
qiskit-aerを直接ビルドしてインストールする
pip <19.0.0がインストールされていて、カスタムビルドを必要としない環境であれば、以下を実行してください。
cd qiskit-aer pip install .
これにより、バイナリーのビルドとAerのインストールが行われます。
また、より新しいpipがインストールされている場合や、何らかのカスタム要件がある場合には、手動でPythonホイールを構築することもできます。
cd qiskit-aer python ./setup.py bdist_wheel
ホイールビルド中にカスタムオプションを設定する必要がある場合は、 wheelビルドのカスタム・オプション を参照してください。
Python ホイールをビルドすると、Aer リポジトリの dist/ dir に格納されます。正確なバージョンは、以下に依存します。
cd dist pip install qiskit_aer-*.whl
出力されるホイールファイルの正確なファイル名は、現在開発中のAerのバージョンによって異なります。
Custom options
The Aer build system uses scikit-build to run the compilation when building it with the Python interface. It acts as an interface for setuptools to call CMake and compile the binaries for your local system.
バイナリーのコンパイルが複雑なため、ビルドプロセスの特定の部分にオプションを渡す必要がある場合があります。変数を渡す方法は、
python setup.py bdist_wheel [skbuild_opts] [-- [cmake_opts] [-- build_tool_opts]]
ここで、角括弧 [] 内の要素はオプションであり、 skbuild_opts
、 cmake_opts
、 build_tool_opts
は任意のフラグに置き換えられます。 CMake のオプションのリストは https://cmake.org/cmake/help/v3.6/manual/cmake.1.html#options にあります。例えば、次のように実行することができます。
python setup.py bdist_wheel -- -- -j8
これは、基礎となるビルドシステム(ここでは Automake )に -j8 というフラグを渡し、8つのプロセスを使って並行してビルドしたいことを伝えるものです。
例えば、LINUXにおけるこれらのフラグの一般的な使用例は、使用するC++コンパイラーの特定のバージョンを指定することです(通常、デフォルトでは古すぎる場合)。
python setup.py bdist_wheel -- -DCMAKE_CXX_COMPILER=g++-7
これはCMakeに、Aerのコンパイル時にデフォルトのg++ではなくg++-7コマンドを使用するように指示するものです。
また、環境にもよりますが、プラットフォーム名を指定して静的リンクをオフにするというのもよくある使用例です。
python setup.py bdist_wheel --plat-name macosx-10.9-x86_64 \
-- -DSTATIC_LINKING=False -- -j8
ここで --plat-name
は setuptools のフラグで、パッケージのメタデータで使用するプラットフォーム名を指定します。 -DSTATIC_LINKING
は CMake を使用してスタティックリンクを無効にするためのフラグで、 -j8
は Automake を使用してコンパイルに 8 プロセスを使用するためのフラグです。
プラットフォームに応じた一般的なオプションのリストは以下の通りです。
プラットフォーム |
ツール |
オプション |
ユースケース |
---|---|---|---|
全て |
Automake |
-j |
後ろに数字が続くこのオプションは、コンパイラが使用するプロセッサの数を指定します。 |
Linux |
CMake |
-DCMAKE_CXX_COMPILER |
特定のC++コンパイラを指定するときに使用します。デフォルトのg++が古すぎる場合は、しばしば必要になります。 |
OSX |
setuptools |
–plat-name |
出力Pythonパッケージ内のプラットフォーム名を指定する時に使用します。 |
OSX |
CMake |
-DSTATIC_LINKING |
静的リンクを使用するか否かを指定する時に使用します。 |
注釈
これらのオプションの中には、プラットフォームに依存しないものもあります。これらの特定のプラットフォームがリストアップされているのは、その環境でよく使われているからです。詳細については、ツールのドキュメントを参照してください。
Installing Ignis from Source
Ignisリポジトリーをクローンします。
git clone https://github.com/Qiskit/qiskit-ignis.git
リポジトリーをクローンすると、
qiskit-ignis
という名前のローカル・フォルダーが作成されます。cd qiskit-ignis
テストや文法チェックを実行したい場合は、開発者向けの要件をインストールしてください。ソースからインストールする場合、qiskit-ignisパッケージのインストールおよび使用の際には必要ありません。
pip install -r requirements-dev.txt
Ignisをインストールします。
pip install .
編集可能モード(プロジェクトのコードを変更しても再インストールする必要なし) でインストールする場合:
pip install -e .
Installing Aqua from Source
Aquaリポジトリーをクローンします。
git clone https://github.com/Qiskit/qiskit-aqua.git
リポジトリーをクローンすると、
qiskit-aqua
という名前のローカル・フォルダーが作成されます。cd qiskit-aqua
テストや文法チェックを実行したい場合は、開発者向けの要件をインストールしてください。ソースからインストールする場合、qiskit-aquaパッケージのインストールおよび使用の際には必要ありません。
pip install -r requirements-dev.txt
Aquaをインストールします。
pip install .
編集可能モード(プロジェクトのコードを変更しても再インストールする必要なし) でインストールする場合:
pip install -e .
Installing IBM Quantum Provider from Source
qiskit-ibmq-providerリポジトリーをクローンします。
git clone https://github.com/Qiskit/qiskit-ibmq-provider.git
リポジトリーをクローンすると、
qiskit-ibmq-provider
という名前のローカル・フォルダーが作成されます。cd qiskit-ibmq-provider
テストやリンティングチェックを実行したい場合は、開発者向けの要件をインストールしてください。ソースからインストールする場合、qiskit-ibmq-providerパッケージのインストールおよび使用の際には必要ありません。
pip install -r requirements-dev.txt
qiskit-ibmq-providerをインストールします。
pip install .
編集可能モード(プロジェクトのコードを変更しても再インストールする必要なし) でインストールする場合:
pip install -e .
準備はいいですか?…¶
Qiskit from the ground up
Learn how to build, execute, and post-process quantum circuits with Qiskit.
Start learning QiskitDive into the tutorials
Find out how to leverage Qiskit for everything from single-circuits to full quantum application development.
Qiskit tutorials