modyml/README.zh.md
Yuyao Huang (Sam) cd81214784 v0.1.0
2025-10-27 15:34:39 +08:00

1.5 KiB

ModYml: 模块化配置管理库

📦 项目简介

ModYml 是一个轻量级的 Python 配置管理库,专为模块化和可复用的配置设计。通过 YAML 文件支持配置继承、参数覆盖和别名系统,让复杂配置管理变得简单直观。

核心特性

  • 模块化配置:将配置拆分为可复用模块
  • 动态继承:使用 $module.key 语法引用其他配置
  • 参数覆盖:支持运行时参数修改 $module.key(param=value)
  • 别名系统:为配置项创建简短别名 key(alias)
  • 命名空间隔离:自动管理配置项的命名空间
  • 点式访问:返回 EasyDict 对象支持属性式访问

⚙️ 安装

pip install modyml

🚀 快速开始

  1. 创建模块配置 (modules/optimizers.yml):
adam:
  type: Adam
  params:
    learning_rate(lr): 0.001
    weight_decay(wd): 0.0001
  1. 创建实验配置 (experiments/E01.yml):
training:
  base_optimizer: $optimizers.adam
  custom_optimizer: $optimizers.adam(lr=0.002)
  special_optimizer($optimizers.adam):
    params:
      wd: 0.01
  1. 加载配置:
from modyml import load

config = load(
    "experiments/E01.yml",
    module_files=["modules/optimizers.yml"],
    base_dir="configs/"
)

print(config.training.base_optimizer.params.lr)  # 输出: 0.001
print(config.training.custom_optimizer.params.lr)  # 输出: 0.002
print(config.training.special_optimizer.params.wd)  # 输出: 0.01

🧪 测试

pytest tests/