参考:https://github.com/Qiskit/qiskit-ibmq-provider#updating-to-the-new-ibm-q-experience
Qiskitとは、パルスや、カイロ、アルゴリズムの段階でまだノイズを含む量子コンピュータ場で稼働するオープンソースのフレームワークである。
このモジュールはIBMQ(https://www.ibm.com/quantum-computing/)の量子コンピュータデバイスやシュミレータにアクセスすることを許されたプロバイダーを含む。
###Installation
Qiskitのインストールには、pipが推奨されている。これにより全てのQiskitの公正要素をインストールすることが可能である。
pip install qiskit
pipは自動的に全てのディペンデンシーを扱ってくれ、常に最新バージョンのqiskitを使うことができる。
ソースコードからインストールしたい場合は、https://github.com/Qiskit/qiskit-ibmq-provider/blob/master/CONTRIBUTING.mdを参照
##Setting up the IBMQ provider
一旦パッケージをインストールすれば、Qiskitからプロバイダーにアクセスすることが可能
###Configure your IBMQ credentials
1.IBM Q アカウントを作成、または既存のアカウントにログインをし、IBM Q Experience login page(https://quantum-computing.ibm.com/login)へいく
2.IBM Q Experience account page(https://quantum-computing.ibm.com/account)にてAPIトークンをコピーする。
3.step2のトークン(ここでMY_API_TOKEN
と呼ぶ)を使いrunをする。
from qiskit import IBMQ
IBMQ.save_account('MY_API_TOKEN')
##Accessing your IBMQ backends
IBMQ.save_account()
を呼び出した後は、自分のcredentialがデスクに保存される。一旦保存してしまえば、以下のコードを書くことで簡単にロードして使えるようになる。
from qiskit import IBMQ
provider = IBMQ.load_account()
provider.get_backend('ibmq_qasm_simulator')
代わりに、もし自分のcredentialをデスクに保存したくなく、今回の一回だけ使いたい場合は、以下のようにすれば良い。
from qiskit import IBMQ
provider = IBMQ.enable_account('MY_API_TOKEN')
provider.get_backend('ibmq_qasm_simulator')
デフォルトでは、全てのIBM Qアカウントは同じオープンプロジェクトにアクセスする(hub: ibm-q
, group: open
, project: main
).便利のために、IBMQ.load_account()
と IBMQ.enable_account()
の方法はプロジェクトのためにプロバイダーを返す。もしあなたが他のプロジェクトにアクセスする場合は以下を使う。
provider_2 = IBMQ.get_provider(hub= 'MY_HUB', group='MY_GROUP', project='MY_PROJECT')
##Updating to the new IBM Q Experience
2019年9月(qiskit-ibmq-provider
パッケージはヴァージョン0.4
)から、IBMQプロバイダーは最新のIBM Q Experience(https://quantum-computing.ibm.com/) しかサポートしなくなった。レガシーのQuantum ExperienceやQconsole accountaのサポートは終了した。
新しいIBM Q Experienceはv2
とされる。legacyとQconsoleはv1
である。
このセクションでは、アカウントとプログラムのアップデートについて説明する。
・
v1
のIBM Q Experienceのcredentialとプログラムははre-0.3ヴァージョンで書かれているので0.3.x
シリーズでも作動する。ただv2
credentialsの新しい特徴の恩恵を受けるために、アップデートすることを推奨している。
・IBM Q Experiencev2
にcredentialsをアップデートする場合、自分のプログラムまでもアップデートすることを示唆する。これからのセクションではいかにしてヴァージョンの意向を行うか示す。
###UPdating your IBM Q Experience credentials
もしlegacy Quantum ExperienceやQcondoleのcredentialsがディスクに保存されている場合、IBMQ.update_account()
を助けとして使うべきである。これは現在ディスクに保存されているcredentialを読み込んで、改装させることを試みる。
from qiskit import IBMQ
IBMQ.update_account()
Found 2 credentials.
The credentials stored will be replaced with a single entry with token "MYTOKEN"
and the noe IBM Q Experience v2 URL (https://auth.quantum-computing.ibm.com/api).
In order to access the provider, please use the new "IBMQ.get_provider()" method:
provider0 = IBMQ.load_account()
provider1 = IBMQ.get_provider(hub='A', group='B', project='C')
Note you need to update your programs in order to retrieve backends from a specific provider directly:
backends = provider0.backends()
backend = provider0.get_backend('ibmq_qasm_simulator')
Update the credentials? [y/N]
認証をすることで、自分のcredentialsが有効なIBM Q Experience v2 に書き換えられる。もしより複雑な場合は、IBMQ.delete_accounts()
を用いて、昔のcredentialsを消去し、(https://quantum-computing.ibm.com/account) のインストラクションを読んでください。
SQL小技集
https://qiita.com/ool/items/75da830e7373138c8125
UTCとJST
https://qiita.com/ool/items/6be9cc290c8ad9e0f5bc
今流行りの量子コンピューター
[量子コンピューター]Qisikitでアダマールゲートを実装する
https://qiita.com/ool/items/1a5041edddc11b14efc0
[Qiskitのアカウント認証の仕方]Qiskit IBMQ プロバイダー
https://qiita.com/ool/items/e80c1266cda68984a103
Qiskitの使い方
https://qiita.com/ool/items/2227d2d515caa5087752
[量子コンピューター]Qiskit Tutorials
https://qiita.com/ool/items/2a5038df1471635d442c