跳转至

命令行客户端

说明

  • 介绍如何安装使用FATE Flow Client,其通常包含在FATE Client中,FATE Client包含了FATE项目多个客户端:Pipeline, FATE Flow ClientFATE Test
  • 介绍FATE Flow Client提供的命令行,所有的命令将有一个共有调用入口,您可以在命令行中键入flow以获取所有的命令分类及其子命令。
    [IN]
    flow

    [OUT]
    Usage: flow COMMAND [OPTIONS]

      Fate Flow Client

    Options:
      -h, --help  Show this message and exit.

    Commands:
      component   Component Operations
      data        Data Operations
      init        Flow CLI Init Command
      job         Job Operations
      model       Model Operations
      queue       Queue Operations
      table       Table Operations
      task        Task Operations

更多信息,请查阅如下文档或使用flow --help命令。

  • 介绍所有命令使用说明

安装FATE Client

在线安装

FATE Client会发布到pypi,可直接使用pip等工具安装对应版本,如

pip install fate-client

或者

pip install fate-client==${version}

在FATE集群上安装

请在装有1.5.1及其以上版本fate的机器中进行安装:

安装命令:

cd $FATE_PROJECT_BASE/
# 进入FATE PYTHON的虚拟环境
source bin/init_env.sh
# 执行安装
cd fate/python/fate_client && python setup.py install

安装完成之后,在命令行键入flow 并回车,获得如下返回即视为安装成功:

Usage: flow [OPTIONS] COMMAND [ARGS]...

  Fate Flow Client

Options:
  -h, --help  Show this message and exit.

Commands:
  component  Component Operations
  data       Data Operations
  init       Flow CLI Init Command
  job        Job Operations
  model      Model Operations
  queue      Queue Operations
  table      Table Operations
  tag        Tag Operations
  task       Task Operations

初始化

在使用fate-client之前需要对其进行初始化,推荐使用fate的配置文件进行初始化,初始化命令如下:

指定fateflow服务地址

# 指定fateflow的IP地址和端口进行初始化
flow init --ip 192.168.0.1 --port 9380

通过FATE集群上的配置文件

# 进入FATE的安装路径,例如/data/projects/fate
cd $FATE_PROJECT_BASE/
flow init -c conf/service_conf.yaml

获得如下返回视为初始化成功:

{
    "retcode": 0,
    "retmsg": "Fate Flow CLI has been initialized successfully."
}

验证

主要验证客户端是否能连接上FATE Flow Server,如尝试查询当前的作业情况

flow job query

一般返回中的retcode0即可

{
    "data": [],
    "retcode": 0,
    "retmsg": "no job could be found"
}

如返回类似如下,则表明连接不上,请检查网络情况

{
    "retcode": 100,
    "retmsg": "Connection refused. Please check if the fate flow service is started"
}

Data

upload

用于上传建模任务的输入数据到fate所支持的存储系统

flow data upload -c ${conf_path}

注: conf_path为参数路径,具体参数如下

选项

参数名 必选 类型 说明
file string 数据存储路径
id_delimiter string 数据分隔符,如","
head int 数据是否有表头
partition int 数据分区数
storage_engine string 存储引擎类型,默认"EGGROLL",还支持"HDFS","LOCALFS", "HIVE"等
namespace string 表命名空间
table_name string 表名
storage_address object 需要填写对应存储引擎的存储地址
use_local_data int 默认1,代表使用client机器的数据;0代表使用fate flow服务所在机器的数据
drop int 是否覆盖上传
extend_sid bool 是否新增一列uuid id,默认False
auto_increasing_sid bool 新增的id列是否自增(extend_sid为True才会生效), 默认False
with_meta bool 是否携带meta数据, 默认False
meta object 元数据, 默认为空,with_meta为true生效

mete信息

参数名 必选 类型 说明
input_format string 数据格式(danse、svmlight、tag:value),用来判断
delimiter string 数据分隔符,默认","
tag_with_value bool 对tag的数据格式生效,是否携带value
tag_value_delimiter string tag:value数据分隔符,默认":"
with_match_id bool 是否携带match id
id_list object id列名称,开启extend_sid下生效,如:["imei", "phone"]
id_range object 对于tag/svmlight格式数据,哪几列为id
exclusive_data_type string 特殊类型数据列格式
data_type string 列数据类型,默认"float64
with_label bool 是否有标签,默认False
label_name string 标签名,默认"y"
label_type string 标签类型, 默认"int"

注意:在1.9.0及之后的版本中,若传入meta参数,会生成特征的匿名信息。

样例

  • eggroll
{
    "file": "examples/data/breast_hetero_guest.csv",
    "id_delimiter": ",",
    "head": 1,
    "partition": 10,
    "namespace": "experiment",
    "table_name": "breast_hetero_guest",
    "storage_engine": "EGGROLL"
}
  • hdfs
{
    "file": "examples/data/breast_hetero_guest.csv",
    "id_delimiter": ",",
    "head": 1,
    "partition": 10,
    "namespace": "experiment",
    "table_name": "breast_hetero_guest",
    "storage_engine": "HDFS"
}
  • localfs
{
    "file": "examples/data/breast_hetero_guest.csv",
    "id_delimiter": ",",
    "head": 1,
    "partition": 4,
    "namespace": "experiment",
    "table_name": "breast_hetero_guest",
    "storage_engine": "LOCALFS"
}

返回

参数名 类型 说明
jobId string 任务id
retcode int 返回码
retmsg string 返回信息
data object 返回数据

样例

{
    "data": {
        "board_url": "http://xxx.xxx.xxx.xxx:8080/index.html#/dashboard?job_id=202111081218319075660&role=local&party_id=0",
        "code": 0,
        "dsl_path": "/data/projects/fate/jobs/202111081218319075660/job_dsl.json",
        "job_id": "202111081218319075660",
        "logs_directory": "/data/projects/fate/logs/202111081218319075660",
        "message": "success",
        "model_info": {
            "model_id": "local-0#model",
            "model_version": "202111081218319075660"
        },
        "namespace": "experiment",
        "pipeline_dsl_path": "/data/projects/fate/jobs/202111081218319075660/pipeline_dsl.json",
        "runtime_conf_on_party_path": "/data/projects/fate/jobs/202111081218319075660/local/0/job_runtime_on_party_conf.json",
        "runtime_conf_path": "/data/projects/fate/jobs/202111081218319075660/job_runtime_conf.json",
        "table_name": "breast_hetero_host",
        "train_runtime_conf_path": "/data/projects/fate/jobs/202111081218319075660/train_runtime_conf.json"
    },
    "jobId": "202111081218319075660",
    "retcode": 0,
    "retmsg": "success"
}

upload-history

用于查询上传历史

flow data upload-history -l 20
flow data upload-history --job-id $JOB_ID

选项

参数名 必选 类型 说明
-l --limit no int 返回数量 (默认: 10)
-j --job_id no string 任务ID

download

简要描述:

用于下载fate存储引擎内的数据到文件格式数据

flow data download -c ${conf_path}

注: conf_path为参数路径,具体参数如下

选项

参数名 必选 类型 说明
output_path string 下载路径
table_name string fate表名
namespace int fate表命名空间

