promptflow.client 模块#
- class promptflow.client.PFClient(**kwargs)#
基础类:
object
一个用于与提示流实体交互的客户端类。
- property connections: ConnectionOperations#
可以管理连接的连接操作。
- property flows: FlowOperations#
可以管理流的流操作。
- get_details(run: Union[str, 运行], max_results: int = 100, all_results: bool = False) DataFrame #
获取运行的详细信息,包括输入和输出。
注意
如果all_results设置为True,max_results将被覆盖为sys.maxsize。
- Parameters:
run (Union[str, Run]) – 运行名称或运行对象
max_results (int) – 返回的最大运行次数,默认为100
all_results (bool) – 是否返回所有结果,默认为 False
- Raises:
RunOperationParameterError – 如果 max_results 不是一个正整数。
- Returns:
详细数据框。
- Return type:
pandas.DataFrame
- get_metrics(run: Union[str, 运行]) Dict[str, Any] #
获取运行指标。
- Parameters:
run (Union[str, Run]) – 运行对象或运行的名称。
- Returns:
运行指标。
- Return type:
Dict[str, Any]
- run(flow: Optional[Union[str, PathLike, Callable]] = None, *, data: Optional[Union[str, PathLike]] = None, run: Optional[Union[str, 运行]] = 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, 运行]] = None, code: Optional[Union[str, PathLike]] = None, init: Optional[dict] = None, **kwargs) 运行 #
对提供的数据或运行执行流程。
注意
必须提供
data
或run
参数中的至少一个。列映射
列映射是从流程输入名称到指定值的映射。 如果指定,流程将使用提供的值执行指定的输入。 该值可以是:
- 来自数据:
data.col1
- 来自运行:
run.inputs.col1
: 如果需要引用运行的输入run.output.col1
: 如果需要引用运行的输出
- 示例:
{"ground_truth": "${data.answer}", "prediction": "${run.outputs.answer}"}
- Parameters:
flow (Union[str, PathLike]) – 运行评估的流程目录路径。
data (Union[str, PathLike]) – 指向用于评估运行的测试数据(变体批量运行)的指针。
run (Union[str, Run]) – 流程运行ID或流程运行。此参数有助于保持当前运行和变体运行之间的血缘关系。批处理输出可以在inputs_mapping中引用为
${run.outputs.col_name}
。column_mapping (Dict[str, str]) – 定义数据流逻辑以映射输入数据。
variant (str) – 节点和变体名称的格式为
${node_name.variant_name}
。 如果未指定,将使用默认变体。connections (Dict[str, Dict[str, str]]) – 使用提供的值覆盖节点级别的连接。 示例:
{"node1": {"connection": "new_connection", "deployment_name": "gpt-35-turbo"}}
environment_variables (Dict[str, str]) – 通过指定属性路径和值来设置的环境变量。 示例:
{"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为可调用类时支持。
- Returns:
流程运行信息。
- Return type:
- stream(run: Union[str, 运行], raise_on_error: bool = True) 运行 #
将流运行日志输出到控制台。
- Parameters:
run (Union[str, Run]) – 运行对象或运行的名称。
raise_on_error (bool) – 如果运行失败或取消,则引发异常。
- Returns:
流程运行信息。
- Return type:
运行
- test(flow: Union[str, PathLike], *, inputs: Optional[Union[dict, PathLike]] = None, variant: Optional[str] = None, node: Optional[str] = None, environment_variables: Optional[dict] = None, init: Optional[dict] = None) dict #
测试流程或节点。
- Parameters:
flow (Union[str, PathLike]) – 要测试的流程目录的路径
inputs (Union[dict, PathLike]) – 用于流程测试的输入数据或json文件
variant (str) – 节点和变体名称的格式为${node_name.variant_name},如果未指定,将使用默认变体。
node (str) – 如果指定了,它将只测试这个节点,否则它将测试整个流程。
environment_variables (dict) – 通过指定属性路径和值来设置的环境变量。 示例:{“key1”: “${my_connection.api_key}”, “key2”=”value2”} 对连接键的值的引用将被解析为实际值, 并且所有指定的环境变量将被设置到os.environ中。
init (dict) – 用于初始化flex flow的参数,仅在flow为可调用类时支持。
- Returns:
流程或节点的结果
- Return type:
字典
- property tools: ToolOperations#
可以管理工具的工具操作。
- property traces: TraceOperations#
可以对跟踪进行管理的操作。
- promptflow.client.load_flow(source: Union[str, PathLike, IO], **kwargs) Flow #
从YAML文件加载流程。
- Parameters:
source (Union[PathLike, str]) – 流的本地 yaml 源。必须是一个本地文件的路径。 如果源是一个路径,它将被打开并读取。 如果文件不存在,将引发异常。
- Returns:
一个Flow对象
- Return type:
流程
- promptflow.client.load_run(source: Union[str, PathLike, IO], params_override: Optional[list] = None, **kwargs) 运行 #
从YAML文件加载运行。
- Parameters:
source (Union[PathLike, str]) – 运行的本地yaml源。必须是本地文件的路径。 如果源是路径,它将被打开并读取。 如果文件不存在,将引发异常。
params_override (List[Dict]) – 用于覆盖yaml文件中的字段。 格式为 [{“field1”: “value1”}, {“field2”: “value2”}]
- Returns:
一个运行对象
- Return type: