promptflow.azure 模块#

class promptflow.azure.PFClient(credential: Optional[TokenCredential] = None, subscription_id: Optional[str] = None, resource_group_name: Optional[str] = None, workspace_name: Optional[str] = None, **kwargs)#

基类:object

一个用于与 Promptflow 服务交互的客户端类。

使用此客户端管理 Promptflow 资源,例如运行。

参数:
  • credential (TokenCredential) – 用于身份验证的凭据,可选

  • subscription_id (Optional[str]) – Azure 订阅 ID,仅对注册表资产可选,可选

  • resource_group_name (Optional[str]) – Azure 资源组,仅对注册表资产可选,可选

  • workspace_name (Optional[str]) – 客户端中使用的工作区,仅对非工作区相关操作可选,可选。

  • kwargs (dict) – 包含额外配置参数的字典。

property flows#

返回可以管理流的流操作对象。

classmethod from_config(credential: TokenCredential, *, path: Optional[Union[str, PathLike]] = None, file_name=None, **kwargs) PFClient#

返回连接到 Azure 机器学习工作区的 PFClient 对象。

从文件读取工作区配置。如果找不到配置文件,则抛出异常。

此方法提供了一种简单的方法,可以在多个 Python 笔记本或项目之间重用同一个工作区。用户可以使用 [workspace.write_config](https://aka.ms/ml-workspace-class) 方法保存工作区 Azure 资源管理器 (ARM) 属性,并使用此方法在不同的 Python 笔记本或项目中加载同一个工作区,而无需重新输入工作区 ARM 属性。

参数:
  • credential (TokenCredential) – 工作区的凭据对象。

  • path (Union[os.PathLike, str]) – 配置文件或开始搜索的目录的路径。参数默认为从当前目录开始搜索。可选

  • file_name (str) – 允许在 path 是目录路径时覆盖要搜索的配置文件名。(默认值 = None)

get_details(run: Union[str, Run], max_results: int = 100, all_results: bool = False) DataFrame#

从运行中获取详细信息,包括输入和输出。

注意

如果 all_results 设置为 True,则 max_results 将被覆盖为 sys.maxsize。

参数:
  • run (Union[str, Run]) – 运行名称或运行对象

  • max_results (int) – 返回的最大运行次数,默认为 100

  • all_results (bool) – 是否返回所有结果,默认为 False

抛出:

RunOperationParameterError – 如果 max_results 不是正整数。

返回:

详细信息数据框。

返回类型:

pandas.DataFrame

get_metrics(run: Union[str, Run]) dict#

将运行指标打印到控制台。

参数:

run (Union[str, Run]) – 运行对象或运行名称。

返回:

运行的指标

返回类型:

dict

property ml_client#

返回一个与 Azure ML 服务交互的客户端。

run(flow: Optional[Union[str, PathLike]] = None, *, data: Optional[Union[str, PathLike]] = None, run: Optional[Union[str, Run]] = None, column_mapping: Optional[dict] = None, variant: Optional[str] = None, connections: Optional[dict] = None, environment_variables: Optional[dict] = None, name: Optional[str] = None, display_name: Optional[str] = None, tags: Optional[Dict[str, str]] = None, resume_from: Optional[Union[str, Run]] = None, code: Optional[Union[str, PathLike]] = None, init: Optional[dict] = None, **kwargs) Run#

根据提供的数据或运行执行流。

注意

必须提供数据或运行中的至少一个。

数据可以是本地文件或远程路径。- 示例:- data = “path/to/local/file” - data = “azureml:data_name:data_version” - data = “azureml://datastores/datastore_name/path/to/file” - data = “https://example.com/data.jsonl”

列映射是从流输入名称到指定值的映射。如果指定,流将使用为指定输入提供的值执行。该值可以来自

  • 数据
    • data.col1

  • 运行
    • run.inputs.col1:如果需要引用运行的输入

    • run.output.col1:如果需要引用运行的输出

  • 示例
    • {"ground_truth": "${data.answer}", "prediction": "${run.outputs.answer}"}

参数:
  • flow (Union[str, PathLike]) – 要运行评估的流目录的路径

  • data (Union[str, PathLike]) – 指向用于评估运行的测试数据(变体批量运行)的指针

  • run (Union[str, Run]) – 流运行 ID 或流运行,在当前运行和变体运行之间保持血缘关系,批量输出可以在 inputs_mapping 中作为 ${run.outputs.col_name} 引用

  • column_mapping (dict) – 定义数据流逻辑以映射输入数据。

  • variant (str) – 格式为 ${node_name.variant_name} 的节点和变体名称,如果未指定,将使用默认变体。

  • connections (dict) – 使用提供的值覆盖节点级连接。示例:{"node1": {"connection": "new_connection", "deployment_name": "gpt-35-turbo"}}

  • environment_variables (dict) – 通过指定属性路径和值来设置环境变量。示例:{"key1": "${my_connection.api_key}", "key2"="value2"} 连接键的引用值将解析为实际值,所有指定的环境变量都将设置到 os.environ 中。

  • name (str) – 运行名称。

  • display_name (str) – 运行的显示名称。

  • tags (Dict[str, str]) – 运行的标签。

  • resume_from (str) – 从现有运行创建运行。

  • code (Union[str, PathLike]) – 要运行的代码目录的路径。

  • init (dict) – flex flow 的初始化参数,仅在 flow 是可调用类时支持。

返回:

流运行信息。

返回类型:

运行

property runs#

返回可以管理运行的运行操作对象。

stream(run: Union[str, Run], raise_on_error: bool = True) Run#

将运行日志流式传输到控制台。

参数:
  • run (Union[str, Run]) – 运行对象或运行名称。

  • raise_on_error (bool) – 如果运行失败或取消,则抛出异常。

返回:

流运行信息。

visualize(runs: Union[List[str], List[Run]]) None#

可视化运行。

参数:

run (Union[str, Run]) – 运行对象或运行名称。

子包#