样例:

{
  "output_path": "/data/projects/fate/breast_hetero_guest.csv",
  "namespace": "experiment",
  "table_name": "breast_hetero_guest"
}

返回

参数名 类型 说明
jobId string 任务id
retcode int 返回码
retmsg string 返回信息
data object 返回数据

样例

{
    "data": {
        "board_url": "http://xxx.xxx.xxx.xxx:8080/index.html#/dashboard?job_id=202111081457135282090&role=local&party_id=0",
        "code": 0,
        "dsl_path": "/data/projects/fate/jobs/202111081457135282090/job_dsl.json",
        "job_id": "202111081457135282090",
        "logs_directory": "/data/projects/fate/logs/202111081457135282090",
        "message": "success",
        "model_info": {
            "model_id": "local-0#model",
            "model_version": "202111081457135282090"
        },
        "pipeline_dsl_path": "/data/projects/fate/jobs/202111081457135282090/pipeline_dsl.json",
        "runtime_conf_on_party_path": "/data/projects/fate/jobs/202111081457135282090/local/0/job_runtime_on_party_conf.json",
        "runtime_conf_path": "/data/projects/fate/jobs/202111081457135282090/job_runtime_conf.json",
        "train_runtime_conf_path": "/data/projects/fate/jobs/202111081457135282090/train_runtime_conf.json"
    },
    "jobId": "202111081457135282090",
    "retcode": 0,
    "retmsg": "success"
}

writer

简要描述:

用于下载fate存储引擎内的数据到外部引擎或者将数据另存为新表

flow data writer -c ${conf_path}

注: conf_path为参数路径,具体参数如下

选项

参数名 必选 类型 说明
table_name string fate表名
namespace int fate表命名空间
storage_engine string 存储类型,如:MYSQL
address object 存储地址
output_namespace string 另存为fate的表命名空间
output_name string 另存为fate的表名
**注: storage_engine、address是组合参数,提供存储到指定引擎的功能;
output_namespace、output_name也是组合参数,提供另存为同种引擎的新表功能**

样例:

{
  "table_name": "name1",
  "namespace": "namespace1",
  "output_name": "name2",
  "output_namespace": "namespace2"
}

返回

参数名 类型 说明
jobId string 任务id
retcode int 返回码
retmsg string 返回信息
data object 返回数据

样例

{
    "data": {
        "board_url": "http://xxx.xxx.xxx.xxx:8080/index.html#/dashboard?job_id=202201121235115028490&role=local&party_id=0",
        "code": 0,
        "dsl_path": "/data/projects/fate/fateflow/jobs/202201121235115028490/job_dsl.json",
        "job_id": "202201121235115028490",
        "logs_directory": "/data/projects/fate/fateflow/logs/202201121235115028490",
        "message": "success",
        "model_info": {
            "model_id": "local-0#model",
            "model_version": "202201121235115028490"
        },
        "pipeline_dsl_path": "/data/projects/fate/fateflow/jobs/202201121235115028490/pipeline_dsl.json",
        "runtime_conf_on_party_path": "/data/projects/fate/fateflow/jobs/202201121235115028490/local/0/job_runtime_on_party_conf.json",
        "runtime_conf_path": "/data/projects/fate/fateflow/jobs/202201121235115028490/job_runtime_conf.json",
        "train_runtime_conf_path": "/data/projects/fate/fateflow/jobs/202201121235115028490/train_runtime_conf.json"
    },
    "jobId": "202201121235115028490",
    "retcode": 0,
    "retmsg": "success"
}

Table

info

用于查询fate表的相关信息(真实存储地址,数量,schema等)

flow table info [options]

选项

参数 短格式 长格式 必选 类型 说明
table_name -t --table-name string fate表名
namespace -n --namespace string fate表命名空间

返回

参数名 类型 说明
retcode int 返回码
retmsg string 返回信息
data object 返回数据

样例

{
    "data": {
        "address": {
            "home": null,
            "name": "breast_hetero_guest",
            "namespace": "experiment"
        },
        "count": 569,
        "exist": 1,
        "namespace": "experiment",
        "partition": 4,
        "schema": {
            "header": "y,x0,x1,x2,x3,x4,x5,x6,x7,x8,x9",
            "sid": "id"
        },
        "table_name": "breast_hetero_guest"
    },
    "retcode": 0,
    "retmsg": "success"
}

delete

可通过table delete删除表数据

flow table delete [options]

选项

参数 短格式 长格式 必选 类型 说明
table_name -t --table-name string fate表名
namespace -n --namespace string fate表命名空间

返回

参数名 类型 说明
retcode int 返回码
retmsg string 返回信息
data object 返回数据

样例

{
    "data": {
        "namespace": "xxx",
        "table_name": "xxx"
    },
    "retcode": 0,
    "retmsg": "success"
}

bind

可通过table bind将真实存储地址映射到fate存储表

flow table bind [options]

选项

参数 短格式 长格式 必选 类型 说明
conf_path -c --conf-path string 配置路径

注: conf_path为参数路径,具体参数如下

参数名 必选 类型 说明
name string fate表名
namespace string fate表命名空间
engine string 存储引擎, 支持"HDFS", "MYSQL", "PATH"
adress object 真实存储地址
drop int 覆盖以前的信息
head int 是否有数据表头
id_delimiter string 数据分隔符
id_column string id字段
feature_column array 特征字段

mete信息

参数名 必选 类型 说明
input_format string 数据格式(danse、svmlight、tag:value),用来判断
delimiter string 数据分隔符,默认","
tag_with_value bool 对tag的数据格式生效,是否携带value
tag_value_delimiter string tag:value数据分隔符,默认":"
with_match_id bool 是否携带match id
id_list object id列名称,开启extend_sid下生效,如:["imei", "phone"]
id_range object 对于tag/svmlight格式数据,哪几列为id
exclusive_data_type string 特殊类型数据列格式
data_type string 列数据类型,默认"float64
with_label bool 是否有标签,默认False
label_name string 标签名,默认"y"
label_type string 标签类型, 默认"int"

注:在1.9.0及之后的版本中,若在table bind阶段传入meta参数,并不会直接生成特征的匿名信息。 当数据经过了一次reader组件后会更新原始数据的特征匿名信息

样例

  • hdfs
{
    "namespace": "experiment",
    "name": "breast_hetero_guest",
    "engine": "HDFS",
    "address": {
        "name_node": "hdfs://fate-cluster",
        "path": "/data/breast_hetero_guest.csv"
    },
    "id_delimiter": ",",
    "head": 1,
    "partitions": 10
}
  • mysql
{
  "engine": "MYSQL",
  "address": {
    "user": "fate",
    "passwd": "fate",
    "host": "127.0.0.1",
    "port": 3306,
    "db": "experiment",
    "name": "breast_hetero_guest"
  },
  "namespace": "experiment",
  "name": "breast_hetero_guest",
  "head": 1,
  "id_delimiter": ",",
  "partitions": 10,
  "id_column": "id",
  "feature_column": "y,x0,x1,x2,x3,x4,x5,x6,x7,x8,x9"
}
  • PATH

