＜簡単＞（最新2025年4月版）量子ソフトウェアの始め方

2024年5月にIBMのQuantumLabが廃止になり、無償の量子ソフトウェアが使えるPython3のクラウド開発環境は無くなりました。
またIBM QuantumはQiskit1.0以降で、クラウド環境にあったシミュレータを廃止し、シミュレータもローカルマシンで走る方式になりました。

これにより、ローカルマシンでシミュレータを利用するとローカルマシンへの計算負荷が掛かり、ローカルマシンにも十分なリソースを必要とするようになりました。

とはいえ、安定する開発環境が容易に準備出来ないことは、量子コンピュータが普及しない理由の一つにもなっていると思います。
そこで、現在無償で利用出来る開発環境と量子ソフトウェアを使えるところまでの準備方法を検証しました。

2025年2月時点で安定してどこからも誰でも使えて構築も簡単な無償の量子コンピュータの開発環境は、以下の2つがある事がわかりました。

# 1.IBM Quantum LearningのComposerを使う
事前に<B>IBMアカウントの登録</B>が必要です。無料で利用出来ます。Operationにあるアイコンがそれぞれどういう動きをするかは、qiskitのマニュアルであるqiskit textで確認して作ります。画面右上のSetup and runボタンでは、稼働中のIBM Quantumを選択出来ます。

https://quantum.ibm.com/composer

2025年現在は、GUIコンポーネントをドラッグして量子ゲートを表現する形になりますので複雑な事は実装出来なかったのですが、下図の右ペイン（Qiskitと表示されているもの）ではQiskit（Python3）はReadOnlyなので編集出来ません。しかしComposerはOpenQASM2.0は、編集可能であるため、OpenQASM2.0を記述出来るとプログラミング出来ます。但しComporser下部のグラフは、5Qbit以上は表示出来ません。表示出来ないだけで量子コンピュータでの実行は可能です。

Composer右上の「Setup and run」で動かしたい量子コンピュータを選択し、量子コンピュータ実機での実行をさせることが可能です。

※現在のComposerの問題点としては、IBM Quantumの実機環境しか使えないので、多くの人がタスクを投げるとIBM Quantumが数分から数時間のWait状態となることです。残念ながら体感的なスピード感は味わえません。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/608295/d7844815-c075-4b36-aaad-57af9317c0a0.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/608295/18dac6c0-8985-4f2d-b4bb-2aade792fd95.png)
<B> OpenQASM2.0へ変換したShorのアルゴリズムをコピペした例 </B>
Setup and runを実行しても表面上はほとんど何も変わらないので、量子コンピュータ実機で動いたのかを履歴で確認します。下記にログインしてください。このShorのアルゴリズムの計算結果を履歴で確認出来ます。

https://quantum.ibm.com/

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/608295/a8791005-dfb2-4d43-ade8-94115053a203.png)
Quantum履歴表示：Shorのアルゴリズムは大きいので、Web表示がタイムアウトを多発し安定しませんが、通常のアルゴリズムでは使えると思います。
このように、量子コンピュータの計算をOpenQASM2.0で書いて量子コンピュータで検証させることが可能です。

PythonをOpenQASM2.0に変換したサンプルコードを下記のページに掲載しました。このサンプルコードでIBM Composerから量子コンピュータを使ってみよう！
https://qiita.com/jg1mnv/items/1d9d21ebcadacfb13a4e

# 2.qBraidを使う
2023年11月末からqBraidと言う現存する量子コンピュータ全てにアクセス可能なGUIツールが提供されています。

引用元：qBraid LabでQiskitを使う手順
> https://qiita.com/kifumi/items/0bf725b9686c15201f27

利用するqBraidクラウドマシンのスペックによって、無料、有料が決まってます。利点はIBM Quantumを含む全世界のクラウド型量子コンピュータにアクセス出来ます。まあシステム表示は全て英語ですが、コメントやJupyterNotebook名に日本語も使えます。
また、qBraidログインにはGoogleアカウント連携が使えます。個人のGoogleアカウント利用が禁じられている会社からはメールアドレス認証が良いでしょう。

