设置提示流配置#

实验性功能

这是一个实验性功能,可能会随时更改。了解更多更多

Promptflow 支持设置全局配置,以避免每次命令都传递相同的参数。全局配置存储在一个 yaml 文件中,默认位于 ~/.promptflow/pf.yaml

此外,promptflow 支持将配置设置到指定路径,这些配置只有在工作目录为指定路径或其子目录时才会对 Promptflow 程序生效。 配置存储在一个 yaml 文件中,该文件位于 /pf.yaml

配置文件在promptflow扩展和sdk/cli之间共享。Promptflow扩展通过UI控制每个配置,因此以下部分将展示如何使用promptflow cli设置全局配置。

设置配置#

设置全局配置

pf config set <config_name>=<config_value>

例如:

pf config set connection.provider="azureml://subscriptions/<your-subscription>/resourceGroups/<your-resourcegroup>/providers/Microsoft.MachineLearningServices/workspaces/<your-workspace>"

为特定路径设置配置

pf config set <config_name>=<config_value> --path <config_folder>

例如:

pf config set connection.provider="azureml://subscriptions/<your-subscription>/resourceGroups/<your-resourcegroup>/providers/Microsoft.MachineLearningServices/workspaces/<your-workspace>" --path .

显示配置#

以下命令将获取所有配置并以json格式显示:

pf config show

运行上述配置设置命令后,显示命令将返回以下结果:

{
  "connection": {
    "provider": "azureml://subscriptions/<your-subscription>/resourceGroups/<your-resourcegroup>/providers/Microsoft.MachineLearningServices/workspaces/<your-workspace>"
  }
}

支持的配置#

connection.provider#

连接提供者,默认为“local”。有3种可能的提供者值。

本地#

将连接提供者设置为本地,使用 connection.provider=local

连接将保存在本地。PFClient(或pf connection命令)将管理本地连接。因此,流程将使用这些本地连接执行。

完整的 Azure 机器学习工作区资源 ID#

将连接提供者设置为特定工作区:

connection.provider=azureml://subscriptions/<your-subscription>/resourceGroups/<your-resourcegroup>/providers/Microsoft.MachineLearningServices/workspaces/<your-workspace>

getlist连接时,PFClient(或pf connection命令)将返回工作区连接,并且流将使用这些工作区连接执行。 工作区连接的秘密不会通过这些命令显示,这意味着您可能会看到自定义连接的空字典{}

注意

工作区连接不支持命令 createupdatedelete,请在 Azure AI Studio、az ml cli 或 azure-ai-ml sdk 中的工作区门户中管理它。

azureml#

除了完整的资源ID外,您还可以将连接提供者指定为“azureml”,使用connection.provider=azureml。在这种情况下, promptflow将尝试通过从当前目录搜索.azureml/config.json来检索工作区配置,然后逐步从其父文件夹中搜索。因此,可以通过将配置文件放置在项目文件夹中为不同的流程设置工作区配置。

配置文件的预期格式如下:

{
  "workspace_name": "<your-workspace-name>",
  "resource_group": "<your-resource-group>",
  "subscription_id": "<your-subscription-id>"
}

service.host#

promptflow服务主机,默认为“127.0.0.1”。您可以使用service.host=来设置服务主机。

例如:

pf config set service.host="0.0.0.0"

💡 提示 除了CLI命令行设置方法外,我们还支持通过VS Code扩展UI设置此连接提供程序。点击这里了解更多