{
    "namespace": "xxx",
    "name": "xxx",
    "engine": "PATH",
    "address": {
        "path": "xxx"
    }
}
返回

参数名 类型 说明
retcode int 返回码
retmsg string 返回信息
data object 返回数据

样例

{
    "data": {
        "namespace": "xxx",
        "table_name": "xxx"
    },
    "retcode": 0,
    "retmsg": "success"
}

disable

可通过table disable将表置为不可用状态

flow table disable [options]

选项

参数 短格式 长格式 必选 类型 说明
table_name -t --table-name string fate表名
namespace -n --namespace string fate表命名空间

返回

参数名 类型 说明
retcode int 返回码
retmsg string 返回信息
data object 返回数据

样例

{
    "data": {
        "namespace": "xxx",
        "table_name": "xxx"
    },
    "retcode": 0,
    "retmsg": "success"
}

enable

可通过table enable将表置为可用状态

flow table enable [options]

选项

参数 短格式 长格式 必选 类型 说明
table_name -t --table-name string fate表名
namespace -n --namespace string fate表命名空间

返回

参数名 类型 说明
retcode int 返回码
retmsg string 返回信息
data object 返回数据

样例

{
    "data": [{
        "namespace": "xxx",
        "table_name": "xxx"
    }],
    "retcode": 0,
    "retmsg": "success"
}

disable-delete

可通过disable-delete删除当前不可用的表

flow table disable-delete 

返回

参数名 类型 说明
retcode int 返回码
retmsg string 返回信息
data object 返回数据

样例

{
  "data": [
    {
      "namespace": "xxx",
      "table_name": "xxx"
    },
    {
      "namespace": "xxx",
      "table_name": "xxx"
    }
  ],
  "retcode": 0,
  "retmsg": "success"
}

Job

submit

通过两个配置文件:job dsl和job conf构建一个联邦学习作业,提交到调度系统执行

flow job submit [options]

选项

参数名 必选 类型 说明
-d, --dsl-path string job dsl的路径
-c, --conf-path string job conf的路径

返回

参数名 类型 说明
retcode int 返回码
retmsg string 返回信息
jobId string 作业ID
data dict 返回数据
data.dsl_path string 依据提交的dsl内容,由系统生成的实际运行dsl配置的存放路径
data.runtime_conf_on_party_path string 依据提交的conf内容,由系统生成的在每个party实际运行conf配置的存放路径
data.board_url string fateboard查看地址
data.model_info dict 模型标识信息

样例

{
    "data": {
        "board_url": "http://127.0.0.1:8080/index.html#/dashboard?job_id=202111061608424372620&role=guest&party_id=9999",
        "code": 0,
        "dsl_path": "$FATE_PROJECT_BASE/jobs/202111061608424372620/job_dsl.json",
        "job_id": "202111061608424372620",
        "logs_directory": "$FATE_PROJECT_BASE/logs/202111061608424372620",
        "message": "success",
        "model_info": {
            "model_id": "arbiter-10000#guest-9999#host-10000#model",
            "model_version": "202111061608424372620"
        },
        "pipeline_dsl_path": "$FATE_PROJECT_BASE/jobs/202111061608424372620/pipeline_dsl.json",
        "runtime_conf_on_party_path": "$FATE_FATE_PROJECT_BASE/jobs/202111061608424372620/guest/9999/job_runtime_on_party_conf.json",
        "runtime_conf_path": "$FATE_PROJECT_BASE/jobs/202111061608424372620/job_runtime_conf.json",
        "train_runtime_conf_path": "$FATE_PROJECT_BASE/jobs/202111061608424372620/train_runtime_conf.json"
    },
    "jobId": "202111061608424372620",
    "retcode": 0,
    "retmsg": "success"
}

rerun

重新运行某个作业

flow job rerun [options]

选项

参数名 必选 类型 说明
-j, --job-id string job id 路径
-cpn, --component-name string 指定从哪个组件重跑,没被指定的组件若与指定组件没有上游依赖关系则不会执行;若不指定该参数则整个作业重跑
--force bool 作业即使成功也重跑;若不指定该参数,作业如果成功,则跳过重跑

返回

参数名 类型 说明
retcode int 返回码
retmsg string 返回信息
jobId string 作业ID
data dict 返回数据

样例

flow job rerun -j 202111031100369723120
flow job rerun -j 202111031100369723120 -cpn hetero_lr_0
flow job rerun -j 202111031100369723120 -cpn hetero_lr_0 --force 

parameter-update

更新作业参数

flow job parameter-update [options]

选项

参数名 必选 类型 说明
-j, --job-id string job id 路径
-c, --conf-path string 需要更新的job conf的内容,不需要更新的参数不需要填写

返回

参数名 类型 说明
retcode int 返回码
retmsg string 返回信息
jobId string 作业ID
data dict 返回更新后的job conf

样例

假设更新job中hetero_lr_0这个组件的部分执行参数,配置文件如下:

{
  "job_parameters": {
  },
  "component_parameters": {
    "common": {
      "hetero_lr_0": {
        "alpha": 0.02,
        "max_iter": 5
      }
    }
  }
}

执行如下命令生效:

flow job parameter-update -j 202111061957421943730 -c examples/other/update_parameters.json

执行如下命令重跑:

flow job rerun -j 202111061957421943730 -cpn hetero_lr_0 --force 

stop

取消或终止指定任务

选项

编号 参数 短格式 长格式 必要参数 参数介绍
1 job_id -j --job_id Job ID

样例

flow job stop -j $JOB_ID

query

检索任务信息。 选项

编号 参数 短格式 长格式 必要参数 参数介绍
1 job_id -j --job_id Job ID
2 role -r --role 角色
3 party_id -p --party_id Party ID
4 status -s --status 任务状态

样例

flow job query -r guest -p 9999 -s complete
flow job query -j $JOB_ID

view

检索任务数据视图。 选项

编号 参数 短格式 长格式 必要参数 参数介绍
1 job_id -j --job_id Job ID
2 role -r --role 角色
3 party_id -p --party_id Party ID
4 status -s --status 任务状态

样例

flow job view -j $JOB_ID -s complete

config

下载指定任务的配置文件到指定目录。 选项

编号 参数 短格式 长格式 必要参数 参数介绍
1 job_id -j --job_id Job ID
2 role -r --role 角色
3 party_id -p --party_id Party ID
4 output_path -o --output-path 输出目录

样例

flow job config -j $JOB_ID -r host -p 10000 --output-path ./examples/

log

下载指定任务的日志文件到指定目录。 选项

编号 参数 短格式 长格式 必要参数 参数介绍
1 job_id -j --job_id Job ID
2 output_path -o --output-path 输出目录

样例

flow job log -j JOB_ID --output-path ./examples/

list

展示任务列表。 选项

编号 参数 短格式 长格式 必要参数 参数介绍
1 limit -l --limit 返回数量限制(默认:10)

样例

flow job list
flow job list -l 30

dsl

预测DSL文件生成器。 选项

