IonQ sağlayıcısı
İpucu
İlk kez kullanan kullanıcılar, katılan her kuantum donanım sağlayıcısıyla kullanılmak üzere otomatik olarak ücretsiz 500 ABD Doları (USD)Azure Quantum Kredisi alır. Tüm kredileri kullandıysanız ve daha fazlasına ihtiyacınız varsa Azure Quantum Kredileri programına başvurabilirsiniz.
IonQ'nun kuantum bilgisayarları, Ytterbium iyonlarının hiperfine enerji durumlarını lazerlerle işleyerek hesaplamalar yapar. Atomlar doğanın kubitleridir; her kubit programlar içinde ve programlar arasında aynıdır. Mantıksal işlemler herhangi bir rastgele kubit çifti üzerinde de gerçekleştirilebilir ve böylece fiziksel bağlantı tarafından engellenmeyen karmaşık kuantum programları sağlanır. Daha fazla bilgi almak ister misiniz? IonQ'nun kapana kısılmış iyon kuantum bilgisayar teknolojisine genel bakış bölümünü okuyun.
- Yayımcı: IonQ
- Sağlayıcı Kimliği:
ionq
Bu sağlayıcıdan aşağıdakiler targets kullanılabilir:
Hedef adı | Hedef Kimliği | Kubit sayısı | Description |
---|---|---|---|
Kuantum simülatörü | ionq.simulator | 29 kubit | IonQ'nun bulut tabanlı idealleştirilmiş simülatörü. Ücretsiz. |
IonQ Harmony | ionq.qpu | 11 kubit | IonQ'nun kapana kısılmış iyon kuantum bilgisayarı. |
IonQ Aria 1 | ionq.qpu.aria-1 | 25 kubit | IonQ'nun Aria kapana kısılmış iyon kuantum bilgisayarı. |
IonQ Aria 2 | ionq.qpu.aria-2 | 25 kubit | IonQ'nun Aria kapana kısılmış iyon kuantum bilgisayarı. |
IonQ Forte | ionq.qpu.forte | 32 kubit | IonQ'nun Forte kapana kısılmış iyon kuantum bilgisayarı. Yalnızca Özel Önizleme'de kullanılabilir. |
IonQ'lar targets bir No Control Flow profile karşılık geliyor. Bu target profil ve sınırlamaları hakkında daha fazla bilgi için bkz. Azure Quantum'da profil türlerini anlamatarget.
Kuantum simülatörü
IonQ'nun kuantum donanımında sağladığı aynı kapı kümesini kullanarak 29 kubite kadar destekleyen GPU hızlandırmalı idealleştirilmiş simülatör, işleri gerçek bir kuantum bilgisayarda çalıştırmadan önce kontrol etmek için harika bir yerdir.
- İş türü:
Simulation
- Veri Biçimi:
ionq.circuit.v1
- Hedef Kimliği:
ionq.simulator
- Hedef Yürütme Profili: No Control Flow
IonQ Harmony kuantum bilgisayarı
IonQ Harmony, kapana kısılmış bir iyon kuantum bilgisayarıdır ve 11 kubite kadar kullanmak için yazılımda dinamik olarak yeniden yapılandırılabilir. Tüm kubitler tamamen bağlıdır, yani herhangi bir çift arasında iki kubitli bir geçit çalıştırabilirsiniz.
- İş türü:
Quantum Program
- Veri Biçimi:
ionq.circuit.v1
- Hedef Kimliği:
ionq.qpu
- Hedef Yürütme Profili: No Control Flow
Parametre Adı | Tür | Gerekli | Açıklama |
---|---|---|---|
shots |
int | No | Deneysel çekim sayısı. Varsayılan değer 500'dır. |
Sistem zamanlaması
Measure | Ortalama süre (μs) |
---|---|
T1 | >10^7 |
T2 | 200,000 |
Tek kubitli kapı | 10 |
İki kubitli kapı | 210 |
Okuma | 100 |
Sıfırlamayı kaydet | 25 |
Tutarlılık süresi / kapı süresi | 1667 |
Sistem uygunluğu
İşlem | Ortalama uygunluk |
---|---|
Tek kubitli kapı | %99,35 (istenmeyen posta düzeltildi) |
İki kubitli kapı | %96,02 (istenmeyen posta düzeltilmedi) |
SPAM* | 99.3 - 99.8% |
Geometrik ortalama op | 98.34% |
* Durum Hazırlama ve Ölçüm (İsteNMEYEN POSTA): Bu ölçüm, kuantum bilgisayarın ilk durumuna bir kubit ayarlayıp sonunda sonucu ne kadar doğru ölçebileceğini belirler.
IonQ Aria kuantum bilgisayarı
IonQ Aria, 25 kubitli dinamik olarak yeniden yapılandırılabilir bir sisteme sahip IonQ'nun kapana kısılmış iyon kuantum bilgisayarlarının amiral gemisidir. Daha fazla bilgi için bkz . IonQ Aria (ionq.com).
Önemli
Aria sistemlerinde debiasing varsayılan olarak etkindir ve gönderilen işler debiasing tabanlı fiyatlandırmaya tabidir. Sapmaları kaldırma ve hizmeti devre dışı bırakma/etkinleştirme hakkında daha fazla bilgi için bkz. Hata azaltma.
- İş türü:
Quantum Program
- Veri Biçimi:
ionq.circuit.v1
- Hedef Kimliği:
ionq.qpu.aria-1
,ionq.qpu.aria-2
- Hedef Yürütme Profili: No Control Flow
Parametre Adı | Tür | Gerekli | Açıklama |
---|---|---|---|
shots |
int | No | Deneysel çekim sayısı. |
Sistem zamanlaması
Measure | Ortalama süre |
---|---|
T1 | 10-100 sn |
T2 | 1 sn |
Tek kubitli kapı | 135 μs |
İki kubitli kapı | 600 μs |
Sistem uygunluğu
İşlem | Ortalama uygunluk |
---|---|
Tek kubitli kapı | %99,95 (istenmeyen posta düzeltildi) |
İki kubitli kapı | %99,6 (istenmeyen posta düzeltilmedi) |
SPAM* | 99.61% |
* Durum Hazırlama ve Ölçüm (İsteNMEYEN POSTA): Bu ölçüm, kuantum bilgisayarın ilk durumuna bir kubit ayarlayıp sonunda sonucu ne kadar doğru ölçebileceğini belirler.
IonQ Aria, Azure Quantum Kredileri planı ve ayrı bir faturalama planı aracılığıyla kullanılabilir. Daha fazla bilgi için bkz. Azure Quantum fiyatlandırması.
IonQ Forte kuantum bilgisayarı
IonQ Forte, IonQ'nun en yüksek performanslı, ticari olarak kullanılabilir, kapana kısılmış iyon kuantum bilgisayarıdır. 32 kubitli yazılım yapılandırılabilir bir sistemle IonQ Forte, Azure Quantum'da Özel Önizleme'de kullanılabilir. Daha fazla bilgi için bkz . IonQ Forte (ionq.com).
Önemli
Forte sisteminde debiasing varsayılan olarak etkindir ve gönderilen işler sapma tabanlı fiyatlandırmaya tabidir. Sapmaları kaldırma ve hizmeti devre dışı bırakma/etkinleştirme hakkında daha fazla bilgi için bkz. Hata azaltma.
- İş türü:
Quantum Program
- Veri Biçimi:
ionq.circuit.v1
- Hedef Kimliği:
ionq.qpu.forte
- Hedef Yürütme Profili: No Control Flow
Parametre Adı | Tür | Gerekli | Açıklama |
---|---|---|---|
shots |
int | No | Deneysel çekim sayısı. |
Giriş biçimi
Q# dilinde kuantum ölçümünün çıktısı, yalnızca ve One
değerlerini Zero
alabilen türünde Result
bir değerdir. Bir Q# işlemi tanımladığınızda, yalnızca dönüş türü bir s koleksiyonuysa Result
, yani işlemin çıktısı bir kuantum ölçümünün sonucuysa IonQ donanımına gönderilebilir. Bunun nedeni, IonQ'nun döndürülen değerlerden bir histogram oluşturması ve bu nedenle dönüş türünü bu histogramı oluşturmayı basitleştirmek için Result
kısıtlamasıdır.
IonQ'lar targets öğesine No Control Flow profilekarşılık gelir. Bu profil, program akışını denetlemek için kubit ölçümlerinin sonuçlarının kullanılmasını gerektiren kuantum işlemlerini çalıştıramaz.
Not
Şu anda, program akışını denetlemek için sonuçları kullanmasanız bile ile ölçülen No Control Flowtargetskubitlere işlem uygulayan kuantum programları gönderemezsiniz. Yani, No Control Flowtargets orta devre ölçümlerine izin verme.
Örneğin, aşağıdaki kod üzerinde No Control Flowtargetçalıştırılamaz:
operation MeasureQubit(q : Qubit) : Result {
return M(q);
}
operation SampleMeasuredQubit(q : Qubit) : Result {
H(MeasureQubit(q));
return M(MeasureQubit(q));
}
Çıkış biçimi
IonQ simülatörüne bir kuantum programı gönderdiğinizde, ölçümler tarafından oluşturulan histogramı döndürür. IonQ simülatörü, kuantum programı tarafından oluşturulan olasılık dağılımını örneklemez, bunun yerine çekim sayısına ölçeklendirilmiş dağılımı döndürür. Bu en çok tek bir atış devresi gönderdiğinizde görünür. Histogramda tek bir çekim için birden çok ölçüm sonucu görürsünüz. Bu davranış IonQ simülatörünün doğasında yer alırken, IonQ QPU aslında programı çalıştırır ve sonuçları toplar.
Ek Özellikler
IonQ donanımı tarafından desteklenen ek özellikler burada listelenmiştir.
Özellik | Açıklama |
---|---|
Hata azaltma | IonQ donanımında gürültüyü en aza indirmek ve algoritmik performansı en üst düzeye çıkarmak için sapmaları azaltmayı kullanın |
Yerel geçit desteği | Bağlantı hatlarını doğrudan IonQ donanıma özel geçitlerde tanımlama ve yürütme |
Gürültü modeli simülasyonu | Farklı IonQ donanımlarında çalıştırdığınızda devrelerin karşılaşacağı kirlilik profilinin simülasyonunu oluşturun. |
Kullanıcılar, Azure Quantum Q# ve Qiskit sağlayıcılarındaki geçiş parametreleri aracılığıyla bu ek özelliklerden yararlanabilir.
Hata azaltma
IonQ, IonQ donanımına iş gönderirken kuantum hatasını azaltmayı etkinleştirme seçeneği sağlar. Hata azaltma, bir bağlantı hattının birden çok simetrik varyasyonunu çalıştırıp yürüten ve ardından donanım hataları ile kubit ayrıştırma etkisini azaltırken sonuçları toplayan derleyici düzeyinde bir işlemdir. Kuantum hata düzeltme tekniklerinden farklı olarak, hata azaltma büyük bir geçit ve kubit yükü gerektirmez.
Sapma, belirli bir devrenin, farklı kubit atamaları, kapı ayrıştırmaları ve darbe çözümleri gibi teknikleri kullanarak, ideal bir gürültüsüz makinede özdeş olması gereken küçük varyasyonları oluşturma ve ardından bu varyasyonları yürütme işlemidir.
Keskinleştirme ve Ortalama , varyasyonların sonuçlarını toplamaya yönelik seçeneklerdir. Ortalama, tüm varyasyon sonuçlarına eşit olarak dayanırken, Keskinleştirme hatalı sonuçları filtreler ve belirli algoritma türleri için daha güvenilir olabilir.
Daha fazla bilgi için bkz. Debiasing ve Sharpening. Hata azaltma fiyatlandırması için bkz. IonQ fiyatlandırması.
Hata azaltmayı etkinleştirme
Not
Debiasing , Aria ve Forte sistemlerinde varsayılan olarak etkindir ve Harmony sistemlerinde varsayılan olarak devre dışıdır.
Azure Quantum'da Q# veya Qiskit ile gönderilen işler için hata azaltma etkinleştirilebilir veya devre dışı bırakılabilir.
Hata azaltmayı etkinleştirmek için makine için target isteğe bağlı bir parametre ekleyin:
option_params = {
"error-mitigation": {
"debias": True
}
}
Hata azaltmayı devre dışı bırakmak için parametresini olarak False
ayarlayın:
option_params = {
"error-mitigation": {
"debias": False
}
}
Not
IonQ'nun kirlilik modeli simülasyonu da kullanıyorsanız, bu parametreler buraya dahil edilebilir, örneğin:
option_params = {
"error-mitigation": {
"debias": False
},
"noise": {
"model": "harmony",
"seed": 100
}
}
Daha fazla bilgi için bkz . Gürültü modeli simülasyonu.
Azure Quantum'da hata azaltma ile iş çalıştırma
Bu örnekte basit bir rastgele sayı oluşturucu kullanılır.
İlk olarak gerekli paketleri içeri aktarın ve temel profili başlatın:
import qsharp
import azure.quantum
qsharp.init(target_profile=qsharp.TargetProfile.Base)
Ardından işlevi tanımlayın.
%%qsharp
open Microsoft.Quantum.Measurement;
open Microsoft.Quantum.Arrays;
open Microsoft.Quantum.Convert;
operation GenerateRandomBit() : Result {
use target = Qubit();
// Apply an H-gate and measure.
H(target);
return M(target);
}
and compile the operation:
```python
MyProgram = qsharp.compile("GenerateRandomBit()")
Azure Quantum'a bağlanın target , makineyi seçin ve öykünücü için kirlilik parametrelerini yapılandırın:
MyWorkspace = azure.quantum.Workspace(
resource_id = "",
location = ""
)
MyTarget = MyWorkspace.get_targets("ionq.qpu")
Yapılandırmayı error-mitigation
belirtme
option_params = {
"error-mitigation": {
"debias": True
}
}
İşi gönderirken hata azaltma yapılandırmasını geçirin:
job = MyTarget.submit(MyProgram, "Experiment with error mitigation", shots = 10, input_params = option_params)
job.get_results()
Qiskit'te, işi göndermeden önce isteğe bağlı parametreleri target makine yapılandırmasına geçirirsiniz:
circuit.name = "Single qubit random - Debias: True"
backend.options.update_options(**option_params)
job = backend.run(circuit, shots=500)
Not
parametresini error-mitigation
geçirmezseniz, target makine varsayılan ayarını kullanır: Aria ve Forte sistemleri için etkin ve Harmony sistemleri için devre dışı .
Yerel geçit desteği ve kullanımı
Varsayılan olarak IonQ, donanım için iyileştirme konusunda endişelenmeden bir algoritma yazarken esneklik ve taşınabilirlik sağlayan adlı qis
kuantum geçitlerinden oluşan soyut bir küme kullanarak bir kuantum devresi belirtmenize olanak tanır.
Ancak bazı gelişmiş kullanım örneklerinde, donanıma daha yakın olmak ve iyileştirmeyi atlamak için doğrudan yerel geçitlerde bir bağlantı hattı tanımlamak isteyebilirsiniz. Yerel kapı kümesi, kuantum işlemcisinde fiziksel olarak yürütülen kuantum geçitleri kümesidir ve yürütmenin bir parçası olarak bağlantı hattını bunlarla eşler.
Daha fazla bilgi için bkz . Yerel Geçitleri Kullanmaya Başlama (ionq.com).
Qiskit işlerini Azure Quantum'a gönderirken yerel kapı kümesini kullanmak için aşağıdaki örnekte olduğu gibi arka ucu başlatırken parametresini belirtirsiniz gateset
:
# Here 'provider' is an instance of AzureQuantumProvider
backend = provider.get_backend("ionq.qpu", gateset="native")
Parametre Adı | Tür | Gerekli | Description |
---|---|---|---|
gateset |
dize | No | Bir bağlantı hattını tanımlamak için kullanılacak geçit kümesini belirtir. değeri qis soyut kapılara (varsayılan davranış) ve native IonQ donanım yerel geçitlerine karşılık gelir. |
Qiskit işleri hakkında daha fazla bilgi için bkz. Qiskit ile bağlantı hattı gönderme.
Gürültü modeli simülasyonu
Günümüzün kuantum donanımının en iyileri bile doğal gürültüye sahiptir ve sisteminizin target kirlilik özelliklerini bilmek, algoritmalarınızı geliştirmenize ve bağlantı hattını donanım üzerinde çalıştırırken daha gerçekçi bir sonuç tahmini almanıza yardımcı olabilir. IonQ, donanıma özgü bir "kirli parmak izi" kullanarak devreye gürültü getiren bir gürültü modeli simülasyonutarget sağlar. Daha fazla bilgi için bkz. Donanım Gürültü Modeli Benzetimi ile Çalışmaya Başlama.
Kirlilik modeli parametreleri
Parametre Adı | Değerler | Açıklama |
---|---|---|
noise |
model , seed |
Gürültü modeli simülasyonunu etkinleştirir |
model |
ideal , harmony , aria-1 |
Donanım için target kirlilik modelini belirtir.
|
seed |
1 ile $2^{31}$ arasındaki tamsayı (2.147.483.648) | Sahte rastgele kirlilik ve shot örnekleme için bir tohum değeri belirtmenize olanak tanır ve yeniden üretilebilir gürültülü sonuçlar oluşturur. Parametre belirtilmezse rastgele seed bir değer oluşturulur. |
Atış farkındalığı
Gürültü modeli simülasyonu çekime duyarlıdır; yani, sağlanan çekim sayısına göre çıkış durumundan ölçümleri örnekler. Azure Quantum'da shots
parametresi iş ile birlikte gönderilir ve ve aria-1
gürültü modelleri için harmony
gereklidir. Hiçbir shot
değer belirtilmezse, varsayılan değeri 1000
kullanılır. ideal
Kirlilik modeli kullanılırsa parametresi shots
yoksayılır.
Kubit kapasitesi
ideal
Gürültü modeli, IonQ kuantum simülatörü ile 29 kubite kadar simülasyon yapmanızı sağlarken, donanıma özgü gürültü modelleri donanımın target gerçek kubit kapasitesiyle sınırlıdır: gürültü modeli için harmony
11 kubit ve gürültü modeli için aria-1
25 kubit.
Gürültü modeli simülasyonu etkinleştirme
Azure Quantum'da gürültü modeli simülasyonu Q# ile veya Qiskit ile gönderilen işler için etkinleştirilebilir veya devre dışı bırakılabilir.
Kirlilik modeli simülasyonunu etkinleştirmek için makine için target isteğe bağlı bir parametre ekleyin, örneğin:
option_params = {
"noise": {
"model": "harmony", # targets the Harmony quantum computer
"seed" : 1000 # If seed isn't specified, a random value is used
}
}
Not
IonQ'nun hata azaltmasını da kullanıyorsanız, bu parametreler buraya dahil edilebilir, örneğin:
option_params = {
"error-mitigation": {
"debias": False
},
"noise": {
"model": "harmony",
"seed": 1000
}
}
Daha fazla bilgi için bkz. Hata azaltma.
Gürültü modeli simülasyonu ile iş çalıştırma
Hata azaltmada daha önce gösterilen örnek programı kullanabilir ve içinde kirlilik modeli yapılandırmasını option_params
ekleyebilir veya değiştirebilirsiniz;
option_params = {
"error-mitigation": {
"debias": True
},
"noise": {
"model": "aria",
"seed": 1000
}
}
Ardından işi gönderirken isteğe bağlı parametreleri geçirin:
job = MyTarget.submit(MyProgram, "Experiment with noise model simulation", shots = 10, input_params = option_params)
job.get_results()
Qiskit'te, işi göndermeden önce isteğe bağlı parametreleri target makine yapılandırmasına geçirirsiniz:
circuit.name = "Single qubit random - Debias: True"
backend.options.update_options(**option_params)
job = backend.run(circuit, shots=500)
Fiyatlandırma
IonQ faturalama planını görmek için Azure Quantum fiyatlandırması bölümünü ziyaret edin.
Limitler ve kotalar
IonQ kotaları , qubit-gate-shot (QGS) olan QPU kullanım birimine göre izlenir. Kaynak kullanımı hesabınıza göre alacaklandırılır.
Her kuantum programı bir veya daha fazla kubitin $N$ kuantum mantıksal kapılarından oluşur ve belirli sayıda çekim için yürütülür. Gate-shot sayısı aşağıdaki formülle hesaplanır:
$$ QGS = N · C $$
burada:
- $N$ gönderilen bir veya iki kubitli kapı sayısıdır
- $C$ istenen yürütme görüntülerinin sayısıdır
Kotalar plan seçimine bağlıdır ve destek biletiyle artırılabilir. Geçerli sınırlarınızı ve kotalarınızı görmek için Krediler ve kotalar dikey penceresine gidin ve Azure portal çalışma alanınızın Kotalar sekmesini seçin. Daha fazla bilgi için bkz. Azure Quantum kotaları.
Not
Faturalama planı değil de Azure Quantum Kredileri planı kullanıyorsanız kota bilgileri ayrılmış kredilerinizle eşlenir. Bu durumda kota, aldığınız toplam kredi sayısını listeler.
IonQ durumu
IonQ QPU iş işleme gecikmeleri hakkında bilgi için bkz. IonQ durum sayfası.
IonQ en iyi yöntemleri ve bağlantı grafiği
IonQ QPU için önerilen en iyi yöntemleri görmek için bkz. IonQ En İyi Yöntemleri (ionq.com).
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin