Workspace 类
表示 Azure Quantum 工作区。
创建 Workspace 对象时,调用方有两个选项用于标识 Azure Quantum 工作区 (的优先级) :
- 指定有效的位置和资源 ID;或
- 指定有效的位置、订阅 ID、资源组和工作区名称。
还可以使用 连接字符串通过调用 from_connection_string来指定 Azure Quantum 工作区的连接参数。
如果 Azure Quantum 工作区没有链接存储,调用方还必须传递有效的 Azure 存储帐户连接字符串。
- 继承
-
builtins.objectWorkspace
构造函数
Workspace(subscription_id: str | None = None, resource_group: str | None = None, name: str | None = None, storage: str | None = None, resource_id: str | None = None, location: str | None = None, credential: object | None = None, user_agent: str | None = None, **kwargs: Any)
参数
名称 | 说明 |
---|---|
subscription_id
|
Azure 订阅 ID。 如果指定了resource_id,则忽略。 默认值: None
|
resource_group
|
Azure 资源组名称。 如果指定了resource_id,则忽略。 默认值: None
|
name
|
Azure Quantum 工作区名称。 如果指定了resource_id,则忽略。 默认值: None
|
storage
|
Azure 存储帐户连接字符串。 仅当指定的 Azure Quantum 工作区没有链接存储时,才是必需的。 默认值: None
|
resource_id
|
Azure Quantum 工作区的资源 ID。 默认值: None
|
location
|
预配 Azure Quantum 工作区的 Azure 区域。 这可以指定为区域名称(例如“美国东部”)或位置名称(如“eastus”。 默认值: None
|
credential
|
用于连接到 Azure 服务的凭据。 通常是 Azure.Identity 中的凭据类型之一。 默认为“DefaultAzureCredential”,这将尝试多种形式的身份验证。 默认值: None
|
user_agent
|
在与 Azure Quantum 服务通信时,将指定值作为前缀添加到 HTTP User-Agent 标头。 默认值: None
|
方法
append_user_agent |
将新值追加到工作区的 UserAgent。 这些值是使用短划线追加的。 |
cancel_job |
请求工作区取消作业的执行。 |
close_session |
如果会话不处于终端状态,则关闭给定工作区中的会话。 否则,只需刷新会话详细信息。 |
from_connection_string |
从连接字符串创建新的 Azure Quantum 工作区客户端。 |
get_container_uri |
根据作业 ID 或容器名称获取容器 URI。 创建新的容器(如果尚不存在)。 |
get_job |
返回与给定 ID 对应的作业。 |
get_quotas |
获取给定工作区的配额列表。 每个配额都表示为字典,其中包含该配额的属性。 常见的配额属性包括:
|
get_session |
从工作区获取会话。 |
get_targets |
返回按目标名称和提供程序 ID 筛选的此工作区的所有可用目标。 如果传递了目标名称,则将返回单个 Target 对象。 否则,它将返回 Target 对象的可迭代/列表,可以选择按提供程序 ID 进行筛选。 |
list_jobs |
返回满足可选 (有限) 筛选条件的作业列表。 |
list_session_jobs |
获取与会话关联的所有作业。 |
list_sessions |
获取给定工作区中的会话列表。 |
list_top_level_items |
获取给定工作区的顶级项列表,这些项可以是不与会话) 关联的独立作业 (作业,也可以是包含作业) 的会话 (。 |
open_session |
在给定工作区中打开/创建会话。 |
refresh_session |
使用工作区中的最新信息汇报会话详细信息。 |
submit_job |
提交要在工作区中处理的作业。 |
append_user_agent
将新值追加到工作区的 UserAgent。 这些值是使用短划线追加的。
append_user_agent(value: str) -> None
参数
名称 | 说明 |
---|---|
value
必需
|
要添加的 UserAgent 值,例如“azure-quantum-” |
cancel_job
请求工作区取消作业的执行。
cancel_job(job: Job) -> Job
参数
名称 | 说明 |
---|---|
job
必需
|
要取消的作业。 |
返回
类型 | 说明 |
---|---|
请求取消且状态已更新的 Azure Quantum 作业。 |
close_session
如果会话不处于终端状态,则关闭给定工作区中的会话。 否则,只需刷新会话详细信息。
close_session(session: Session) -> None
参数
名称 | 说明 |
---|---|
session
必需
|
要关闭的会话。 |
from_connection_string
从连接字符串创建新的 Azure Quantum 工作区客户端。
from_connection_string(connection_string: str, **kwargs) -> Workspace
参数
名称 | 说明 |
---|---|
connection_string
必需
|
有效的连接字符串,通常从 Azure 门户中的“Quantum 工作区 -> 操作 -> 访问密钥”边栏选项卡获取。 |
返回
类型 | 说明 |
---|---|
新的 Azure Quantum 工作区客户端。 |
get_container_uri
根据作业 ID 或容器名称获取容器 URI。 创建新的容器(如果尚不存在)。
get_container_uri(job_id: str | None = None, container_name: str | None = None, container_name_format: str | None = 'job-{job_id}') -> str
参数
名称 | 说明 |
---|---|
job_id
|
作业 ID,默认为 “无”。 默认值: None
|
container_name
|
容器名称,默认为 “无”。 默认值: None
|
container_name_format
|
容器名称格式,默认为“job-{job_id}”。 默认值: job-{job_id}
|
返回
类型 | 说明 |
---|---|
容器 URI。 |
get_job
返回与给定 ID 对应的作业。
get_job(job_id: str) -> Job
参数
名称 | 说明 |
---|---|
job_id
必需
|
要提取的作业的 ID。 |
返回
类型 | 说明 |
---|---|
Azure Quantum 作业。 |
get_quotas
获取给定工作区的配额列表。 每个配额都表示为字典,其中包含该配额的属性。
常见的配额属性包括:
- “dimension”:应用配额的维度。
- “scope”:应用配额的范围。
- “provider_id”:应用配额的提供程序。
- “利用率”:配额的当前利用率。
- “limit”:配额的限制。
- “period”:应用配额的时间段。
get_quotas() -> List[Dict[str, Any]]
返回
类型 | 说明 |
---|---|
工作区配额。 |
get_session
从工作区获取会话。
get_session(session_id: str) -> Session
参数
名称 | 说明 |
---|---|
session_id
必需
|
要检索的会话的 ID。 |
返回
类型 | 说明 |
---|---|
Azure Quantum 会话 |
get_targets
返回按目标名称和提供程序 ID 筛选的此工作区的所有可用目标。 如果传递了目标名称,则将返回单个 Target 对象。 否则,它将返回 Target 对象的可迭代/列表,可以选择按提供程序 ID 进行筛选。
get_targets(name: str | None = None, provider_id: str | None = None) -> Target | Iterable[Target]
参数
名称 | 说明 |
---|---|
name
|
要筛选依据的可选目标名称,默认为 “无”。 默认值: None
|
provider_id
|
要筛选依据的可选提供程序 ID,默认为 “无”。 默认值: None
|
返回
类型 | 说明 |
---|---|
单个 Azure Quantum 目标或可迭代/目标列表。 |
list_jobs
返回满足可选 (有限) 筛选条件的作业列表。
list_jobs(name_match: str | None = None, status: JobStatus | None = None, created_after: datetime | None = None) -> List[Job]
参数
名称 | 说明 |
---|---|
name_match
|
作业名称匹配的可选正则表达式。 默认为 “无”。 默认值: None
|
status
|
按作业状态筛选的可选。 默认为 “无”。 默认值: None
|
created_after
|
按给定时间后创建的作业进行筛选(可选)。 默认为 “无”。 默认值: None
|
返回
类型 | 说明 |
---|---|
与搜索条件匹配的作业。 |
list_session_jobs
获取与会话关联的所有作业。
list_session_jobs(session_id: str) -> List[Job]
参数
名称 | 说明 |
---|---|
session_id
必需
|
会话的 ID。 |
返回
类型 | 说明 |
---|---|
与会话关联的所有作业的列表。 |
list_sessions
list_top_level_items
获取给定工作区的顶级项列表,这些项可以是不与会话) 关联的独立作业 (作业,也可以是包含作业) 的会话 (。
list_top_level_items() -> List[Job | Session]
返回
类型 | 说明 |
---|---|
工作区顶级作业或会话的列表。 |
open_session
在给定工作区中打开/创建会话。
open_session(session: Session) -> None
参数
名称 | 说明 |
---|---|
session
必需
|
要打开/创建的会话。 |
返回
类型 | 说明 |
---|---|
新打开的 Azure Quantum 会话。 |
refresh_session
使用工作区中的最新信息汇报会话详细信息。
refresh_session(session: Session) -> None
参数
名称 | 说明 |
---|---|
session
必需
|
要刷新的会话。 |
submit_job
提交要在工作区中处理的作业。
submit_job(job: Job) -> Job
参数
名称 | 说明 |
---|---|
job
必需
|
要提交的作业。 |
返回
类型 | 说明 |
---|---|
已提交的 Azure Quantum 作业,状态已更新。 |