编号 参数 短格式 长格式 必要参数 参数介绍
1 cpn_list --cpn-list 用户指定组件名列表
2 cpn_path --cpn-path 用户指定带有组件名列表的文件路径
3 train_dsl_path --train-dsl-path 训练dsl文件路径
4 output_path -o --output-path 输出目录路径

样例

flow job dsl --cpn-path fate_flow/examples/component_list.txt --train-dsl-path fate_flow/examples/test_hetero_lr_job_dsl.json

flow job dsl --cpn-path fate_flow/examples/component_list.txt --train-dsl-path fate_flow/examples/test_hetero_lr_job_dsl.json -o fate_flow/examples/

flow job dsl --cpn-list "dataio_0, hetero_feature_binning_0, hetero_feature_selection_0, evaluation_0" --train-dsl-path fate_flow/examples/test_hetero_lr_job_dsl.json -o fate_flow/examples/

flow job dsl --cpn-list [dataio_0,hetero_feature_binning_0,hetero_feature_selection_0,evaluation_0] --train-dsl-path fate_flow/examples/test_hetero_lr_job_dsl.json -o fate_flow/examples/

Task

query

检索Task信息

选项

编号 参数 短格式 长格式 必要参数 参数介绍
1 job_id -j --job_id Job ID
2 role -r --role 角色
3 party_id -p --party_id Party ID
4 component_name -cpn --component_name 组件名
5 status -s --status 任务状态

样例

flow task query -j $JOB_ID -p 9999 -r guest
flow task query -cpn hetero_feature_binning_0 -s complete

list

展示Task列表。 选项

编号 参数 短格式 长格式 必要参数 参数介绍
1 limit -l --limit 返回结果数量限制(默认:10)

样例

flow task list
flow task list -l 25

Tracking

metrics

获取某个组件任务产生的所有指标名称列表

flow tracking metrics [options]

选项

参数名 必选 类型 说明
-j, --job-id string 作业id
-r, --role string 参与角色
-p, --partyid string 参与方id
-cpn, --component-name string 组件名,与job dsl中的保持一致

返回

参数名 类型 说明
retcode int 返回码
retmsg string 返回信息
data dict 返回数据

样例

flow tracking metrics -j 202111081618357358520 -r guest -p 9999 -cpn evaluation_0

输出:

{
    "data": {
        "train": [
            "hetero_lr_0",
            "hetero_lr_0_ks_fpr",
            "hetero_lr_0_ks_tpr",
            "hetero_lr_0_lift",
            "hetero_lr_0_gain",
            "hetero_lr_0_accuracy",
            "hetero_lr_0_precision",
            "hetero_lr_0_recall",
            "hetero_lr_0_roc",
            "hetero_lr_0_confusion_mat",
            "hetero_lr_0_f1_score",
            "hetero_lr_0_quantile_pr"
        ]
    },
    "retcode": 0,
    "retmsg": "success"
}

metric-all

获取组件任务的所有输出指标

flow tracking metric-all [options]

选项

参数名 必选 类型 说明
-j, --job-id string 作业id
-r, --role string 参与角色
-p, --partyid string 参与方id
-cpn, --component-name string 组件名,与job dsl中的保持一致

返回

参数名 类型 说明
retcode int 返回码
retmsg string 返回信息
data dict 返回数据
jobId string 作业id

样例

flow tracking metric-all -j 202111081618357358520 -r guest -p 9999 -cpn evaluation_0

输出(篇幅有限,仅显示部分指标的数据且数组型数据中间省略了一些值):

{
    "data": {
        "train": {
            "hetero_lr_0": {
                "data": [
                    [
                        "auc",
                        0.293893
                    ],
                    [
                        "ks",
                        0.0
                    ]
                ],
                "meta": {
                    "metric_type": "EVALUATION_SUMMARY",
                    "name": "hetero_lr_0"
                }
            },
            "hetero_lr_0_accuracy": {
                "data": [
                    [
                        0.0,
                        0.372583
                    ],
                    [
                        0.99,
                        0.616872
                    ]
                ],
                "meta": {
                    "curve_name": "hetero_lr_0",
                    "metric_type": "ACCURACY_EVALUATION",
                    "name": "hetero_lr_0_accuracy",
                    "thresholds": [
                        0.999471,
                        0.002577
                    ]
                }
            },
            "hetero_lr_0_confusion_mat": {
                "data": [],
                "meta": {
                    "fn": [
                        357,
                        0
                    ],
                    "fp": [
                        0,
                        212
                    ],
                    "metric_type": "CONFUSION_MAT",
                    "name": "hetero_lr_0_confusion_mat",
                    "thresholds": [
                        0.999471,
                        0.0
                    ],
                    "tn": [
                        212,
                        0
                    ],
                    "tp": [
                        0,
                        357
                    ]
                }
            }
        }
    },
    "retcode": 0,
    "retmsg": "success"
}

parameters

提交作业后,系统依据job conf中的component_parameters结合系统默认组件参数,最终解析得到的实际组件任务运行参数

flow tracking parameters [options]

选项

参数名 必选 类型 说明
-j, --job-id string 作业id
-r, --role string 参与角色
-p, --partyid string 参与方id
-cpn, --component-name string 组件名,与job dsl中的保持一致

返回

参数名 类型 说明
retcode int 返回码
retmsg string 返回信息
data dict 返回数据
jobId string 作业id

样例

flow tracking parameters  -j 202111081618357358520 -r guest -p 9999 -cpn hetero_lr_0

输出:

{
    "data": {
        "ComponentParam": {
            "_feeded_deprecated_params": [],
            "_is_raw_conf": false,
            "_name": "HeteroLR#hetero_lr_0",
            "_user_feeded_params": [
                "batch_size",
                "penalty",
                "max_iter",
                "learning_rate",
                "init_param",
                "optimizer",
                "init_param.init_method",
                "alpha"
            ],
            "alpha": 0.01,
            "batch_size": 320,
            "callback_param": {
                "callbacks": [],
                "early_stopping_rounds": null,
                "metrics": [],
                "save_freq": 1,
                "use_first_metric_only": false,
                "validation_freqs": null
            },
            "cv_param": {
                "history_value_type": "score",
                "mode": "hetero",
                "n_splits": 5,
                "need_cv": false,
                "output_fold_history": true,
                "random_seed": 1,
                "role": "guest",
                "shuffle": true
            },
            "decay": 1,
            "decay_sqrt": true,
            "early_stop": "diff",
            "early_stopping_rounds": null,
            "encrypt_param": {
                "key_length": 1024,
                "method": "Paillier"
            },
            "encrypted_mode_calculator_param": {
                "mode": "strict",
                "re_encrypted_rate": 1
            },
            "floating_point_precision": 23,
            "init_param": {
                "fit_intercept": true,
                "init_const": 1,
                "init_method": "random_uniform",
                "random_seed": null
            },
            "learning_rate": 0.15,
            "max_iter": 3,
            "metrics": [
                "auc",
                "ks"
            ],
            "multi_class": "ovr",
            "optimizer": "rmsprop",
            "penalty": "L2",
            "predict_param": {
                "threshold": 0.5
            },
            "sqn_param": {
                "memory_M": 5,
                "random_seed": null,
                "sample_size": 5000,
                "update_interval_L": 3
            },
            "stepwise_param": {
                "direction": "both",
                "max_step": 10,
                "mode": "hetero",
                "need_stepwise": false,
                "nvmax": null,
                "nvmin": 2,
                "role": "guest",
                "score_name": "AIC"
            },
            "tol": 0.0001,
            "use_first_metric_only": false,
            "validation_freqs": null
        },
        "module": "HeteroLR"
    },
    "retcode": 0,
    "retmsg": "success"
}

