Configuration Module#
Configuration management utilities for Rizemind.
This module provides tools for loading, transforming, and managing configuration data for Rizemind applications. It includes support for TOML configuration files, Pydantic-based configuration models, and integration with Flower’s configuration system through data transformation utilities.
The module offers two main configuration approaches:
TomlConfig: For loading configuration from TOML files with environment variable substitution
BaseConfig: A Pydantic-based model for structured configuration with validation and type safety
Additionally, it provides a comprehensive set of transformation functions to convert between different configuration formats used by the Flower federated learning framework.
- Typical usage example:
>>> # Load configuration from TOML file >>> config = TomlConfig("config.toml") >>> database_host = config.get("database.host", "localhost") >>> # Use Pydantic-based configuration >>> class MyConfig(BaseConfig): >>> host: str = "localhost" >>> port: int = 8080 >>> my_config = MyConfig(host="example.com") >>> flower_config = my_config.to_config_record()
>>> # Transform configuration data >>> nested_config = {"db": {"host": "localhost", "port": 5432}} >>> flat_config = flatten( ... nested_config ... ) # {"db.host": "localhost", "db.port": 5432}
Contents: