QuantumFerry 用户使用手册

连接与认证

使用平台 SDK 的 Client ID 和 Client Secret,通过 Core SDK 创建客户端,查询设备并提交任务。本页介绍平台地址、认证方式和钱包选择。

设置平台地址

填写平台提供的 API 根地址。

python
import os

os.environ["QUANTUM_SOURCE_API_URL"] = input("Platform API base URL: ").strip()

使用隐藏输入

python
from getpass import getpass
from quantum_source_sdk import ClientCredentials

creds = ClientCredentials(
    client_id=input("Platform Client ID: "),
    client_secret=getpass("Platform Client Secret: "),
)

Core SDK:创建客户端

使用上面的平台地址和 creds 创建 SchedulerClient,再查询设备列表。

python
from quantum_source_sdk import SchedulerClient

scheduler = SchedulerClient(
    creds=creds, base_url=os.environ["QUANTUM_SOURCE_API_URL"]
)
page = scheduler.management.list_backend_classes(limit=20)
for item in page.backend_classes:
    print(item.short_code, item.status)

page.backend_classes 返回本页设备列表。后续 Core 示例可继续使用 scheduler,选择账号可用的设备执行实验。

选择设备和组织

从设备列表选择 short_code,再查询可用组织,填写示例所需的设备和组织 ID。

python
org_page = scheduler.management.list_user_organizations(limit=100)
for org in org_page.organizations:
    print(org.id, org.name)
python
os.environ["QUANTUM_SOURCE_BACKEND"] = input("Backend short_code: ")
os.environ["QUANTUM_SOURCE_ORGANIZATION_ID"] = input("Organization ID: ")

使用已有环境配置

若已配置平台地址和 SDK 凭据,可用下面的方式创建客户端。凭据可使用 Client ID / Client Secret 环境变量,或 QUANTUM_SOURCE_SDK_KEY 指定的 JSON 文件。

python
import os
from quantum_source_sdk import SchedulerClient

scheduler = SchedulerClient(base_url=os.environ["QUANTUM_SOURCE_API_URL"])
变量填写什么
QUANTUM_SOURCE_API_URL平台 API 根地址
QUANTUM_SOURCE_CLIENT_ID / QUANTUM_SOURCE_CLIENT_SECRET平台 SDK 的 ID 和密码
QUANTUM_SOURCE_SDK_KEY平台 SDK 密钥文件路径
QUANTUM_SOURCE_BACKEND设备 short_code
QUANTUM_SOURCE_ORGANIZATION_ID组织 ID

隐藏输入和已有环境配置任选一种。

创建客户端时选择 OPEN 或 FULL

客户端默认使用 OPEN。需要使用 FULL 余额时,创建 currency="FULL" 的客户端。下面沿用隐藏输入创建的 creds;若使用环境凭据,省略 creds=creds。

python
full_scheduler = SchedulerClient(
    creds=creds, base_url=os.environ["QUANTUM_SOURCE_API_URL"],
    currency="FULL",
)
full_scheduler.currency

使用 full_scheduler 准备后续任务即可选择 FULL。currency 是只读属性;切换钱包时,创建对应客户端并准备新报价。OPEN 和 FULL 各自使用对应钱包余额,执行通道均为 public + stand。

保存到系统密钥库

可选:安装 secure 扩展后,将上面的 creds 保存到系统密钥库,供下次连接使用。

python
from quantum_source_sdk.accounts import save_account, load_account

save_account(
    creds=creds, base_url=os.environ["QUANTUM_SOURCE_API_URL"],
    name="default",
)

下次使用时,读取保存的账号并创建 Core 客户端。

python
from quantum_source_sdk import SchedulerClient
from quantum_source_sdk.accounts import load_account

account = load_account(name="default")
scheduler = SchedulerClient(creds=account.creds, base_url=account.base_url)

下载本页 Jupyter Notebook

收录本页 Python 示例与说明,便于在 Jupyter Notebook 中学习和运行;安装命令保留为说明。

下载《连接与认证》Notebook(.ipynb)

输入关键词;所有搜索都在本机完成。