bittensor.config#

Implementation of the config class, which manages the configuration of different Bittensor modules.

Module Contents#

Classes#

DefaultConfig

A Config with a set of default values.

config

Implementation of the config class, which manages the configuration of different Bittensor modules.

Attributes#

T

class bittensor.config.DefaultConfig(parser=None, args=None, strict=False, default=None)#

Bases: config

A Config with a set of default values.

Parameters:
abstract classmethod default()#

Get default config.

Return type:

T

exception bittensor.config.InvalidConfigFile#

Bases: Exception

In place of YAMLError

bittensor.config.T#
class bittensor.config.config(parser=None, args=None, strict=False, default=None)#

Bases: munch.DefaultMunch

Implementation of the config class, which manages the configuration of different Bittensor modules.

Parameters:
__is_set: Dict[str, bool]#

Translates the passed parser into a nested Bittensor config.

Parameters:
  • parser (argparse.ArgumentParser) – Command line parser object.

  • strict (bool) – If true, the command line arguments are strictly parsed.

  • args (list of str) – Command line arguments.

  • default (Optional[Any]) – Default value for the Config. Defaults to None. This default will be returned for attributes that are undefined.

Returns:

Nested config object created from parser arguments.

Return type:

config (bittensor.config)

__deepcopy__(memo)#
Return type:

config

static __parse_args__(args, parser=None, strict=False)#

Parses the passed args use the passed parser.

Parameters:
  • args (List[str]) – List of arguments to parse.

  • parser (argparse.ArgumentParser) – Command line parser object.

  • strict (bool) – If true, the command line arguments are strictly parsed.

Returns:

Namespace object created from parser arguments.

Return type:

Namespace

__repr__()#

Invertible* string-form of a Munch.

>>> b = Munch(foo=Munch(lol=True), hello=42, ponies='are pretty!')
>>> print (repr(b))
Munch({'ponies': 'are pretty!', 'foo': Munch({'lol': True}), 'hello': 42})
>>> eval(repr(b))
Munch({'ponies': 'are pretty!', 'foo': Munch({'lol': True}), 'hello': 42})
>>> with_spaces = Munch({1: 2, 'a b': 9, 'c': Munch({'simple': 5})})
>>> print (repr(with_spaces))
Munch({'a b': 9, 1: 2, 'c': Munch({'simple': 5})})
>>> eval(repr(with_spaces))
Munch({'a b': 9, 1: 2, 'c': Munch({'simple': 5})})

(*) Invertible so long as collection contents are each repr-invertible.

Return type:

str

static __split_params__(params, _config)#
Parameters:
__str__()#

Return str(self).

Return type:

str

classmethod _merge(a, b)#

Merge two configurations recursively. If there is a conflict, the value from the second configuration will take precedence.

static _remove_private_keys(d)#
copy()#

D.copy() -> a shallow copy of D

Return type:

config

is_set(param_name)#

Returns a boolean indicating whether the parameter has been set or is still the default.

Parameters:

param_name (str) –

Return type:

bool

merge(b)#

Merges the current config with another config.

Parameters:

b – Another config to merge.

classmethod merge_all(configs)#

Merge all configs in the list into one config. If there is a conflict, the value from the last configuration in the list will take precedence.

Parameters:

configs (list of config) – List of configs to be merged.

Returns:

Merged config object.

Return type:

config

to_string(items)#

Get string from items

Return type:

str

update_with_kwargs(kwargs)#

Add config to self