output-data

获取组件输出

flow tracking output-data [options]

选项

参数名 必选 类型 说明
-j, --job-id string 作业id
-r, --role string 参与角色
-p, --partyid string 参与方id
-cpn, --component-name string 组件名,与job dsl中的保持一致
-o, --output-path string 输出数据的存放路径

返回

参数名 类型 说明
retcode int 返回码
retmsg string 返回信息
data dict 返回数据
jobId string 作业id

样例

flow tracking output-data  -j 202111081618357358520 -r guest -p 9999 -cpn hetero_lr_0 -o ./

输出:

{
    "retcode": 0,
    "directory": "$FATE_PROJECT_BASE/job_202111081618357358520_hetero_lr_0_guest_9999_output_data",
    "retmsg": "Download successfully, please check $FATE_PROJECT_BASE/job_202111081618357358520_hetero_lr_0_guest_9999_output_data directory"
}

output-data-table

获取组件的输出数据表名

flow tracking output-data-table [options]

选项

参数名 必选 类型 说明
-j, --job-id string 作业id
-r, --role string 参与角色
-p, --partyid string 参与方id
-cpn, --component-name string 组件名,与job dsl中的保持一致

返回

参数名 类型 说明
retcode int 返回码
retmsg string 返回信息
data dict 返回数据
jobId string 作业id

样例

flow tracking output-data-table  -j 202111081618357358520 -r guest -p 9999 -cpn hetero_lr_0

输出:

{
    "data": [
        {
            "data_name": "train",
            "table_name": "9688fa00406c11ecbd0bacde48001122",
            "table_namespace": "output_data_202111081618357358520_hetero_lr_0_0"
        }
    ],
    "retcode": 0,
    "retmsg": "success"
}

output-model

获取某个组件任务的输出模型

flow tracking output-model [options]

选项

参数名 必选 类型 说明
-j, --job-id string 作业id
-r, --role string 参与角色
-p, --partyid string 参与方id
-cpn, --component-name string 组件名,与job dsl中的保持一致

返回

参数名 类型 说明
retcode int 返回码
retmsg string 返回信息
data dict 返回数据
jobId string 作业id

样例

flow tracking output-model  -j 202111081618357358520 -r guest -p 9999 -cpn hetero_lr_0

输出:

{
    "data": {
        "bestIteration": -1,
        "encryptedWeight": {},
        "header": [
            "x0",
            "x1",
            "x2",
            "x3",
            "x4",
            "x5",
            "x6",
            "x7",
            "x8",
            "x9"
        ],
        "intercept": 0.24451607054764884,
        "isConverged": false,
        "iters": 3,
        "lossHistory": [],
        "needOneVsRest": false,
        "weight": {
            "x0": 0.04639947589856569,
            "x1": 0.19899685467216902,
            "x2": -0.18133550931649306,
            "x3": 0.44928868756862206,
            "x4": 0.05285905125502288,
            "x5": 0.319187932844076,
            "x6": 0.42578983446194013,
            "x7": -0.025765956309895477,
            "x8": -0.3699194462271593,
            "x9": -0.1212094750908295
        }
    },
    "meta": {
        "meta_data": {
            "alpha": 0.01,
            "batchSize": "320",
            "earlyStop": "diff",
            "fitIntercept": true,
            "learningRate": 0.15,
            "maxIter": "3",
            "needOneVsRest": false,
            "optimizer": "rmsprop",
            "partyWeight": 0.0,
            "penalty": "L2",
            "reEncryptBatches": "0",
            "revealStrategy": "",
            "tol": 0.0001
        },
        "module_name": "HeteroLR"
    },
    "retcode": 0,
    "retmsg": "success"
}

get-summary

每个组件允许设置一些摘要信息,便于观察分析

flow tracking get-summary [options]

选项

参数名 必选 类型 说明
-j, --job-id string 作业id
-r, --role string 参与角色
-p, --partyid string 参与方id
-cpn, --component-name string 组件名,与job dsl中的保持一致

返回

参数名 类型 说明
retcode int 返回码
retmsg string 返回信息
data dict 返回数据
jobId string 作业id

样例

flow tracking get-summary -j 202111081618357358520 -r guest -p 9999 -cpn hetero_lr_0

输出:

{
    "data": {
        "best_iteration": -1,
        "coef": {
            "x0": 0.04639947589856569,
            "x1": 0.19899685467216902,
            "x2": -0.18133550931649306,
            "x3": 0.44928868756862206,
            "x4": 0.05285905125502288,
            "x5": 0.319187932844076,
            "x6": 0.42578983446194013,
            "x7": -0.025765956309895477,
            "x8": -0.3699194462271593,
            "x9": -0.1212094750908295
        },
        "intercept": 0.24451607054764884,
        "is_converged": false,
        "one_vs_rest": false
    },
    "retcode": 0,
    "retmsg": "success"
}

tracking-source

用于查询某张表的父表及源表

flow table tracking-source [options]

选项

参数名 必选 类型 说明
name string fate表名
namespace string fate表命名空间

返回

参数名 类型 说明
retcode int 返回码
retmsg string 返回信息
data object 返回数据

样例

{
    "data": [{"parent_table_name": "61210fa23c8d11ec849a5254004fdc71", "parent_table_namespace": "output_data_202111031759294631020_hetero_lr_0_0", "source_table_name": "breast_hetero_guest", "source_table_namespace": "experiment"}],
    "retcode": 0,
    "retmsg": "success"
}

tracking-job

用于查询某张表的使用情况

flow table tracking-job [options]

选项

参数名 必选 类型 说明
name string fate表名
namespace string fate表命名空间

返回

参数名 类型 说明
retcode int 返回码
retmsg string 返回信息
data object 返回数据

样例

{
    "data": {"count":2,"job":["202111052115375327830", "202111031816501123160"]},
    "retcode": 0,
    "retmsg": "success"
}

Model

load

向 Fate-Serving 加载 deploy 生成的模型。

flow model load -c examples/model/publish_load_model.json
flow model load -j <job_id>

选项

参数 短格式 长格式 可选参数 说明
conf_path -c --conf-path 配置文件
job_id -j --job-id 任务 ID

样例

{
  "data": {
    "detail": {
      "guest": {
        "9999": {
          "retcode": 0,
          "retmsg": "success"
        }
      },
      "host": {
        "10000": {
          "retcode": 0,
          "retmsg": "success"
        }
      }
    },
    "guest": {
      "9999": 0
    },
    "host": {
      "10000": 0
    }
  },
  "jobId": "202111091122168817080",
  "retcode": 0,
  "retmsg": "success"
}

bind

向 Fate-Serving 绑定 deploy 生成的模型。