※Googleアカウント連携のメリットは、GoogleDriveをqBraidからアクセス、マウント出来る事ですが、qBraid自体が、ファイル共有していますので、1つのアカウントでどこからでも同じ環境画面にアクセス出来る事は変わらないので、特にこのメリットを使う事はないと思います。

※ブラウザは、GoogleChrome、MicrosoftEdgeがGoogleアカウントにブラウザ自体ログイン出来てしまう事と、セッションの維持方法が異なる為にqBraidではバックグラウンドでGoogleアカウントログインされてしまい、認証に失敗しますが、画面表面にそのような痕跡が残らないと言うのが不安定になる要因と思われるので、Googleアカウントのログインに縁がないFireFox、Vivaldiなどを使うことで今のところ安定している。2025年1月～2月の毎日起動しているが安定して起動するのでアカウント連携のしがらみがないブラウザはお勧め。ちなみにmacOSのSafariも安定的に起動出来る事を確認している。特にM3以降のMacはPython3の互換性問題があるのでこういったブラウザで利用出来るクラウド環境はMacやLinuxでも開発出来るメリットがあります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/608295/bc3ac47a-8532-499f-b4b0-978f7072e6b4.png)
このLaunchLab

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/608295/dd239cd4-4d03-4f68-8d07-49c7c077b26d.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/608295/42aefb55-1c57-4484-be6f-f43f0bee4b50.png)
EnvironmentsでADDするPythonセットで「QDC 2024（IBM Quantum Developer Conference)」と言うPython3.11.0のセットを使うと最新のQiskit1.2.4の環境が数分で構築出来ます。JupyterNotebookのシート単位で、このPythonモジュールを切り替えて利用出来ます。これは便利！最近Qiskit1.3.2のセットも追加になりました。このボックスの下部にあるMoreボタンでモジュールの追加も可能です！
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/608295/cc337b14-1236-4066-acac-f65969fc41b1.png)
ここでもAdd Package出来ます。この画面がOQC Toshiko用の接続モジュールをインストールした画面です。ここでインストール出来なくてもqBraidのTerminalからインストール出来ます。


私は頑張ってローカルにminiconda環境を作ってしまいましたが、英語という事を除けば、とても手軽に利用出来ますね！（そもそもminicondaのJupyterNotebookは英語しか表示しない）それにIBM含めたほとんどゲート型、アニーリング型など、すべての量子コンピュータに繋げます。もちろん有料のものはそれぞれのサイトで有償契約、支払が必要です。今年（2025年）以降は量子コンピュータにとってそういう時代になったと言う事ですね。

2025年の追加情報：qBraidは、使っているといくつか問題に遭遇しますが、これらを抑えると、最も使いやすい無料のクラウド環境となります。

今のところ確認されている問題は2件です。

### 1、qBraidはログインしてLaunch Labをクリックするだけだが、すぐに上がって来るはずのJupyterNotebook画面が起動しない。

前提として利用する<B>ブラウザ</B>が結構重要です。私はMicrosoft Edge、Google Chromeで最初はTryしており、qBraidのGoogleアカウント認証も利用していましたが、実はこれがqBraidの起動が不安定になる原因と推定されます。ブラウザは<B>FireFox、Vivaldi</B>などのブラウザに<B>Googleアカウント認証が付いていないもの</B>を利用し、Googleアカウント連携は利用しない事がqBraid安定起動の条件と思われます。<B>（2024年12月～2025年3月13日時点で安定起動を確認しています。）</B>

また、必ず、起動途中で止まる現象が出ますが、焦らず止まっていることを1～2分確認後、<B>「ブラウザ更新」</B>をすると、<B>止まっていた画面のタブ名</B>がJupyterNotebookまたはqBraid Labと表示され起動します。これで安定的に利用可能になります。（「ブラウザの更新」は何度か1分とか時間をおいてクリックするとタグがJupyterと出れば成功です。）

