PASQAL プロバイダー

ヒント

Azure Quantum ワークスペースを作成すると、各量子ハードウェア プロバイダーに対して USD500 無料の Azure Quantum クレジットが自動的に取得されます。 Azure Quantum クレジットを使用して、最初の量子プログラムを実際の量子ハードウェアに送信できます。

PASQALの量子コンピュータは、レーザー光を使用して最大100量子ビットの量子レジスタを操作し、光ピンセットで中性原子を制御します。

  • 発行元: PASQAL
  • プロバイダー ID: pasqal

このプロバイダーから使用できる次のターゲット:

ターゲット名 ターゲット ID 量子ビット数 説明
Emu-TN pasqal.sim.emu-tn 100 量子ビット 1D および 2D ネットワーク レーザーが実行するアクションに対応する Schrödinger 方程式を使用して、量子状態の時間進化をシミュレートします。
フレネル pasqal.qpu.fresnel 100 量子ビット PASQAL の中性原子量子コンピューター。

Note

現在、PASQAL 量子プロバイダーはプライベート プレビューで利用できます。 このリンクに従って、プライベート プレビューへのアクセスを要求できます。

エミュレーター

PASQAL の Emu-TN エミュレーターは、レーザーが実行するアクションに対応する Schrödinger の式を使用して、量子状態の時間進化をシミュレートします。

Emu-TN エミュレーターは、それぞれ NVIDIA A100 GPU を搭載した DGX ノードのクラスター上で実行され、PASQAL の量子プロセッサのエミュレーションが可能になります。 これは、量子プログラムを QPU で実行する前にプロトタイプを作成して検証するための重要なツールです。 2Dアレイで最大100量子ビットをエミュレートして産業アプリケーションを開発し、科学的発見を進めることができます。

  • ジョブの種類: Simulation
  • データ形式: application/json
  • ターゲット ID: pasqal.sim.emu-tn
  • ターゲット実行プロファイル: N/A

フレネル

フレネルは、中性原子に基づく PASQAL の量子コンピューターです。 光ピンセットによって制御される中性原子は、100量子ビットの配列を構成する。

中性原子量子デバイスは、高度に焦点を当てたレーザー、いわゆる光ピンセットを使用して、中立原子を個別にトラップして操作し、任意の構成で1Dまたは2D量子ビット配列を作成します。 現在のPASQAL世代のデバイスは、計算に約100個のルビジウム原子を使用しています。 各量子ビットは、ルビジウム原子の 2 レベルのエネルギー状態(通常は基底状態)と、高エネルギー状態であるライドバーグ状態で表されます。

  • ジョブの種類: Quantum program
  • データ形式: application/json
  • ターゲット ID: pasqal.qpu.fresnel
  • ターゲット実行プロファイル: N/A

Pulser SDK

PASQAL QPU では、個々の原子が 1D または 2D 格子内の明確に定義された位置にトラップされます。 Pulser は、中性原子量子デバイス上でパルス シーケンスを作成、シミュレート、実行するためのフレームワークです。 詳細については、Pulser のドキュメントを参照してください

Pulser SDK パッケージをインストールするには、次のコードを実行します。

    !pip -q install pulser-simulation #Only for using the local Qutip emulator included in Pulser
    !pip -q install pulser-core

入力データ形式

PASQAL ターゲットは、入力データ形式として JSON ファイルを受け入れます。 パルス シーケンスを送信するには、Pulser オブジェクトを入力データとして使用できる JSON 文字列に変換する必要があります。

# Convert the sequence to a JSON string
def prepare_input_data(seq):
    input_data = {}
    input_data["sequence_builder"] = json.loads(seq.to_abstract_repr())
    to_send = json.dumps(input_data)
    #print(json.dumps(input_data, indent=4, sort_keys=True))
    return to_send

量子ジョブを PASQAL に送信する前に、適切な入力および出力データ形式パラメーターを設定する必要があります。 たとえば、次のコードでは、入力データ形式を pasqal.pulser.v1 設定し、出力データ形式を pasqal.pulser-results.v1.

# Submit the job with proper input and output data formats
def submit_job(target, seq):
    job = target.submit(
        input_data=prepare_input_data(seq), # Take the JSON string previously defined as input data
        input_data_format="pasqal.pulser.v1",
        output_data_format="pasqal.pulser-results.v1",
        name="PASQAL sequence",
        shots=100 # Number of shots
    )

PASQAL プロバイダーにジョブを送信する方法の詳細については、「Pulser SDK を使用して PASQAL に回線を送信する」を参照してください

価格

PASQAL の課金プランを確認するには、Azure Quantum の価格に関するページを参照してください

制限とクォータ

PASQAL クォータは、Emu-TN エミュレーターの使用状況に基づいて追跡されます。 クォータは、使用しているプランによって異なります。

  • Azure Quantum クレジット プラン: 最大 20 時間
  • 従量課金制プラン: 最大 100 時間

クォータは Emu-TN エミュレーターにのみ適用されます。 Fresnel QPU のクォータはありません。