flow model bind -c examples/model/bind_model_service.json
flow model bind -c examples/model/bind_model_service.json -j <job_id>

选项

参数 短格式 长格式 可选参数 说明
conf_path -c --conf-path 配置文件
job_id -j --job-id 任务 ID

样例

{
  "retcode": 0,
  "retmsg": "service id is 123"
}

import

从本地或存储引擎中导入模型。

flow model import -c examples/model/import_model.json
flow model import -c examples/model/restore_model.json --from-database

选项

参数 短格式 长格式 可选参数 说明
conf_path -c --conf-path 配置文件
from_database --from-database 从存储引擎中导入模型

样例

{
  "data": {
    "job_id": "202208261102212849780",
    "model_id": "arbiter-10000#guest-9999#host-10000#model",
    "model_version": "foobar",
    "party_id": "9999",
    "role": "guest"
  },
  "retcode": 0,
  "retmsg": "success"
}

export

导出模型到本地或存储引擎中。

flow model export -c examples/model/export_model.json
flow model export -c examples/model/store_model.json --to-database

选项

参数 短格式 长格式 可选参数 说明
conf_path -c --conf-path 配置文件
to_database --to-database 将模型导出到存储引擎中

样例

{
  "data": {
    "board_url": "http://127.0.0.1:8080/index.html#/dashboard?job_id=202111091124582110490&role=local&party_id=0",
    "code": 0,
    "dsl_path": "/root/Codes/FATE-Flow/jobs/202111091124582110490/job_dsl.json",
    "job_id": "202111091124582110490",
    "logs_directory": "/root/Codes/FATE-Flow/logs/202111091124582110490",
    "message": "success",
    "model_info": {
      "model_id": "local-0#model",
      "model_version": "202111091124582110490"
    },
    "pipeline_dsl_path": "/root/Codes/FATE-Flow/jobs/202111091124582110490/pipeline_dsl.json",
    "runtime_conf_on_party_path": "/root/Codes/FATE-Flow/jobs/202111091124582110490/local/0/job_runtime_on_party_conf.json",
    "runtime_conf_path": "/root/Codes/FATE-Flow/jobs/202111091124582110490/job_runtime_conf.json",
    "train_runtime_conf_path": "/root/Codes/FATE-Flow/jobs/202111091124582110490/train_runtime_conf.json"
  },
  "jobId": "202111091124582110490",
  "retcode": 0,
  "retmsg": "success"
}

migrate

迁移模型。

flow model migrate -c examples/model/migrate_model.json

选项

参数 短格式 长格式 可选参数 说明
conf_path -c --conf-path 配置文件

样例

{
  "data": {
    "arbiter": {
      "10000": 0
    },
    "detail": {
      "arbiter": {
        "10000": {
          "retcode": 0,
          "retmsg": "Migrating model successfully. The configuration of model has been modified automatically. New model id is: arbiter-100#guest-99#host-100#model, model version is: 202111091127392613050. Model files can be found at '/root/Codes/FATE-Flow/temp/fate_flow/arbiter#100#arbiter-100#guest-99#host-100#model_202111091127392613050.zip'."
        }
      },
      "guest": {
        "9999": {
          "retcode": 0,
          "retmsg": "Migrating model successfully. The configuration of model has been modified automatically. New model id is: arbiter-100#guest-99#host-100#model, model version is: 202111091127392613050. Model files can be found at '/root/Codes/FATE-Flow/temp/fate_flow/guest#99#arbiter-100#guest-99#host-100#model_202111091127392613050.zip'."
        }
      },
      "host": {
        "10000": {
          "retcode": 0,
          "retmsg": "Migrating model successfully. The configuration of model has been modified automatically. New model id is: arbiter-100#guest-99#host-100#model, model version is: 202111091127392613050. Model files can be found at '/root/Codes/FATE-Flow/temp/fate_flow/host#100#arbiter-100#guest-99#host-100#model_202111091127392613050.zip'."
        }
      }
    },
    "guest": {
      "9999": 0
    },
    "host": {
      "10000": 0
    }
  },
  "jobId": "202111091127392613050",
  "retcode": 0,
  "retmsg": "success"
}

tag-list

获取模型的标签列表。

flow model tag-list -j <job_id>

选项

参数 短格式 长格式 可选参数 说明
job_id -j --job_id 任务 ID

tag-model

从模型中添加或删除标签。

flow model tag-model -j <job_id> -t <tag_name>
flow model tag-model -j <job_id> -t <tag_name> --remove

选项

参数 短格式 长格式 可选参数 说明
job_id -j --job_id 任务 ID
tag_name -t --tag-name 标签名
remove --remove 移除指定的标签

deploy

配置预测 DSL。

flow model deploy --model-id <model_id> --model-version <model_version>

选项

参数 短格式 长格式 可选参数 说明
model_id --model-id 模型 ID
model_version --model-version 模型版本
cpn_list --cpn-list 组件列表
cpn_path --cpn-path 从文件中读入组件列表
dsl_path --dsl-path 预测 DSL 文件
cpn_step_index --cpn-step-index 用指定的 Checkpoint 模型替换 Pipeline 模型
使用 : 分隔 component name 与 step index
例如 --cpn-step-index cpn_a:123
cpn_step_name --cpn-step-name 用指定的 Checkpoint 模型替换 Pipeline 模型
使用 : 分隔 component name 与 step name
例如 --cpn-step-name cpn_b:foobar

样例

{
  "retcode": 0,
  "retmsg": "success",
  "data": {
    "model_id": "arbiter-9999#guest-10000#host-9999#model",
    "model_version": "202111032227378766180",
    "arbiter": {
      "party_id": 9999
    },
    "guest": {
      "party_id": 10000
    },
    "host": {
      "party_id": 9999
    },
    "detail": {
      "arbiter": {
        "party_id": {
          "retcode": 0,
          "retmsg": "deploy model of role arbiter 9999 success"
        }
      },
      "guest": {
        "party_id": {
          "retcode": 0,
          "retmsg": "deploy model of role guest 10000 success"
        }
      },
      "host": {
        "party_id": {
          "retcode": 0,
          "retmsg": "deploy model of role host 9999 success"
        }
      }
    }
  }
}

get-predict-dsl

获取预测 DSL。

flow model get-predict-dsl --model-id <model_id> --model-version <model_version> -o ./examples/

选项

参数 短格式 长格式 可选参数 说明
model_id --model-id 模型 ID
model_version --model-version 模型版本
output_path -o --output-path 输出路径

get-predict-conf

获取模型预测模板。

flow model get-predict-conf --model-id <model_id> --model-version <model_version> -o ./examples/

选项

参数 短格式 长格式 可选参数 说明
model_id --model-id 模型 ID
model_version --model-version 模型版本
output_path -o --output-path 输出路径

get-model-info

获取模型信息。

flow model get-model-info --model-id <model_id> --model-version <model_version>
flow model get-model-info --model-id <model_id> --model-version <model_version> --detail

选项

参数 短格式 长格式 可选参数 说明
model_id --model-id 模型 ID
model_version --model-version 模型版本
role -r --role Party 角色
party_id -p --party-id Party ID
detail --detail 展示详细信息

homo-convert