※私は毎回起動時にこの操作をするようになりましたが、安定して使えるようになりました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/608295/b4be5543-0ff9-4c15-aa97-b0129c03275a.png)

安定起動させる必殺技は、

https://www.qbraid.com/

ここから入り直すことです。入り直しと再描画の2つでほぼ99％起動出来ます。（2ヵ月間ほぼ毎日検証）

 

### 2、qBraidのPythonパッケージにモジュールを追加したいがコマンドプロンプトの出し方がわからない。

　⇒　qBraid Lab画面のメニューでFile⇒New Launcherから新たなJupyterNotebookを表示し、この中のOther⇒「Terminal」アイコンをクリックするとmini condaでもお馴染みのコマンドプロンプトが表示されます。注意が必要なのは、これは仮想環境なので、実際に使っているPython環境がbase環境ではない事です。

 ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/608295/fca1c27c-5ab4-4a38-be01-9afea743c245.png)

### 3、最新のQiskit2.0も使いたいぞ！

⇒2025年4月時点では、Qiskit2.0を含むPython3モジュールセットはリリースされていませんので、無償版のqBraidを利用している方は、既存のモジュールを更新せねばなりません。

私が検証しているのは、Qiskit1.2.4が搭載されてる、「QDC 2024 Environment」というモジュールセットをインストールして利用しています。Qiskit1.0以降ならどれでもQiskit2.0.0へバージョンアップ可能と思われます。

Qiskit2.0にするだけなら簡単なのですが、これまで作ってきたコードをエラーなく動かすには、関連するモジュールも全て更新しないと依存関係エラーが出て動きません。
正式な情報は特にないので、手当たり次第にQiskitを冠名に持つモジュールをアップグレードすれば、Qiskit1.0以降へのマイグレーション済みのコードは問題なく動く事を確認しました。

手順としては、
下図のようにまずは、「＋Add a package」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/608295/42fbbbb9-89ff-497d-9e3f-2128d65bd399.png)

「qiskit」と入れると、右側に虫眼鏡マークが出ます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/608295/fbe2258b-43b5-4d4e-877b-a3a7ec9182e3.png)

虫眼鏡マークをクリックすると何かボックスが下りてきます。このAnyの脇の下矢印をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/608295/6793c6eb-962f-4d44-945d-a1fbb55b2f8d.png)

下記のようにバージョンが出るので、今回は無印（正式リリース）の2.0.0を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/608295/b7071a3b-b271-4b86-901c-119fc75ce06e.png)

これで「＋Add」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/608295/42d3d7c6-c6cd-4ccf-9b8f-d5e88183fcce.png)

すぐにインストールされてバージョンは上がります。※表示はすぐに更新されません。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/608295/fc1f86ad-58ee-459d-89ca-18244a863808.png)

ここで大切なのは、インストール後に英語でモジュールの依存関係が出ます。qiskitを冠名に持つモジュールはすべてバージョンが古いので、上記の操作で、他のqiskitモジュールもGUIでアップデート出来ます。
この依存バージョンによっては完全に動作しなくなるものもあるので、全てバージョンアップすることをお勧めします。

これで量子コンピュータに限らず、いろいろなPython実装を検証出来ます。オンライン学習のPython3演習などと併せての活用も良いと思います。

またPythonモジュールセットはいろいろと選択出来、自分オリジナルのモジュールセットを作ることも出来ます。
正に箱庭状態です。
このqBraidでは世の中で使われている有力な量子コンピュータ全てを利用可能にするモジュールセットが有料でも提供されています。話題のエラー検出まで可能にした量子コンピュータもエントリーされています。

量子コンピュータは未来の技術すぎて関係者も実感がわかなくなっているのですが、今は、こんなに簡単に量子コンピュータに触れるんです！2025年今が始め時ですよ！