Beagles-Config
A lightweight plugin that supports Python configuration with sophisticated type annotations and IDE auto-completions under Hydra framework.
Motivation
Why YAML
Hydra provides flexible and elegant ways to manage YAML configurations. Its key features make it particularly well suited to machine learning or computational neuroscience research, where experiments often differ by a few hyperparameters.
However, YAML becomes a little bit inconvenient when we need to configure a runtime object (e.g., a class instance), especially those have a lot of arguments. As YAML configurations are presented as raw text, we have to write all arguments we want to test of the object without IDE auto-completion. Life gets worse when it comes to deep learning models, which often consist of many objects that have a lot of arguments :(
Inspired by the configuration system in Detectron2, Beagles-Config
- supports using Hydra with configurations written in Python,
- enables type annotations and IDE auto-completions in configurations,
- provides the lazy instantiation mechanism that configures runtime objects in a way similar to call them.
Why called Beagles
Beagle was a brig-sloop ⛵️ on which Charles Darwin travelled around the world. It carried him to the Galápagos Islands, where his observations inspired the ideas that later presented in On the Origin of Species.
Releases
Development
v0.1.2 is the current development version of Beagles-Config.
It's mainly for self-use. Documentation is currently not available.
If you want to explore it, run
pip install beagle[config]
in command line, or
uv install beagle[config]
if uv is available.
Stable
Beagles-Config is under active development yet. No stable versions of package and documentation are provided.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file beagles_config-0.1.2.tar.gz.
File metadata
- Download URL: beagles_config-0.1.2.tar.gz
- Upload date:
- Size: 8.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
uv/0.10.11 {"installer":{"name":"uv","version":"0.10.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"22.04","id":"jammy","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3e645058cfb129ffab3ebf3c41f0e3a3ae39aa41346ee3d28fb6fe91e4005044
|
|
| MD5 |
ccbc943555308738a30ca6b972a60ade
|
|
| BLAKE2b-256 |
89978666ff2d142140383df2b2dfc7a60ce864386e21aac694fe0cefde798f4f
|
File details
Details for the file beagles_config-0.1.2-py3-none-any.whl.
File metadata
- Download URL: beagles_config-0.1.2-py3-none-any.whl
- Upload date:
- Size: 9.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
uv/0.10.11 {"installer":{"name":"uv","version":"0.10.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"22.04","id":"jammy","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a04a6c0bd4477f95cc75e716cf62153b7a2b28012d03d227e658899e24610ebe
|
|
| MD5 |
aa8dc25cc84cf5f22f3af6d0fe8c117d
|
|
| BLAKE2b-256 |
e25f692e9cef760cf4c83e9f5f7951726763e88b483399a0d3258acd6b30434b
|