Fate Flow Client SDK Guide
[中文 ]
Usage
``` sourceCode python
from flow_sdk.client import FlowClient
use real ip address to initialize SDK
client = FlowClient('127.0.0.1', 9000, 'v1')
## Job Operations
### Usage
``` sourceCode python
client.job.submit(conf_path, dsl_path)
Functions
submit(conf_path, dsl_path)
Description :Submit a pipeline
job.
Arguments :
No.
Argument
Type
Required
Description
1
conf_path
string
Yes
Runtime configuration file path
2
dsl_path
string
Yes
DSL file path
stop(job_id)
Description :Cancel or stop a specified job.
Arguments :
No.
Argument
Type
Required
Description
1
job_id
integer
Yes
A valid job id
query(job_id=None, role=None, party_id=None, status=None)
Description :Query job information by filters.
Arguments :
No.
Argument
Type
Required
Description
1
job_id
integer
No
A valid job id
2
role
string
No
Role
3
party_id
integer
No
Party id
4
status
string
No
Job Status
config(job_id, role, party_id, output_path)
Description :Download the configuration of a specified job.
Arguments :
No
Argument
Type
Required
Description
1
job_id
integer
Yes
A valid job id
2
role
string
Yes
Role
3
party_id
integer
Yes
Party id
4
output_path
string
Yes
Specified Output Path
log(job_id, output_path)
Description :Download log files of a specified job.
Arguments :
No.
Argument
Type
Required
Description
1
job_id
integer
Yes
A valid job id
2
output_path
string
Yes
Specified Output Path
list(limit=10)
Description :List
jobs.
Arguments :
No.
Argument
Type
Required
Description
1
limit
integer
No
Limit the number of results, default is 10
view(job_id=None, role=None, party_id=None, status=None)
Description :List jobs.
Arguments :
No.
Argument
Type
Required
Description
1
job_id
integer
No
A valid job id
2
role
string
No
Role
3
party_id
integer
No
Party id
4
component_name
string
No
Component Name
generate_dsl(train_dsl_path, cpn_file_path=None, cpn_list = None)
Description :A predict dsl
generator.
Arguments :
No.
Argument
Type
Required
Description
1
train_dsl_path
string(path)
Yes
User specifies the train dsl file path.
2
version
string
No
Specified version of dsl parser. Default 1.
3
cpn_file_path
string(path)
No
User specifies a file path which records the component list.
4
cpn_list
list
No
User inputs a list of component names.
Component Operations
Usage
``` sourceCode python
client.component.parameters(job_id, role, party_id, component_name)
### Functions
#### `parameters(job_id, role, party_id, component_name)`
- *Description*:Query the parameters of a specified component.
- *Arguments*:
| No. | Argument | Type | Required | Description |
| ---- | -------------- | ------- | -------- | -------------- |
| 1 | job_id | integer | Yes | A valid job id |
| 2 | role | string | Yes | Role |
| 3 | party_id | integer | Yes | Party id |
| 4 | component_name | string | Yes | Component Name |
#### `metric_all(job_id, role, party_id, component_name)`
- *Description*:Query all metric data.
- *Arguments*:
| No. | Argument | Type | Required | Description |
| ---- | -------------- | ------- | -------- | -------------- |
| 1 | job_id | integer | Yes | A valid job id |
| 2 | role | string | Yes | Role |
| 3 | party_id | integer | Yes | Party id |
| 4 | component_name | string | Yes | Component Name |
#### `metrics(job_id, role, party_id, component_name)`
- *Description*:Query all metric data.
- *Arguments*:
| No. | Argument | Type | Required | Description |
| ---- | -------------- | ------- | -------- | -------------- |
| 1 | job_id | integer | Yes | A valid job id |
| 2 | role | string | Yes | Role |
| 3 | party_id | integer | Yes | Party id |
| 4 | component_name | string | Yes | Component Name |
#### `metric_delete(date=None, job_id=None)`
- *Description*:Delete specified
metric.
- *Arguments*:
| No. | Argument | Type | Required | Description |
| ---- | -------- | ------- | -------- | --------------------------------------------- |
| 1 | date | integer | Yes | An 8-Digit Valid Date, Format Like 'YYYYMMDD' |
| 2 | job_id | integer | Yes | A valid job id |
`Notice`: If you input two optional arguments in the mean time, the
'date' argument will be detected in priority while the 'job_id'
argument would be ignored.
#### `output_model(job_id, role, party_id, component_name)`
- *Description*:Query a specified component model.
- *Arguments*:
| No. | Argument | Type | Required | Description |
| ---- | -------------- | ------- | -------- | -------------- |
| 1 | job_id | integer | Yes | A valid job id |
| 2 | role | string | Yes | Role |
| 3 | party_id | integer | Yes | Party id |
| 4 | component_name | string | Yes | Component Name |
#### `output_data(job_id, role, party_id, component_name, output_path, limit=10)`
- *Description*:Download the output data of a specified
component.
- *Arguments*:
| No. | Argument | Type | Required | Description |
| ---- | -------------- | ------- | -------- | ------------------------------------------ |
| 1 | job_id | integer | Yes | A valid job id |
| 2 | role | string | Yes | Role |
| 3 | party_id | integer | Yes | Party id |
| 4 | component_name | string | Yes | Component Name |
| 5 | output_path | string | Yes | Specified Output directory path |
| 6 | limit | integer | No | Limit the number of results, default is 10 |
#### `output_data_table(job_id, role, party_id, component_name)`
- *Description*:View table name and namespace.
- *Arguments*:
| No. | Argument | Type | Required | Description |
| ---- | -------------- | ------- | -------- | -------------- |
| 1 | job_id | integer | Yes | A valid job id |
| 2 | role | string | Yes | Role |
| 3 | party_id | integer | Yes | Party id |
| 4 | component_name | string | Yes | Component Name |
#### `list(job_id)`
- *Description*: List components of a specified job.
- *Arguments*:
| No. | Argument | Type | Required | Description |
| --- | -------- | ------- | -------- | -------------- |
| 1 | job_id | integer | Yes | A valid job id |
#### `get_summary(job_id, role, party_id, component_name)`
- *Description*:Get summary of specified component.
- *Arguments*:
| No. | Argument | Type | Required | Description |
| ---- | -------------- | ------- | -------- | -------------- |
| 1 | job_id | integer | Yes | A valid job id |
| 2 | role | string | Yes | Role |
| 3 | party_id | integer | Yes | Party id |
| 4 | component_name | string | Yes | Component Name |
## Data Operations
### Usage
``` sourceCode python
client.data.download(conf_path)
Functions
download(conf_path)
Description :Download Data Table.
Arguments :
No.
Argument
Type
Required
Description
1
conf_path
string
Yes
Configuration file path
upload(conf_path, verbose=0, drop=0)
Description :Upload Data
Table.
Arguments :
No.
Argument
Type
Required
Description
1
conf_path
string
Yes
Configuration file path
2
verbose
integer
No
Verbose mode, 0 (default) means 'disable', 1 means 'enable'
3
drop
integer
No
If 'drop' is set to be 0 (defualt), when data had been uploaded before, current upload task would be rejected. If 'drop' is set to be 1, data of old version would be replaced by the latest version.
upload_history(limit=10, job_id=None)
Description :Query Upload Table
History.
Arguments :
No.
Argument
Type
Required
Description
1
limit
integer
No
Limit the number of results, default is 10
2
job_id
integer
No
A valid job id
Task Operations
Usage
``` sourceCode python
client.task.list(limit=10)
### Functions
#### `list(limit=10)`
- *Description*: List
tasks.
- *Arguments*:
| No. | Argument | Type | Required | Description |
| ---- | -------- | ------- | -------- | ------------------------------------------ |
| 1 | limit | integer | No | Limit the number of results, default is 10 |
#### `query(job_id=None, role=None, party_id=None, component_name=None, status=None)`
- *Description*: Query task information by filters.
- *Arguments*:
| No. | Argument | Type | Required | Description |
| ---- | -------------- | ------- | -------- | --------------- |
| 1 | job_id | integer | No | A valid job id. |
| 2 | role | string | No | Role |
| 3 | party_id | integer | No | Party ID |
| 4 | component_name | string | No | Component Name |
| 5 | status | string | No | Job Status |
## Model Operations
### Usage
``` sourceCode python
client.model.load(conf_path)
Functions
load(conf_path=None, job_id=None)
Description : Load model. Need to deploy
model first if dsl_version == 2
.
Arguments :
No.
Argument
Type
Required
Description
1
conf_path
string
No
Configuration file path
2
job_id
string
No
A valid job id
bind(conf_path, job_id=None)
Description : Bind model. Need to deploy
model first if dsl_version == 2
.
Arguments :
No.
Argument
Type
Required
Description
1
conf_path
string
Yes
Configuration file path
2
job_id
string
No
A valid job id
export_model(conf_path, to_database=False)
Description : Export
model.
Arguments :
No.
Argument
Type
Required
Description
1
conf_path
string
Yes
Configuration file path
2
to_database
bool
No
If specified and there is a valid database environment, fate flow will export model to database which you specified in configuration file.
import_model(conf_path, from_database=False)
Description : Import
model.
Arguments :
No.
Argument
Type
Required
Description
1
conf_path
string
Yes
Configuration file path
2
from_database
bool
No
If specified and there is a valid database environment, fate flow will import model from database which you specified in configuration file.
migrate(conf_path, to_database=False)
Description : Migrate
model.
Arguments :
No.
Argument
Type
Required
Description
1
conf_path
string
Yes
Configuration file path
2
to_database
bool
No
If specified and there is a valid database environment, fate flow will export model to database which you specified in configuration file.
tag_list(job_id)
Description : List tags of model.
Arguments :
No.
Argument
Type
Required
Description
1
job_id
integer
Yes
A valid job id
tag_model(job_id, tag_name, remove=False)
Description : Tag
model.
Arguments :
No.
Argument
Type
Required
Description
1
job_id
integer
Yes
A valid job id
2
tag_name
string
Yes
The name of tag
3
remove
bool
No
If specified, the name of specified model will be removed from the model name list of specified tag.
deploy(model_id, model_version=None, cpn_list=None, predict_dsl=None, components_checkpoint=None)
Description : Deploy model.
Arguments :
No.
Argument
Type
Required
Description
1
model_id
string
Yes
Parent model id
2
model_version
string
Yes
Parent model version
3
cpn_list
list
No
Component list
4
predict_dsl
dict
No
Predict DSL
5
components_checkpoint
dict
No
Specify checkpoints
get_predict_dsl(model_id, model_version)
Description : Get predict dsl of model.
Arguments :
No.
Argument
Type
Required
Description
1
model_id
string
Yes
Parent model id
2
model_version
string
Yes
Parent model version
get_predict_conf(model_id, model_version)
Description : Get predict conf of model.
Arguments :
No.
Argument
Type
Required
Description
1
model_id
string
Yes
Parent model id
2
model_version
string
Yes
Parent model version
get_model_info(model_id=None, model_version=None, role=None, party_id=None, query_filters=None, **kwargs)
Description : Get information of model.
Arguments :
No.
Argument
Type
Required
Description
1
model_id
string
No
model id
2
model_version
string
Yes
model version
3
role
string
No
role name
4
party_id
string
No
party id
5
query_filters
list
No
query filters
homo_convert(conf_path)
Description : Convert trained homogeneous model to a model of
common framework.
Arguments :
No.
Argument
Type
Required
Description
1
conf_path
string
Yes
Configuration file path
homo_deploy(conf_path)
Description : Deploy trained homogeneous model to an online serving
system. Currently KFServing is supported.
Arguments :
No.
Argument
Type
Required
Description
1
conf_path
string
Yes
Configuration file path
Tag Operations
Usage
``` sourceCode python
client.tag.create(tag_name, desc)
### Functions
#### `create(tag_name, tag_desc=None)`
- *Description*: Create Tag.
- *Arguments*:
| No. | Argument | Type | Required | Description |
| --- | --------- | ------ | -------- | ---------------------- |
| 1 | tag_name | string | Yes | The name of tag |
| 2 | tag_desc | string | No | The description of tag |
#### `update(tag_name, new_tag_name=None, new_tag_desc=None)`
- *Description*: Update information of tag.
- *Arguments*:
| No. | Argument | Type | Required | Description |
| ---- | ------------ | ------ | -------- | ---------------------- |
| 1 | tag_name | string | Yes | The name of tag |
| 2 | new_tag_name | string | No | New name of tag |
| 3 | new_tag_desc | string | No | New description of tag |
#### `list(limit=10)`
- *Description*: List recorded
tags.
- *Arguments*:
| No. | Argument | Type | Required | Description |
| ---- | -------- | ------- | -------- | ------------------------------------------ |
| 1 | limit | integer | No | Number of records to return. (default: 10) |
#### `query(tag_name, with_model=False)`
- *Description*: Retrieve
tag.
- *Arguments*:
| No. | Argument | Type | Required | Description |
| ---- | ---------- | ------ | -------- | ------------------------------------------------------------ |
| 1 | tag_name | string | Yes | The name of tag |
| 2 | with_model | bool | No | If specified, the information of models which have the tag custom queried would be displayed |
#### `delete(tag_name)`
- *Description*: Delete tag.
- *Arguments*:
| No. | Argument | Type | Required | Description |
| --- | --------- | ------ | -------- | --------------- |
| 1 | tag_name | string | Yes | The name of tag |
## Table Operations
### Usage
``` sourceCode python
client.table.info(namespace, table_name)
Functions
info(namespace, table_name)
Description : Query table information.
Arguments :
No.
Argument
Type
Required
Description
1
namespace
string
Yes
Namespace
2
table_name
string
Yes
Table Name
delete(namespace=None, table_name=None, job_id=None, role=None, party_id=None, component_name=None)
Description :Delete table.
Arguments :
No.
Argument
Type
Required
Description
1
namespace
string
No
Namespace
2
table_name
string
No
Table Name
3
job_id
integer
No
A valid job id
4
role
string
No
Role
5
party_id
integer
No
Party id
6
component_name
string
No
Component Name
Queue Operations
Usage
sourceCode python
client.queue.clean()
Functions
clean()
Description :Cancel all jobs in queue.
Arguments :None
Last update:
2021-11-15