- Python量子計(jì)算實(shí)踐:基于Qiskit和IBM Quantum Experience平臺(tái)
- (美)哈西·諾倫
- 1018字
- 2024-05-24 18:03:13
1.5 安裝API密鑰并訪(fǎng)問(wèn)提供服務(wù)的量子計(jì)算機(jī)
在安裝好Qiskit之后,讀者即可開(kāi)始創(chuàng)建自己的量子程序,并在本地模擬器中運(yùn)行這些程序。如果讀者有時(shí)想在IBM Quantum的實(shí)體硬件上運(yùn)行自己的量子程序,必須在本地環(huán)境中安裝自己的API密鑰,每個(gè)API密鑰都是獨(dú)一無(wú)二的。
IBM Quantum Experience的API密鑰
如果讀者在IBM Quantum Experience的Notebook環(huán)境中運(yùn)行自己的Qiskit程序,系統(tǒng)會(huì)自動(dòng)注冊(cè)一個(gè)API密鑰。
1.5.1 準(zhǔn)備工作
在安裝API密鑰之前,讀者必須先創(chuàng)建一個(gè)IBM Quantum Experience的賬號(hào)。如果讀者還沒(méi)有創(chuàng)建賬號(hào),可以回到1.2節(jié),按照操作步驟進(jìn)行創(chuàng)建。
1.5.2 操作步驟
下面,本書(shū)將介紹如何在本地環(huán)境中安裝API密鑰。
(1)通過(guò)IBM Quantum官方網(wǎng)站的登錄頁(yè)面登錄到IBM Quantum Experience。
(2)在IBM Quantum Experience主頁(yè)面的右上角,找到用戶(hù)圖標(biāo),點(diǎn)擊該圖標(biāo),選擇“My account”。
(3)在賬號(hào)頁(yè)面中找到“Qiskit in local environment”選項(xiàng),點(diǎn)擊“Copy token”。
(4)讀者可以將復(fù)制的令牌粘貼到一個(gè)臨時(shí)的位置,或者將其保留在剪切板中。
(5)在本地設(shè)備上訪(fǎng)問(wèn)自己的Qiskit環(huán)境。之前的步驟中已經(jīng)包含這一步,但是如果讀者使用的是Anaconda,需要再次進(jìn)行本操作。
(6)激活虛擬環(huán)境。
$ conda activate environment_name
(7)打開(kāi)Python。
$(environment_name) … $ python3
檢查屏幕上顯示的Python版本信息,確保正在運(yùn)行的Python版本是正確的:
Python 3.7.6 (default, Jan 8 2020, 13:42:34) [Clang 4.0.1 (tags/RELEASE_401/final)] :: Anaconda, Inc. on darwin Type "help", "copyright", "credits" or "license" for more information. >>>
(8)獲取所需的IBMQ類(lèi)型。
>>> from qiskit import IBMQ
(9)在本地環(huán)境中安裝API令牌。
>>> IBMQ.save_account('MY_API_TOKEN')
在這一步中,讀者需要將剛才從IBM Quantum Experience里復(fù)制的API令牌粘貼到該命令中MY_API_TOKEN的位置。要保留單引號(hào),因?yàn)樵撁钚枰褂脝我?hào)。
(10)登錄自己的賬號(hào)。
API令牌就位后,讀者需要驗(yàn)證API密鑰是否都設(shè)置好了,自己的賬號(hào)權(quán)限是否正常:
>>> IBMQ.load_account()
執(zhí)行上述命令后,系統(tǒng)會(huì)顯示如下輸出結(jié)果:
<AccountProvider for IBMQ(hub='ibm-q', group='open', project='main')>
這就是為賬號(hào)提供服務(wù)的量子計(jì)算機(jī)的信息,其中包含hub(集線(xiàn)器)、group(群組)和project(項(xiàng)目)信息。
1.5.3 運(yùn)行原理
在上述示例中,讀者導(dǎo)入的主要的類(lèi)是IBMQ,它是一種用于使用IBM在云上提供的量子硬件和軟件的工具箱。
本章使用save_account()在本地存儲(chǔ)賬號(hào)。隨著學(xué)習(xí)的深入,在將要訪(fǎng)問(wèn)IBM Quantum機(jī)器的操作配方中,本書(shū)將在量子程序中使用IBMQ.load_account()和IBMQ.get_provider()類(lèi),以確保讀者能夠獲取正確的訪(fǎng)問(wèn)權(quán)限。
更新API密鑰
如果出于某些原因,讀者需要在IBM Quantum Experience中創(chuàng)建一個(gè)新的API令牌,并更新本地保存的API令牌,可以使用如下命令:
>>> IBMQ.save_account('NEW_API_TOKEN', overwrite=True)
1.5.4 知識(shí)拓展
在本書(shū)后續(xù)操作配方的代碼中,會(huì)使用如下命令設(shè)置一個(gè)provider變量,以保存為讀者賬號(hào)提供服務(wù)的量子計(jì)算機(jī)的信息:
>>> provider = IBMQ.get_provider()
之后,讀者就可以使用provider信息選擇IBM Quantum計(jì)算機(jī)或后端來(lái)運(yùn)行自己的量子程序。在后續(xù)示例中,本書(shū)將選擇一個(gè)名為“IBM Q 5 Yorktown”(內(nèi)部名稱(chēng)為ibmqx2)的量子計(jì)算機(jī)作為后端:
>>> backend = provider.get_backend('ibmqx2')
- Vue 3移動(dòng)Web開(kāi)發(fā)與性能調(diào)優(yōu)實(shí)戰(zhàn)
- Learning Bayesian Models with R
- Processing互動(dòng)編程藝術(shù)
- Silverlight魔幻銀燈
- PLC編程與調(diào)試技術(shù)(松下系列)
- Java項(xiàng)目實(shí)戰(zhàn)精編
- WebRTC技術(shù)詳解:從0到1構(gòu)建多人視頻會(huì)議系統(tǒng)
- H5頁(yè)面設(shè)計(jì):Mugeda版(微課版)
- 批調(diào)度與網(wǎng)絡(luò)問(wèn)題的組合算法
- Visual Basic程序設(shè)計(jì)(第三版)
- 貫通Tomcat開(kāi)發(fā)
- C#程序設(shè)計(jì)基礎(chǔ)入門(mén)教程
- JavaEE架構(gòu)與程序設(shè)計(jì)
- 開(kāi)源網(wǎng)絡(luò)地圖可視化:基于Leaflet的在線(xiàn)地圖開(kāi)發(fā)
- Java基礎(chǔ)案例教程(第2版)