Visual Studio Code ile Q# programları gönderme
Gerçek kuantum donanımına Q# programları oluşturmak ve göndermek için Visual Studio Code'u kullanmayı öğrenin. Azure Quantum'a kuantum bilgi işlem işlerini tek başına bir Q# programı olarak gönderebilir, Q# ile Q# projesini Python ile birleştirebilir ve jupyter notebook çalıştırabilirsiniz.
Q# işlerini Azure Quantum'a gönderme
Azure Quantum'a Q# programı çalıştırmak, hata ayıklamak ve göndermek için VS Code'u kullanmayı öğrenin.
Önkoşullar
Yükleme ayrıntıları için bkz . VS Code'da QDK'yi yükleme.
- Azure aboneliğinizdeki bir Azure Quantum çalışma alanı. Çalışma alanı oluşturmak için bkz . Azure Quantum çalışma alanı oluşturma.
- Visual Studio Code'un en son sürümü veya Vs Code'un Web'de açılması.
- Azure Quantum Geliştirme Seti uzantısının en son sürümü.
Q# örnek programı yükleme
VS Code'da Dosya > Yeni Metin Dosyası'nı seçin ve dosyayı RandomNum.qs olarak kaydedin.
RandomNum.qs dosyasını açın ve yazın
sample
, ardından seçenekler listesinden Rastgele Bit örneği'ni seçin ve dosyayı kaydedin.
Not
Kendi Q# dosyanızı da açabilirsiniz. Eski bir Q# programı çalıştırıp hatayla karşılaşırsanız bkz . Test etme ve hata ayıklama.
Q# programı çalıştırma
Programınızı yerleşik simülatörde yerel olarak çalıştırmak için aşağıdaki
@EntryPoint()
komut listesinde Çalıştır'a tıklayın veya Ctrl+F5 tuşlarına basın. Çıkışınız hata ayıklama konsolunda görünür.Programınızı Azure Quantum'a göndermeden önce hata ayıklamak için, aşağıdaki
@EntryPoint()
komut listesinden Hata Ayıkla'ya tıklayın veya F5 tuşuna basın. Kodun üzerine, içine ve dışına geçmek için üstteki hata ayıklama denetimlerini kullanın. Q# programlarının hatalarını ayıklama hakkında daha fazla bilgi için bkz . Test etme ve hata ayıklama.
Sıklık histogramını görselleştirme
Sıklık histogramı, bir kuantum programını birden çok kez veya "çekimler" çalıştırarak elde edilen sonuçların dağılımını temsil eder. Histogramdaki her çubuk olası bir sonuca karşılık gelir ve yüksekliği sonucun kaç kez gözlemlendiğini gösterir. Sıklık histogramı bu sonuçların olasılık dağılımını görselleştirmeye yardımcı olur.
Görünüm -> Komut Paleti'ni seçin ve Q#: Dosyayı çalıştır ve histogramı göster seçeneğini ortaya çıkarması gereken "histogram" yazın. Histogram'a aşağıdaki
@EntryPoint()
komut listesinden de tıklayabilirsiniz. Q# histogram penceresini açmak için bu seçeneği belirleyin.Programı yürütmek için 100 çekim gibi bir dizi çekim girin ve Enter tuşuna basın. Histogram Q# histogram penceresinde görüntülenir.
Seçenekleri görüntülemek için sol üst ayarlar simgesine tıklayın.
Bu sonucun yüzdesini görüntülemek için bir çubuğu tıklatın. Bu durumda 0 ve 1 olmak üzere iki olası sonuç vardır ve her sonucun yüzdesi %50'ye yakındır.
İpucu
Fare kaydırma tekerleğini veya izleme yüzeyi hareketini kullanarak histogramı yakınlaştırabilirsiniz. Yakınlaştırdığınızda, kaydırma sırasında 'Alt' tuşuna basarak grafiği kaydırabilirsiniz.
Kuantum devresini görselleştirme
Kuantum devresi diyagramları, kuantum işlemlerinin görsel bir gösterimidir. Kubitlerin kuantum programı aracılığıyla akışını gösterir ve bunlara uygulanan geçitler ve ölçümler de dahil olmak üzere. Daha fazla bilgi için bkz . Visual Studio Code'da kuantum devresi diyagramları.
Görünüm -> Komut Paleti'ni seçin ve Q#: Bağlantı hattını göster seçeneğini ortaya çıkarması gereken "devre" yazın. Aşağıdaki
@EntryPoint()
komut listesinden Devre'ye de tıklayabilirsiniz.Bağlantı hattı Q# bağlantı hattı penceresinde görüntülenir. Devre diyagramı, |0⟩ durumuna başlatıldığı bir kubit yazmaç gösterir. Ardından kubite bir Hadamard kapısı, H uygulanır ve ardından ölçüm simgesiyle temsil edilen bir ölçüm işlemi uygulanır. Daha fazla bilgi için bkz . Kuantum devreleri kuralları.
Azure Quantum'a bağlanma ve işinizi gönderme
İşleri doğrudan VS Code'dan bağlayabilir ve gönderebilirsiniz. Bu örnekte Rigetti simülatörüne bir iş göndereceksiniz.
Görünüm -> Komut Paleti'ne tıklayın ve Q#: Azure Quantum çalışma alanına bağlanın yazın. Enter'a basın.
Azure hesabı'nı seçin ve tercih ettiğiniz dizine, aboneliğe ve çalışma alanına bağlanmak için istemleri izleyin.
Not
bağlantı dizesi varsa Bağlantı dizesi'ni seçip Azure Quantum çalışma alanınıza karşılık gelen bağlantı dizesi yapıştırabilirsiniz. Daha fazla bilgi için bkz. bağlantı dizesi kullanarak Kuantum çalışma alanına bağlanma.
Bağlandıktan sonra, Gezgin bölmesinde Kuantum Çalışma Alanları'nı genişletin.
Çalışma alanınızı genişletin ve Rigetti sağlayıcısını genişletin.
Not
Azure Quantum'a bağlanırken bir sorun varsa, çalışma alanı adının yanında bir uyarı simgesi görüntülenir. Hata bilgilerini görüntülemek için çalışma alanı adının üzerine gelin.
rigetti.sim.qvm öğesini seçin.target
Geçerli Q# programını göndermeye başlamak için adın target sağındaki yürüt simgesini seçin. Açılır pencere alırsanız QIR target profilini değiştir'i seçin ve devam edin.
İşi tanımlamak için bir ad ekleyin.
Çekim sayısını veya programın kaç kez çalıştırıldığını ekleyin.
İşi göndermek için Enter tuşuna basın. İş durumu ekranın en altında görüntülenir.
İşler'i genişletin ve işinizin üzerine gelin ve işinizin zamanlarını ve durumunu görüntüleyin.
Sonuçları görüntülemek için iş adının yanındaki bulut simgesini seçerek çalışma alanı depolama alanınızdan sonuçları indirin ve VS Code'da görüntüleyin.
Jupyter Notebooks işlerini Azure Quantum'a gönderme
Azure Quantum'a Q# Jupyter Not Defteri çalıştırmak, hata ayıklamak ve göndermek için VS Code'u kullanmayı öğrenin. Bu makaledeki adımlar yerel Jupyter sunucunuzdaki Jupyter Not Defterleri veya Azure Quantum portalındaki not defterleri için de geçerlidir.
Önkoşullar
Yükleme ayrıntıları için bkz . VS Code'da QDK'yi yükleme.
Azure aboneliğinizdeki bir Azure Quantum çalışma alanı. Çalışma alanı oluşturmak için bkz . Azure Quantum çalışma alanı oluşturma.
Python ve Pip'in yüklü olduğu bir Python ortamı.
Azure Quantum Geliştirme Seti, Python ve Jupyter uzantılarının yüklü olduğu VS Code.
Azure Quantum
qsharp
,qsharp-widgets
, veazure-quantum
paketleri veipykernel
paketi.python -m pip install --upgrade qsharp qsharp-widgets azure-quantum ipykernel
Programınızı yerel simülatörde çalıştırma ve test etme
VS Code'da Komut paleti Görüntüle'yi > ve ardından Oluştur: Yeni Jupyter Not Defteri'ni seçin.
Sağ üst kısımda VS Code, not defteri için seçilen Python sürümünü ve sanal Python ortamını algılar ve görüntüler. Birden çok Python ortamınız varsa, sağ üstteki çekirdek seçiciyi kullanarak bir çekirdek seçmeniz gerekebilir. Ortam algılanmadıysa kurulum bilgileri için VS Code'da Jupyter Not Defterleri bölümüne bakın.
Not defterinin ilk hücresinde aşağıdaki Python kodunu çalıştırarak gerekli modülleri içeri aktarın:
import qsharp import azure.quantum
- Modül,
qsharp
Q# kodunu doğrudan bir hücreye girmenizi sağlayan sihirli komutu etkinleştirir%%qsharp
. - Modül,
azure-quantum
Azure Quantum çalışma alanınıza bağlantı sağlar.
Not
Jupyter Python çekirdeği
ipykernel
algılanmazsa VS Code bunu yüklemenizi ister.- Modül,
Başka bir hücre ekleyin ve kullanıcı tarafından belirtilen sayıda rastgele bit döndüren bu Q# kodunu girin:
Not
Sihirli komutuna
%%qsharp
yazdığınız anda not defteri hücresinin türü Python'dan Q# olarak değiştiğine dikkat edin.%%qsharp operation Random() : Result { use q = Qubit(); H(q); let result = M(q); Reset(q); return result } operation RandomNBits(N: Int): Result[] { mutable results = []; for i in 0 .. N - 1 { let r = Random(); set results += [r]; } return results }
İşleminizi test etmek için, daha önce not defterinde tanımlanan herhangi bir Q# işlemini çağırabilen yöntemini kullanabilirsiniz
eval
:qsharp.eval("RandomNBits(4)")
[Zero, One, One, Zero]
Programınızı yerel simülatörde çalıştırmak için yöntemini kullanın
run
.shots
Programı çalıştırmak için öğesini veya kaç kez çalıştırılacağını belirtin ve simülatör sonuçları Python listesi olarak döndürür.qsharp.run("RandomNBits(4)", shots=10)
[[One, One, One, One], [Zero, Zero, One, Zero], [One, Zero, Zero, One], [Zero, One, Zero, Zero], [One, Zero, One, One], [One, Zero, One, Zero], [One, One, One, Zero], [One, One, One, One], [Zero, Zero, Zero, One], [One, Zero, Zero, One]]
Kuantum devresini görselleştirme
Paketini kullanarak qsharp-widgets
kuantum devrelerini görselleştirebilirsiniz. Bu paket, kuantum devresi diyagramını SVG görüntüsü olarak işleyen bir pencere öğesi sağlar. Daha fazla bilgi için bkz . Jupyter Notebooks ile kuantum devresi diyagramları.
Bağlantı hattını görselleştirmek için yeni bir hücreye aşağıdaki kodu ekleyin:
from qsharp_widgets import Circuit
Circuit(qsharp.circuit("RandomNBits(4)"))
Daha fazla bilgi için bkz . Kuantum devreleri kuralları.
Temel profili kullanarak işinizi derleme
Programları yerel kuantum simülatöründe çalıştırdığınızda, herhangi bir Q# programı türü gönderebilirsiniz. Ancak Azure Quantum donanımı targets henüz tüm Q# programlarını çalıştırmak için gereken tüm özellikleri desteklememektedir. Q# programlarını derlemek ve Azure Quantum'a göndermek için profilinizi donanımınızın target target hangi özellikleri desteklediğini Q# ile bildirecek şekilde ayarlamanız gerekir. Şu anda Bu, Temel profildir. Daha fazla bilgi için bkz . Azure Quantum'da profil türleri.
Q# yorumlayıcısını yeniden başlatıp programınızı temel profille derlemek için:
init
Profili ayarlamak için yöntemini kullanın:qsharp.init(target_profile=qsharp.TargetProfile.Base)
Yorumlayıcıyı yeniden başlatmış olduğunuzdan kodunuzu yeni profille yeniden çalıştırmanız gerekir:
%%qsharp operation Random() : Result { use q = Qubit(); H(q); let result = M(q); Reset(q); return result } operation RandomNBits(N: Int): Result[] { mutable results = []; for i in 0 .. N - 1 { let r = Random(); set results += [r]; } return results }
Ardından, programınızın giriş noktası olan işlemi veya işlevi belirtmek için yöntemini kullanın
compile
. Bu, kodunuzu QIR biçiminde derler ve daha sonra herhangi bir kuantum donanımına gönderilebilir:MyProgram = qsharp.compile("RandomNBits(4)")
Azure Quantum'a bağlanma ve işinizi gönderme
Programınızı doğru biçimde derlediğinize göre, Azure Quantum'a bağlanmak için bir azure.quantum.Workspace
nesne oluşturun. Bağlanmak için Azure Quantum çalışma alanınızın Kaynak Kimliğini kullanacaksınız. Kaynak kimliği ve konumu Azure portalındaki çalışma alanınıza genel bakış sayfasından kopyalanabilir.
Yeni bir hücrede, Azure Quantum çalışma alanınızdan kaynak kimliğinizi ve konumunuzu doldurun:
MyWorkspace = azure.quantum.Workspace( resource_id = "MyResourceID", location = "MyLocation" )
get_targets
Çalışma alanınızdaki kullanılabilir donanımı targets görmek için yöntemini kullanın:MyTargets = MyWorkspace.get_targets() print("This workspace's targets:") MyTargets
öğesini
rigetti.sim.qvm
targetseçin:MyTarget = MyWorkspace.get_targets("rigetti.sim.qvm")
Son olarak, programınızı parametreleriyle göndermek ve sonuçları görüntülemek için yöntemini kullanın
submit
:job = MyTarget.submit(MyProgram, "MyQuantumJob", shots=100) job.get_results()
{'[0, 1, 1, 1]': 0.08, '[1, 1, 0, 0]': 0.1, '[0, 0, 1, 0]': 0.04, '[0, 1, 0, 0]': 0.05, '[1, 0, 1, 0]': 0.05, '[1, 0, 0, 0]': 0.07, '[0, 1, 0, 1]': 0.07, '[1, 0, 1, 1]': 0.07, '[0, 0, 0, 0]': 0.08, '[1, 1, 1, 0]': 0.05, '[0, 0, 0, 1]': 0.1, '[0, 0, 1, 1]': 0.04, '[0, 1, 1, 0]': 0.09, '[1, 0, 0, 1]': 0.04, '[1, 1, 1, 1]': 0.05, '[1, 1, 0, 1]': 0.02}
İşin tüm özelliklerine içinde
job.details
erişilebilir, örneğin:print(job.details) print("\nJob name:", job.details.name) print("Job status:", job.details.status) print("Job ID:", job.details.id)
{'additional_properties': {'isCancelling': False}, 'id': '0150202e-9638-11ee-be2f-b16153380354', 'name': 'MyQuantumJob', 'provider_id': 'rigetti'...} Job name: MyQuantumJob Job status: Succeeded Job ID: 0150202e-9638-11ee-be2f-b16153380354
Ek iş ayrıntıları
Python paketi, azure.quantum
daha ayrıntılı iş verilerini görüntülemek için ek yöntemler içerir.
job.get_results_histogram()
: Bu yöntem, her benzersiz ölçüm için sonuçların ve atış sayısının bir sözlüğünü döndürür. Örneğin, önceki işin sonuçlarıprint(job.get_results_histogram())
{ '[0, 1, 1, 1]' : {'Outcome' : [0, 1, 1, 1], 'Count' : 8}, '[1, 1, 0, 0]' : {'Outcome' : [1, 1, 0, 0], 'Count' : 10}, '[0, 0, 1, 0]' : {'Outcome' : [0, 0, 1, 0], 'Count' : 4}, '[0, 1, 0, 0]' : {'Outcome' : [0, 1, 0, 0], 'Count' : 5}, '[1, 0, 1, 0]' : {'Outcome' : [1, 0, 1, 0], 'Count' : 5}, '[1, 0, 0, 0]' : {'Outcome' : [1, 0, 0, 0], 'Count' : 7}, '[0, 1, 0, 1]' : {'Outcome' : [0, 1, 0, 1], 'Count' : 7}, '[1, 0, 1, 1]' : {'Outcome' : [1, 0, 1, 1], 'Count' : 7}, '[0, 0, 0, 0]' : {'Outcome' : [0, 0, 0, 0], 'Count' : 8}, '[1, 1, 1, 0]' : {'Outcome' : [1, 1, 1, 0], 'Count' : 5}, '[0, 0, 0, 1]' : {'Outcome' : [0, 0, 0, 1], 'Count' : 10}, '[0, 0, 1, 1]' : {'Outcome' : [0, 0, 1, 1], 'Count' : 4}, '[0, 1, 1, 0]' : {'Outcome' : [0, 1, 1, 0], 'Count' : 9}, '[1, 0, 0, 1]' : {'Outcome' : [1, 0, 0, 1], 'Count' : 4}, '[1, 1, 1, 1]' : {'Outcome' : [1, 1, 1, 1], 'Count' : 5}, '[1, 1, 0, 1]' : {'Outcome' : [1, 1, 0, 1], 'Count' : 2} }
job.get_results_shots()
: Bu yöntem, her bir çekim sonucunun listesini döndürür. Örneğin, önceki işin sonuçlarıprint(job.get_results_shots())
[ [0, 1, 1, 1], [1, 0, 1, 1], [0, 0, 1, 1], [1, 1, 0, 1], [1, 0, 0, 0], [1, 0, 1, 1], [1, 1, 0, 1], ...]
Q# işleri ile Python'ı Azure Quantum'a gönderme
Q# işlemlerini çağıran bir Python programı yazmak, Python komutlarını veya Azure CLI'yı kullanarak Azure'a bağlanmak ve işinizi göndermek için VS Code'u kullanmayı öğrenin.
Önkoşullar
Yükleme ayrıntıları için bkz . VS Code'da QDK'yi yükleme.
- Azure aboneliğinizdeki bir Azure Quantum çalışma alanı. Çalışma alanı oluşturmak için bkz . Azure Quantum çalışma alanı oluşturma.
- Python ve Pip'in yüklü olduğu bir Python ortamı.
- Azure Quantum Geliştirme Seti ve Python uzantısının yüklü olduğu VS Code.
- Azure Quantum
qsharp
veazure-quantum
paketleri. - En son Azure Quantum uzantısının yüklü olduğu Azure CLI .
Q# işlemlerinizi oluşturma ve içeri aktarma
Paketleqsharp
, işlevlerinizi ve işlemlerinizi Q# dosyalarında depolayabilir ve Python kodunuzdan herhangi birine çağrıda bulunmanıza olanak sağlayan Q# projeleri oluşturabilirsiniz. Bu, özellikle giriş parametrelerini alan bir program başlatmanız gerektiğinde yararlıdır.
Q# projesi oluşturmak için adımları izleyin.
Yeni bir metin dosyası açın, kullanıcı tarafından belirtilen sayıda rastgele bit döndüren aşağıdaki Q# kodunu ekleyin ve dosyayı projenizdeki /src dizinine olarak
source.qs
kaydedin.Not
Bu Q# kodunun Q# programı gibi bir
@EntryPoint
işlevi olmadığını unutmayın (bkz . Q# işlerini Azure Quantum'a gönderme), ancak Jupyter Not Defteri'nin aksine bir ad alanı gerektirir (bkz . Jupyter Notebook işlerini Azure Quantum'a gönderme).namespace Sample { operation Random() : Result { use q = Qubit(); H(q); let result = M(q); Reset(q); return result } operation RandomNBits(N: Int): Result[] { mutable results = []; for i in 0 .. N - 1 { let r = Random(); set results += [r]; } return results } }
Proje kök klasöründe (qsharp.json dosyasıyla) başka bir dosya açın ve olarak
randomNum.py
kaydedin.ve
azure.quantum
modüllerini içeri aktarmakqsharp
için aşağıdaki kodu ekleyin.import qsharp import azure.quantum
Ardından, Q# projesi kök klasörünü tanımlamak için kod ekleyin ve işlemi yerel simülatörde test edin target . İşlem ad alanı tarafından <çağrılır.<>operation_name( )> ve bu durumda döndürülecek rastgele bit sayısını geçiriyorsunuz.
qsharp.init(project_root = '../MyProjectRootFolder') print(qsharp.eval("Sample.RandomNBits(4)"))
[Zero, One, One, Zero]
Ayrıca işlemi, ek
shots
bir parametre geçiren ve sonuçları python listesinde döndüren yöntemiylerun
de test edebilirsiniz. içinderandomNum.py
, önceki print deyimini aşağıdakilerle değiştirin:result = qsharp.run("Sample.RandomNBits(4)", shots=10) for x in result: print(x)
[[One, One, One, One], [Zero, Zero, One, Zero], [One, Zero, Zero, One], [Zero, One, Zero, Zero], [One, Zero, One, One], [One, Zero, One, Zero], [One, One, One, Zero], [One, One, One, One], [Zero, Zero, Zero, One], [One, Zero, Zero, One]]
Temel profili kullanarak işinizi derleme
Programları yerel kuantum simülatöründe çalıştırdığınızda, herhangi bir Q# programı türü gönderebilirsiniz. Ancak Azure Quantum donanımı targets henüz tüm Q# programlarını çalıştırmak için gereken tüm özellikleri desteklememektedir. Q# programlarını derlemek ve Azure Quantum'a göndermek için profilinizi donanımınızın target target hangi özellikleri desteklediğini Q# ile bildirecek şekilde ayarlamanız gerekir. Şu anda veya Adpative_RI
profilidirBase
. Daha fazla bilgi için bkz . Azure Quantum'da profil türleri.
Not
YALNıZCA VS Code'daki Q# programları için VS Code profili otomatik olarak ayarlarBase
.
init
Profili ayarlamak için yöntemini kullanın:qsharp.init(project_root = '../MyProjectRootFolder', target_profile=qsharp.TargetProfile.Base)
Not
Qsharp durumunuzu yeniden başlatdığınızdan, derleyicinin
project_root
işlemi nerede bulacağını bilmesi için parametresiniRandomNBits
yeniden ayarlamanız gerekir. Bu, önceki yordamın 5. adımında da yapılmış olabilir.Ardından, programınızın giriş noktası olan işlemi veya işlevi belirtmek için yöntemini kullanın
compile
. Derlenen program daha sonra herhangi bir kuantum donanımına gönderilebilir:MyProgram = qsharp.compile("Sample.RandomNBits(4)")
Azure Quantum'a bağlanma ve işinizi gönderme
Azure Quantum'a bağlanıp Python tarafından oluşturulan Workspace
bir nesne kullanarak işinizi gönderebilir veya Azure CLI kullanarak bağlanıp gönderebilirsiniz. Azure CLI kullanmak için derlenmiş programı bir metin dosyası olarak kaydetmeniz ve cli komutu kullanarak bu dosyayı göndermeniz gerekir.
Programınızı doğru biçimde derlediğinize göre, Azure Quantum'a bağlanmak için bir azure.quantum.Workspace
nesne oluşturun. Bağlanmak için Azure Quantum çalışma alanınızın Kaynak Kimliğini kullanacaksınız. Kaynak kimliği ve konumu Azure portalındaki çalışma alanınıza genel bakış sayfasından kopyalanabilir.
Azure Quantum çalışma alanınızdan kaynak kimliğinizi ve konumunuzu doldurarak öğesine aşağıdaki kodu
randomNum.py
ekleyin:workspace = azure.quantum.Workspace( resource_id = "MyResourceID", location = "MyLocation" )
get_targets
Çalışma alanınızda kullanılabilir donanımı targets görüntülemek için yöntemini kullanın:MyTargets = workspace.get_targets() print("This workspace's targets:") for x in MyTargets: print(x)
öğesini
rigetti.sim.qvm
targetseçin:MyTarget = workspace.get_targets("rigetti.sim.qvm")
Son olarak, programınızı parametreleriyle göndermek için yöntemini kullanın
submit
. İş sonuçları Python sözlüğü olarak döndürülür.job = MyTarget.submit(MyProgram, "MyPythonJob", shots=100) results = job.get_results() print("\nResults: ", results)
Yalnızca değerleri ayıklamak ve görüntülemek için:
for x in results: print(x)
[0, 0, 0, 0] 0.3 [1, 0, 0, 0] 0.1 [1, 1, 1, 1] 0.3 [0, 1, 1, 1] 0.3
İşin tüm özelliklerine içinde
job.details
erişilebilir, örneğin:print(job.details) print("\nJob name:", job.details.name) print("Job status:", job.details.status) print("Job ID:", job.details.id)
{'additional_properties': {'isCancelling': False}, 'id': '0fc396d2-97dd-11ee-9958-6ca1004ff31f', 'name': 'MyPythonJob', 'provider_id': 'rigetti'...} Job name: MyPythonJob Job status: Succeeded Job ID: fc396d2-97dd-11ee-9958-6ca1004ff31f
Ek iş ayrıntıları
Python paketi, azure.quantum
daha ayrıntılı iş verilerini görüntülemek için ek yöntemler içerir.
job.get_results_histogram()
: Bu yöntem, her benzersiz ölçüm için sonuçların ve atış sayısının bir sözlüğünü döndürür. Örneğin, önceki işin sonuçlarıresults = job.get_results_histogram() for x in results.items(): print(x)
{ '[0, 0, 0, 0]' : {'Outcome' : [0, 0, 0, 0], 'Count' : 30}, '[1, 0, 0, 0]' : {'Outcome' : [1, 0, 0, 0], 'Count' : 10}, '[1, 1, 1, 1]' : {'Outcome' : [1, 1, 1, 1], 'Count' : 30}, '[0, 1, 1, 1]' : {'Outcome' : [0, 1, 1, 1], 'Count' : 30} }
job.get_results_shots()
: Bu yöntem, her bir çekim sonucunun listesini döndürür. Örneğin, önceki işin sonuçlarıprint(job.get_results_shots())
[ [0, 0, 0, 0], [1, 1, 1, 1], [0, 1, 1, 1], [1, 1, 1, 1], [1, 0, 0, 0], [0, 1, 1, 1], [0, 0, 0, 0], ...]