A lightweight library for defining and managing system configurations for scientific experimentation.
97
Pending
Does it follow best practices?
Impact
97%
1.05xAverage score across 10 eval scenarios
Pending
The risk profile of this skill
{
"context": "This criteria evaluates how effectively the engineer uses the yacs package to implement deep cloning of configurations, specifically focusing on proper usage of CfgNode for configuration management and the clone() method for creating independent configuration copies.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Uses CfgNode",
"description": "Imports and uses the CfgNode class (typically as 'from yacs.config import CfgNode as CN') to create configuration objects instead of plain dictionaries or other data structures.",
"max_score": 20
},
{
"name": "Implements clone() method",
"description": "Uses the clone() method to create independent copies of the base configuration rather than attempting manual copying, shallow copies, or other approaches.",
"max_score": 30
},
{
"name": "Nested CfgNode structure",
"description": "Creates nested configuration sections (MODEL, DATA, TRAINING) using CfgNode objects for each section, properly utilizing the hierarchical configuration capability of yacs.",
"max_score": 20
},
{
"name": "Attribute-style access",
"description": "Accesses and modifies configuration values using yacs' attribute-style access pattern (e.g., cfg.MODEL.LEARNING_RATE) or dict-style access (e.g., cfg['MODEL']['LEARNING_RATE']).",
"max_score": 15
},
{
"name": "Type-appropriate values",
"description": "Uses yacs-compatible types (str, int, float, bool, tuple, list, None, CfgNode) for all configuration values, demonstrating understanding of yacs type restrictions.",
"max_score": 15
}
]
}docs
evals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
scenario-10