The values in the ClearML configuration file can be overridden by environment variables, the [configuration vault](../webapp/webapp_profile.md#configuration-vault),
* Dictionary of top-level **ClearML Agent** options to configure **ClearML Agent** for Git credentials, package managers, cache management, workers, and Docker for workers.
---
**`agent.cuda_version`** (*float*)
* The CUDA version to use.
* If specified, this is the CUDA version used.
* If not specified, the CUDA version is automatically detected.
Alternatively, override this option with the environment variable `CUDA_VERSION`.
---
**`agent.cudnn_version`** (*float*)
* The cuDNN version to use.
* If specified, this is the cuDNN version used.
* If not specified, the cuDNN version is automatically detected.
Alternatively, override this option with the environment variable `CUDNN_VERSION`.
---
**`agent.docker_apt_cache`** (*string*)
* The apt (Linux package tool) cache folder for mapping Ubuntu package caching into Docker.
* The pip (Python package tool) cache folder for mapping Python package caching into Docker.
---
**`agent.enable_task_env`** (*bool*)
* Set the OS environments based on the Task's Environment section before launching the Task process.
---
**`agent.extra_docker_arguments`** (*[string]*)
* Optional arguments to pass to the Docker image. These are local for this agent, and will not be updated in the experiment's `docker_cmd` section. For example, ` ["--ipc=host", ]`.
* Set the Python version to use when creating the virtual environment, and when launching the experiment. For example, `/usr/bin/python3` or `/usr/local/bin/python3.6`.
---
**`agent.reload_config`** (*bool*)
* Indicates whether to reload the configuration each time the worker daemon is executed.
---
**`agent.translate_ssh`** (*bool*)
* Translate HTTPS communication to SSH
---
**`agent.venvs_dir`** (*string*)
* The target folder for virtual environments builds that are created when executing an experiment.
---
**`agent.worker_id`** (*string*)
* When creating a worker, assign the worker a name.
* If specified, a unique name for the worker. For example, `clearml-agent-machine1:gpu0`.
* If not specified, the following is used: `<hostname>:<process_id>`.
For example, `MyHost:12345`.
Alternatively, specify the environment variable `CLEARML_WORKER_NAME` to override this worker name.
---
**`agent.worker_name`** (*string*)
* Use to replace the hostname when creating a worker, if `agent.worker_id` is not specified. For example, if `worker_name`
is `MyMachine` and the process_id is `12345`, then the worker is name `MyMachine.12345`.
Alternatively, specify the environment variable `CLEARML_WORKER_ID` to override this worker name.
* Indicates whether to use accelerated Python virtual environment building (this is a beta feature).
The values are:
*`true` - Accelerate
*`false` - Do not accelerate (default value)
<aclass="tr_top_negative"name="api"></a>
### api section
**`api`** (*dict*)
Dictionary of configuration options for the **ClearML Server** API, web, and file servers and credentials.
---
**`api.api_server`** (*string*)
* The URL of your **ClearML** API server. For example, `https://api.MyDomain.com`.
---
**`api.web_server`** (*string*)
* The URL of your **ClearML** web server. For example, `https://app.MyDomain.com`.
---
**`api.files_server`** (*string*)
* The URL of your **ClearML** file server. For example, `https://files.MyDomain.com`.
:::warning
You must use a secure protocol. For ``api.web_server``, ``api.files_server``, and ``api.files_server``. You must use a secure protocol, "https". Do not use "http".
:::
<br/>
#### api.credentials
**`api.credentials`** (*dict*)
* Dictionary of API credentials.
Alternatively, specify the environment variable ` CLEARML_API_ACCESS_KEY / CLEARML_API_SECRET_KEY` to override these keys.
---
**`api.credentials.access_key`** (*string*)
* Your **ClearML** access key.
---
**`api.credentials.secret_key`** (*string*)
* Your **ClearML** credentials.
---
**`api.verify_certificate`** (*bool*)
* Indicates whether to verify the host SSL certificate.
The values are:
*`true` - Verify
*`false` - Do not verify.
:::warning
Set to False only if required.
:::
<aclass="tr_top_negative"name="sdk"></a>
<br/>
### sdk section
**`sdk`** (*dict*)
* Dictionary that contains configuration options for the **ClearML Python Package** and related options, including storage,
metrics, network, AWS S3 buckets and credentials, Google Cloud Storage, Azure Storage, log, and development.
<br/>
#### sdk.aws
**`sdk.aws`** (*dict*)
* Dictionary with AWS storage options.
<br/>
##### sdk.aws.boto3
**`sdk.aws.boto3`** (*dict*)
* Dictionary of AWS Storage, Boto2 options.
---
**`sdk.aws.boto3.pool_connections`** (*integer*)
* For AWS Boto3, The maximum number of Boto3 pool connections.
* For AWS Boto3, the maximum number of threads making requests for a transfer.
<br/>
##### sdk.aws.s3
**`sdk.aws.s3`** (*dict*)
* Dictionary of AWS Storage, AWS S3 options.
---
**`sdk.aws.s3.key`** (*string*)
* For AWS S3, the default access key for any bucket that is not specified in the `sdk.aws.s3.credentials` section.
---
**`sdk.aws.s3.region`** (*string*)
* For AWS S3, the default region name for any bucket that is not specified in the `sdk.aws.s3.credentials` section.
---
**`sdk.aws.s3.secret`** (*string*)
* For AWS S3, the default secret access key for any bucket that is not specified in the `sdk.aws.s3.credentials` section.
<br/>
###### sdk.aws.s3.credentials
**`sdk.aws.s3.credentials`** (*[dict]*)
* List of dictionaries, for AWS S3, each dictionary can contain the credentials for individual S3 buckets or hosts for individual buckets.
---
**`sdk.aws.s3.credentials.bucket`** (*string*)
* For AWS S3, if specifying credentials for individual buckets, then this is the bucket name for an individual bucket.
:::note
See the [AWS documentation](https://docs.aws.amazon.com/AmazonS3/latest/dev/BucketRestrictions.html) for restrictions
and limitations on bucket naming.
:::
---
**`sdk.aws.s3.credentials.host`** (*string*)
* For AWS S3, if specifying credentials for individual buckets by host, then this option is the host URL and optionally the port number.
---
**`sdk.aws.s3.credentials.key`** (*string*)
* For AWS S3:
* If specifying individual bucket, then this is the access key for the bucket.
* If specifying individual buckets by host, then this is access key for all buckets on the host.
---
**`sdk.aws.s3.credentials.multipart`** (*bool*)
* For AWS S3, if specifying credentials for individual buckets by host, then this indicates whether to allow multipart upload of a single object (object as a set of parts).
The values are:
*`true` - Enabled
*`false` - Disabled
---
**`sdk.aws.s3.credentials.secret`** (*bool*)
* For AWS S3:
* If specifying credentials for a specific bucket, then this is the secret key for the bucket.
* If specifying credentials for individual buckets by host, then this is the secret key for all buckets on the host.
---
**`sdk.aws.s3.credentials.secure`** (*string*)
* For AWS S3, if specifying credentials for individual buckets by host, then this indicates whether the host is secure.
* For development mode, indicates whether to store the uncommitted `git diff` or `hg diff` in the experiment manifest
The values are:
*`true` - Store the `diff` in the `script.requirements.diff` section
*`false` - Do not store the diff.
---
**`sdk.development.support_stopping`** (*bool*)
* For development mode, indicates whether to allow stopping an experiment if the experiment was aborted externally, its status was changed, or it was reset.