基于横向训练的模型,生成其他 ML 框架的模型文件。

flow model homo-convert -c examples/model/homo_convert_model.json

选项

参数 短格式 长格式 可选参数 说明
conf_path -c --conf-path 配置文件

homo-deploy

将横向训练后使用 homo-convert 生成的模型部署到在线推理系统中,当前支持创建基于 KFServing 的推理服务。

flow model homo-deploy -c examples/model/homo_deploy_model.json

选项

参数 短格式 长格式 可选参数 说明
conf_path -c --conf-path 配置文件

Checkpoint

list

获取 Checkpoint 模型列表。

flow checkpoint list --model-id <model_id> --model-version <model_version> --role <role> --party-id <party_id> --component-name <component_name>

选项

参数 短格式 长格式 可选参数 说明
model_id --model-id 模型 ID
model_version --model-version 模型版本
role -r --role Party 角色
party_id -p --party-id Party ID
component_name -cpn --component-name 组件名

样例

{
  "retcode": 0,
  "retmsg": "success",
  "data": [
    {
      "create_time": "2021-11-07T02:34:54.683015",
      "step_index": 0,
      "step_name": "step_name",
      "models": {
        "HeteroLogisticRegressionMeta": {
          "buffer_name": "LRModelMeta",
          "sha1": "6871508f6e6228341b18031b3623f99a53a87147"
        },
        "HeteroLogisticRegressionParam": {
          "buffer_name": "LRModelParam",
          "sha1": "e3cb636fc93675684bff27117943f5bfa87f3029"
        }
      }
    }
  ]
}

get

获取 Checkpoint 模型信息。

flow checkpoint get --model-id <model_id> --model-version <model_version> --role <role> --party-id <party_id> --component-name <component_name> --step-index <step_index>

选项

参数 短格式 长格式 可选参数 说明
model_id --model-id 模型 ID
model_version --model-version 模型版本
role -r --role Party 角色
party_id -p --party-id Party ID
component_name -cpn --component-name 组件名
step_index --step-index Step index,不可与 step_name 同时使用
step_name --step-name Step name,不可与 step_index 同时使用

样例

{
  "retcode": 0,
  "retmsg": "success",
  "data": {
    "create_time": "2021-11-07T02:34:54.683015",
    "step_index": 0,
    "step_name": "step_name",
    "models": {
      "HeteroLogisticRegressionMeta": "CgJMMhEtQxzr4jYaPxkAAAAAAADwPyIHcm1zcHJvcDD///////////8BOTMzMzMzM8M/QApKBGRpZmZYAQ==",
      "HeteroLogisticRegressionParam": "Ig0KAng3EW1qASu+uuO/Ig0KAng0EcNi7a65ReG/Ig0KAng4EbJbl4gvVea/Ig0KAng2EcZwlVZTkOu/Ig0KAngwEVpG8dCbGvG/Ig0KAng5ESJNTx5MLve/Ig0KAngzEZ88H9P8qfO/Ig0KAng1EVfWP8JJv/K/Ig0KAngxEVS0xVXoTem/Ig0KAngyEaApgW32Q/K/KSiiE8AukPs/MgJ4MDICeDEyAngyMgJ4MzICeDQyAng1MgJ4NjICeDcyAng4MgJ4OUj///////////8B"
    }
  }
}

Provider

list

列出当前所有组件提供者及其提供组件信息

flow provider list [options]

选项

返回

参数名 类型 说明
retcode int 返回码
retmsg string 返回信息
data dict 返回数据

样例

输出:

{
    "data": {
        "fate": {
            "1.9.0": {
                "class_path": {
                    "anonymous_generator": "util.anonymous_generator_util.Anonymous",
                    "data_format": "util.data_format_preprocess.DataFormatPreProcess",
                    "feature_instance": "feature.instance.Instance",
                    "feature_vector": "feature.sparse_vector.SparseVector",
                    "hetero_model_merge": "protobuf.model_merge.merge_hetero_models.hetero_model_merge",
                    "homo_model_convert": "protobuf.homo_model_convert.homo_model_convert",
                    "interface": "components.components.Components",
                    "model": "protobuf.generated",
                    "model_migrate": "protobuf.model_migrate.model_migrate"
                },
                "components": [
                    "heterodatasplit",
                    "psi",
                    "heterofastsecureboost",
                    "heterofeaturebinning",
                    "scorecard",
                    "sampleweight",
                    "homosecureboost",
                    "onehotencoder",
                    "secureinformationretrieval",
                    "homoonehotencoder",
                    "datatransform",
                    "dataio",
                    "heterosshelinr",
                    "intersection",
                    "homofeaturebinning",
                    "secureaddexample",
                    "union",
                    "datastatistics",
                    "columnexpand",
                    "homonn",
                    "labeltransform",
                    "heterosecureboost",
                    "heterofeatureselection",
                    "heterolr",
                    "feldmanverifiablesum",
                    "heteropoisson",
                    "evaluation",
                    "federatedsample",
                    "homodatasplit",
                    "ftl",
                    "localbaseline",
                    "featurescale",
                    "featureimputation",
                    "heteropearson",
                    "heterokmeans",
                    "heteronn",
                    "heterolinr",
                    "spdztest",
                    "heterosshelr",
                    "homolr"
                ],
                "path": "${FATE_PROJECT_BASE}/python/federatedml",
                "python": ""
            },
            "default": {
                "version": "1.9.0"
            }
        },
        "fate_flow": {
            "1.9.0": {
                "class_path": {
                    "anonymous_generator": "util.anonymous_generator_util.Anonymous",
                    "data_format": "util.data_format_preprocess.DataFormatPreProcess",
                    "feature_instance": "feature.instance.Instance",
                    "feature_vector": "feature.sparse_vector.SparseVector",
                    "hetero_model_merge": "protobuf.model_merge.merge_hetero_models.hetero_model_merge",
                    "homo_model_convert": "protobuf.homo_model_convert.homo_model_convert",
                    "interface": "components.components.Components",
                    "model": "protobuf.generated",
                    "model_migrate": "protobuf.model_migrate.model_migrate"
                },
                "components": [
                    "writer",
                    "modelrestore",
                    "upload",
                    "apireader",
                    "modelstore",
                    "cacheloader",
                    "modelloader",
                    "download",
                    "reader"
                ],
                "path": "${FATE_FLOW_BASE}/python/fate_flow",
                "python": ""
            },
            "default": {
                "version": "1.9.0"
            }
        }
    },
    "retcode": 0,
    "retmsg": "success"
}

包含组件提供者名称, 版本号, 代码路径, 提供的组件列表

register

注册一个组件提供者

flow provider register [options]

选项

参数名 必选 类型 说明
-c, --conf-path string 配置路径

返回

参数名 类型 说明
retcode int 返回码
retmsg string 返回信息

样例

flow provider register -c $FATE_FLOW_BASE/examples/other/register_provider.json

配置文件:

{
  "name": "fate",
  "version": "1.7.1",
  "path": "${FATE_FLOW_BASE}/python/component_plugins/fateb/python/federatedml"
}

输出:

