constants.py 4.87 KB
Newer Older
liuzhe-lz's avatar
liuzhe-lz committed
1
2
# Copyright (c) Microsoft Corporation.
# Licensed under the MIT license.
Deshui Yu's avatar
Deshui Yu committed
3
4

import os
5
from colorama import Fore
Deshui Yu's avatar
Deshui Yu committed
6

chicm-ms's avatar
chicm-ms committed
7
NNICTL_HOME_DIR = os.path.join(os.path.expanduser('~'), '.local', 'nnictl')
Deshui Yu's avatar
Deshui Yu committed
8

9
10
NNI_HOME_DIR = os.path.join(os.path.expanduser('~'), 'nni-experiments')

chicm-ms's avatar
chicm-ms committed
11
12
13
ERROR_INFO = 'ERROR: '
NORMAL_INFO = 'INFO: '
WARNING_INFO = 'WARNING: '
Deshui Yu's avatar
Deshui Yu committed
14

15
DEFAULT_REST_PORT = 8080
16
17
REST_TIME_OUT = 20

18
EXPERIMENT_SUCCESS_INFO = Fore.GREEN + 'Successfully started experiment!\n' + Fore.RESET + \
Shinai Yang's avatar
Shinai Yang committed
19
                          '------------------------------------------------------------------------------------\n' \
20
                          'The experiment id is %s\n'\
21
                          'The Web UI urls are: %s\n' \
Shinai Yang's avatar
Shinai Yang committed
22
                          '------------------------------------------------------------------------------------\n\n' \
23
                          'You can use these commands to get more information about the experiment\n' \
Shinai Yang's avatar
Shinai Yang committed
24
                          '------------------------------------------------------------------------------------\n' \
Deshui Yu's avatar
Deshui Yu committed
25
                          '         commands                       description\n' \
26
                          '1. nnictl experiment show        show the information of experiments\n' \
Deshui Yu's avatar
Deshui Yu committed
27
                          '2. nnictl trial ls               list all of trial jobs\n' \
SparkSnail's avatar
SparkSnail committed
28
29
30
31
32
33
                          '3. nnictl top                    monitor the status of running experiments\n' \
                          '4. nnictl log stderr             show stderr log content\n' \
                          '5. nnictl log stdout             show stdout log content\n' \
                          '6. nnictl stop                   stop an experiment\n' \
                          '7. nnictl trial kill             kill a trial job by id\n' \
                          '8. nnictl --help                 get help information about nnictl\n' \
Shinai Yang's avatar
Shinai Yang committed
34
35
36
                          '------------------------------------------------------------------------------------\n' \
                          'Command reference document https://nni.readthedocs.io/en/latest/Tutorial/Nnictl.html\n' \
                          '------------------------------------------------------------------------------------\n'
QuanluZhang's avatar
QuanluZhang committed
37

38
39
40
41
42
LOG_HEADER = '-----------------------------------------------------------------------\n' \
             '                Experiment start time %s\n' \
             '-----------------------------------------------------------------------\n'

EXPERIMENT_START_FAILED_INFO = 'There is an experiment running in the port %d, please stop it first or set another port!\n' \
chicm-ms's avatar
chicm-ms committed
43
44
                               'You could use \'nnictl stop --port [PORT]\' command to stop an experiment!\nOr you could ' \
                               'use \'nnictl create --config [CONFIG_PATH] --port [PORT]\' to set port!\n'
45

SparkSnail's avatar
SparkSnail committed
46
EXPERIMENT_INFORMATION_FORMAT = '----------------------------------------------------------------------------------------\n' \
47
48
                     '                Experiment information\n' \
                     '%s\n' \
SparkSnail's avatar
SparkSnail committed
49
                     '----------------------------------------------------------------------------------------\n'
50

51
EXPERIMENT_DETAIL_FORMAT = 'Id: %s    Name: %s    Status: %s    Port: %s    Platform: %s    StartTime: %s    EndTime: %s\n'
SparkSnail's avatar
SparkSnail committed
52
53
54
55
56
57
58
59
60
61
62

EXPERIMENT_MONITOR_INFO = 'Id: %s    Status: %s    Port: %s    Platform: %s    \n' \
                          'StartTime: %s    Duration: %s'

TRIAL_MONITOR_HEAD = '-------------------------------------------------------------------------------------\n' + \
                    '%-15s %-25s %-25s %-15s \n' % ('trialId', 'startTime', 'endTime', 'status') + \
                     '-------------------------------------------------------------------------------------'

TRIAL_MONITOR_CONTENT = '%-15s %-25s %-25s %-15s'

TRIAL_MONITOR_TAIL = '-------------------------------------------------------------------------------------\n\n\n'
63

chicm-ms's avatar
chicm-ms committed
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
INSTALLABLE_PACKAGE_META = {
    'SMAC': {
        'type': 'tuner',
        'class_name': 'nni.smac_tuner.smac_tuner.SMACTuner',
        'code_sub_dir': 'smac_tuner',
        'class_args_validator': 'nni.smac_tuner.smac_tuner.SMACClassArgsValidator'
    },
    'BOHB': {
        'type': 'advisor',
        'class_name': 'nni.bohb_advisor.bohb_advisor.BOHB',
        'code_sub_dir': 'bohb_advisor',
        'class_args_validator': 'nni.bohb_advisor.bohb_advisor.BOHBClassArgsValidator'
    },
    'PPOTuner': {
        'type': 'tuner',
        'class_name': 'nni.ppo_tuner.ppo_tuner.PPOTuner',
        'code_sub_dir': 'ppo_tuner',
        'class_args_validator': 'nni.ppo_tuner.ppo_tuner.PPOClassArgsValidator'
    }
QuanluZhang's avatar
QuanluZhang committed
83
}
84

85
86
87
88
89
TUNERS_SUPPORTING_IMPORT_DATA = {
    'TPE',
    'Anneal',
    'GridSearch',
    'MetisTuner',
QuanluZhang's avatar
QuanluZhang committed
90
91
92
    'BOHB',
    'SMAC',
    'BatchTuner'
93
94
95
96
97
98
99
}

TUNERS_NO_NEED_TO_IMPORT_DATA = {
    'Random',
    'Hyperband'
}

100
101
102
SCHEMA_TYPE_ERROR = '%s should be %s type!'
SCHEMA_RANGE_ERROR = '%s should be in range of %s!'
SCHEMA_PATH_ERROR = '%s path not exist!'