diff --git a/docs/guides/reporting/model_config.md b/docs/guides/reporting/model_config.md index 959a7d00..c17e2b50 100644 --- a/docs/guides/reporting/model_config.md +++ b/docs/guides/reporting/model_config.md @@ -4,7 +4,7 @@ title: Configuring Models The [model_config.py](https://github.com/allegroai/clearml/blob/master/examples/reporting/model_config.py) example demonstrates configuring a model and defining label enumeration. Connect the configuration and label enumeration to a Task and, once -connected, **ClearML** tracks any changes to them. When **ClearML** stores a model, in any framework, **ClearML** stores +connected, **ClearML** tracks any changes to them. When **ClearML** stores a model in any framework, **ClearML** stores the configuration and label enumeration with it. When the script runs, it creates an experiment named `Model configuration example`, which is associated with the `examples` project. @@ -14,35 +14,41 @@ When the script runs, it creates an experiment named `Model configuration exampl ### Using a configuration file Connect a configuration file to a Task by calling the [Task.connect_configuration](../../references/sdk/task.md#connect_configuration) -method with the file as an argument. +method with the file location and the configuration object's name as arguments. In this example, we connect a JSON file and a YAML file +to a Task. - # Connect a local configuration file - config_file = os.path.join('data_samples', 'sample.json') - config_file = task.connect_configuration(config_file) + config_file_json = 'data_samples/sample.json' + task.connect_configuration(name="json file", configuration=config_file_json) + ... + config_file_yaml = 'data_samples/config_yaml.yaml' + task.connect_configuration(configuration=config_file_yaml, name="yaml file") -**ClearML** reports the configuration in the **ClearML Web UI**, experiment details, **CONFIGURATION** tab, **CONFIGURATION OBJECTS** -area. See the image in the next section. +**ClearML** reports the configurations in the **ClearML Web UI** experiment details **>** **CONFIGURATION** tab **>** **CONFIGURATION OBJECTS** +section. The contents of the JSON file will appear in the **json file** object, and the contents of the YAML file will appear +in the **yaml file** object, as specified in the `name` parameter of the `connect_configuration` method. + +![image](../../img/examples_reporting_config.png) ### Configuration dictionary Connect a configuration dictionary to a Task by creating a dictionary, and then calling the [Task.connect_configuration](../../references/sdk/task.md#connect_configuration) -method with the dictionary as an argument. After the configuration is connected, **ClearML** tracks changes to it. +method with the dictionary and the object name as arguments. After the configuration is connected, **ClearML** tracks changes to it. model_config_dict = { - 'value': 13.37, + 'CHANGE ME': 13.37, 'dict': {'sub_value': 'string', 'sub_integer': 11}, 'list_of_ints': [1, 2, 3, 4], } - model_config_dict = task.connect_configuration(model_config_dict) - - # We now update the dictionary after connecting it, and the changes will be tracked as well. + model_config_dict = task.connect_configuration(name='dictionary', configuration=model_config_dict) + + # Update the dictionary after connecting it, and the changes will be tracked as well. model_config_dict['new value'] = 10 - model_config_dict['value'] *= model_config_dict['new value'] + model_config_dict['CHANGE ME'] *= model_config_dict['new value'] **ClearML** reports the configuration in the **ClearML Web UI** **>** experiment details **>** **CONFIGURATION** tab **>** -**CONFIGURATION OBJECTS** area. +**CONFIGURATION OBJECTS** area **>** **dictionary** object. -![image](../../img/examples_reporting_config.png) +![image](../../img/examples_reporting_config_3.png) ## Label enumeration @@ -53,3 +59,10 @@ method with the dictionary as an argument. labels = {'background': 0, 'cat': 1, 'dog': 2} task.connect_label_enumeration(labels) +Log a local model file. + + OutputModel().update_weights('my_best_model.bin') + +The model which is stored contains the model configuration and the label enumeration. + +![image](../../img/examples_reporting_config_2.png) diff --git a/docs/img/examples_reporting_config.png b/docs/img/examples_reporting_config.png index d22a792e..4c68b666 100644 Binary files a/docs/img/examples_reporting_config.png and b/docs/img/examples_reporting_config.png differ diff --git a/docs/img/examples_reporting_config_2.png b/docs/img/examples_reporting_config_2.png new file mode 100644 index 00000000..6a727318 Binary files /dev/null and b/docs/img/examples_reporting_config_2.png differ diff --git a/docs/img/examples_reporting_config_3.png b/docs/img/examples_reporting_config_3.png new file mode 100644 index 00000000..2b495f6c Binary files /dev/null and b/docs/img/examples_reporting_config_3.png differ diff --git a/docs/webapp/webapp_exp_track_visual.md b/docs/webapp/webapp_exp_track_visual.md index 01f885f3..20ca1377 100644 --- a/docs/webapp/webapp_exp_track_visual.md +++ b/docs/webapp/webapp_exp_track_visual.md @@ -131,13 +131,13 @@ Hyperparameters are grouped by their type and appear in **CONFIGURATION** **>** #### Command line arguments -The **Args** section shows automatically logged `argparse` arguments, and all older experiments parameters, except TensorFlow Definitions. Hover over a parameter, and the type, description, and default value appear, if they were provided. +The **Args** parameter group shows automatically logged `argparse` arguments, and all older experiments parameters, except TensorFlow Definitions. Hover over a parameter, and the type, description, and default value appear, if they were provided.
View a screenshot
-![Command line arguments configuration section](../img/webapp_tracking_22.png) +![Command line arguments configuration group](../img/webapp_tracking_22.png)
@@ -145,13 +145,13 @@ The **Args** section shows automatically logged `argparse` arguments, and all ol #### Environment variables -If the `CLEARML_LOG_ENVIRONMENT` variable was set, the **Environment** section will show environment variables (see [this FAQ](../faq#track-env-vars)). +If the `CLEARML_LOG_ENVIRONMENT` variable was set, the **Environment** group will show environment variables (see [this FAQ](../faq#track-env-vars)).
View a screenshot
-![Environment variables configuration section](../img/webapp_tracking_23.png) +![Environment variables configuration group](../img/webapp_tracking_23.png)
@@ -159,27 +159,27 @@ If the `CLEARML_LOG_ENVIRONMENT` variable was set, the **Environment** section w #### Custom parameter groups -Custom sections shows parameter dictionaries, if the parameters were connected to the Task, using the `Task.connect` method, +Custom parameter groups show parameter dictionaries if the parameters were connected to the Task, using the `Task.connect` method, with a `name` argument provided.
View a screenshot
-![Custom parameters section](../img/webapp_tracking_25.png) +![Custom parameters group](../img/webapp_tracking_25.png)
#### TensorFlow Definitions -The **TF_DEFINE** sections shows automatic TensorFlow logging. +The **TF_DEFINE** parameter group shows automatic TensorFlow logging.
View a screenshot
-![TF_DEFINE parameter section](../img/webapp_tracking_26.png) +![TF_DEFINE parameter group](../img/webapp_tracking_26.png)
@@ -205,7 +205,7 @@ except experiments whose status is *Published* (read-only). **ClearML** tracks experiment (Task) model configuration objects, which appear in **Configuration Objects** **>** **General**. These objects include those that are automatically tracked, and those connected to a Task in code (see [Task.connect_configuration](../references/sdk/task.md#connect_configuration)). -**ClearML** supports providing a name for a Task model configuration (see the [name](../references/sdk/task.md#connect_configuration) +**ClearML** supports providing a name for a Task model configuration object (see the [name](../references/sdk/task.md#connect_configuration) parameter in `Task.connect_configuration`. :::important