{
    "data": {
        "flow-xxx-9380": {
            "retcode": 0,
            "retmsg": "success"
        }
    },
    "retcode": 0,
    "retmsg": "success"
}

Resource

query

用于查询fate系统资源

flow resource query

选项

返回

参数名 类型 说明
retcode int 返回码
retmsg string 返回信息
data object 返回数据

样例

{
    "data": {
        "computing_engine_resource": {
            "f_cores": 32,
            "f_create_date": "2021-09-21 19:32:59",
            "f_create_time": 1632223979564,
            "f_engine_config": {
                "cores_per_node": 32,
                "nodes": 1
            },
            "f_engine_entrance": "fate_on_eggroll",
            "f_engine_name": "EGGROLL",
            "f_engine_type": "computing",
            "f_memory": 0,
            "f_nodes": 1,
            "f_remaining_cores": 32,
            "f_remaining_memory": 0,
            "f_update_date": "2021-11-08 16:56:38",
            "f_update_time": 1636361798812
        },
        "use_resource_job": []
    },
    "retcode": 0,
    "retmsg": "success"
}

return

用于归还某个job的资源

flow resource return [options]

选项

参数名 必选 类型 说明
job_id string 任务id

返回

参数名 类型 说明
retcode int 返回码
retmsg string 返回信息
data object 返回数据

样例

{
    "data": [
        {
            "job_id": "202111081612427726750",
            "party_id": "8888",
            "resource_in_use": true,
            "resource_return_status": true,
            "role": "guest"
        }
    ],
    "retcode": 0,
    "retmsg": "success"
}

Privilege

grant

添加权限

flow privilege grant -c fateflow/examples/permission/grant.json

选项

参数 短格式 长格式 必选 类型 说明
conf_path -c --conf-path string 配置路径

注: conf_path为参数路径,具体参数如下

参数名 必选 类型 说明
party_id string 站点id
component string 组件名,可用","分割多个组件,"*"为所有组件
dataset object 数据集列表

样例

{
  "party_id": 10000,
  "component": "reader,dataio",
  "dataset": [
    {
      "namespace": "experiment",
      "name": "breast_hetero_guest"
    },
    {
      "namespace": "experiment",
      "name": "breast_hetero_host"
    }
  ]
}

返回

参数名 类型 说明
retcode int 返回码
retmsg string 返回信息

样例

{
    "retcode": 0,
    "retmsg": "success"
}

delete

删除权限

flow privilege delete -c fateflow/examples/permission/delete.json
选项

参数 短格式 长格式 必选 类型 说明
conf_path -c --conf-path string 配置路径

注: conf_path为参数路径,具体参数如下

参数名 必选 类型 说明
party_id string 站点id
component string 组件名,可用","分割多个组件,"*"为所有组件
dataset object 数据集列表, "*"为所有数据集

样例

{
  "party_id": 10000,
  "component": "reader,dataio",
  "dataset": [
    {
      "namespace": "experiment",
      "name": "breast_hetero_guest"
    },
    {
      "namespace": "experiment",
      "name": "breast_hetero_host"
    }
  ]
}

返回

参数名 类型 说明
retcode int 返回码
retmsg string 返回信息

样例

{
    "retcode": 0,
    "retmsg": "success"
}

query

查询权限

flow privilege query -p 10000

选项

参数 短格式 长格式 必选 类型 说明
party_id -p --party-id string 站点id

返回

参数名 类型 说明
retcode int 返回码
retmsg string 返回信息
data object 返回数据

样例

{
    "data": {
        "component": [
            "reader",
            "dataio"
        ],
        "dataset": [
            {
                "name": "breast_hetero_guest",
                "namespace": "experiment"
            },
            {
                "name": "breast_hetero_host",
                "namespace": "experiment"
            }
        ]
    },
    "retcode": 0,
    "retmsg": "success"
}

Tag

create

创建标签。

选项

编号 参数 短格式 长格式 必要参数 参数介绍
1 tag_name -t --tag-name 标签名
2 tag_参数介绍 -d --tag-desc 标签介绍

样例

flow tag create -t tag1 -d "This is the 参数介绍 of tag1."
flow tag create -t tag2

update

更新标签信息。

选项

编号 参数 短格式 长格式 必要参数 参数介绍
1 tag_name -t --tag-name 标签名
2 new_tag_name --new-tag-name 新标签名
3 new_tag_desc --new-tag-desc 新标签介绍

样例

flow tag update -t tag1 --new-tag-name tag2
flow tag update -t tag1 --new-tag-desc "This is the new 参数介绍."

list

展示标签列表。

选项

编号 参数 短格式 长格式 必要参数 参数介绍
1 limit -l --limit 返回结果数量限制(默认:10)

样例

flow tag list
flow tag list -l 3

query

检索标签。

选项

编号 参数 短格式 长格式 必要参数 参数介绍
1 tag_name -t --tag-name 标签名
2 with_model --with-model 如果指定,具有该标签的模型信息将被展示

样例

flow tag query -t $TAG_NAME
flow tag query -t $TAG_NAME --with-model

delete

删除标签。

选项

编号 参数 短格式 长格式 必要参数 参数介绍
1 tag_name -t --tag-name 标签名

样例

flow tag delete -t tag1

Server

versions

列出所有相关系统版本号

flow server versions

选项

返回

参数名 类型 说明
retcode int 返回码
retmsg string 返回信息
data dict 返回数据
jobId string 作业id

样例

flow server versions

输出:

{
    "data": {
        "API": "v1",
        "CENTOS": "7.2",
        "EGGROLL": "2.4.0",
        "FATE": "1.7.0",
        "FATEBoard": "1.7.0",
        "FATEFlow": "1.7.0",
        "JDK": "8",
        "MAVEN": "3.6.3",
        "PYTHON": "3.6.5",
        "SPARK": "2.4.1",
        "UBUNTU": "16.04"
    },
    "retcode": 0,
    "retmsg": "success"
}

reload

如下配置项在reload后会重新生效

  • $FATE_PROJECT_BASE/conf/service_conf.yaml中# engine services后的所有配置
  • $FATE_FLOW_BASE/python/fate_flow/job_default_config.yaml中所有配置
flow server reload

选项

返回

参数名 类型 说明
retcode int 返回码
retmsg string 返回信息
data dict 返回数据
jobId string 作业id

样例

flow server reload

输出:

{
    "data": {
        "job_default_config": {
            "auto_retries": 0,
            "auto_retry_delay": 1,
            "default_component_provider_path": "component_plugins/fate/python/federatedml",
            "end_status_job_scheduling_time_limit": 300000,
            "end_status_job_scheduling_updates": 1,
            "federated_command_trys": 3,
            "federated_status_collect_type": "PUSH",
            "job_timeout": 259200,
            "max_cores_percent_per_job": 1,
            "output_data_summary_count_limit": 100,
            "remote_request_timeout": 30000,
            "task_cores": 4,
            "task_memory": 0,
            "task_parallelism": 1,
            "total_cores_overweight_percent": 1,
            "total_memory_overweight_percent": 1,
            "upload_max_bytes": 4194304000
        },
        "service_registry": null
    },
    "retcode": 0,
    "retmsg": "success"
}