Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Document how to integrate Replicate with configuration libraries #490

Open
bfirsh opened this issue Jan 12, 2021 · 1 comment
Open

Document how to integrate Replicate with configuration libraries #490

bfirsh opened this issue Jan 12, 2021 · 1 comment
Labels
area/documentation Improvements or additions to documentation

Comments

@bfirsh
Copy link
Member

bfirsh commented Jan 12, 2021

Replicate is intentionally not opinionated about how you specific and store hyperparams. It just records a dict that can come from any source (CLI arguments, training platform library, configuration library, etc). And, if that system stores params in a file, Replicate can record that file too.

However, just using CLI arguments as suggested in the tutorial doesn't scale very well. Libraries such as gin, Omega, Spock, etc, make this much more organized and scalable.

We should document how to use these libraries with Replicate.

Future

At some point this we might want to integrate this sort of thing with Replicate, or integrate deeply with another library. This will make it possible to do things like automatically reproducing an experiment.

See also

@bfirsh bfirsh added the area/documentation Improvements or additions to documentation label Jan 12, 2021
@ncilfone
Copy link

From #415

Something I think that would be great is some lightweight documentation showing how to integrate Replicate with configuration libraries. I've created an issue to track that. If you wanted to help out with that, that would be amazing!

I can absolutely help with this. Should be quite simple seeing that since Replicate isn't opinionated at all and the default is to stuff it all in a dictionary. I know that both Spock and OmegaConf return the configurations as a derived class of the standard library Namespace which can easily be converted to a dictionary (seeing as I'm the author of Spock I know the conversion to dict is already natively built into the API docs).

Seems like a good place to start by showing an example that integrates Spock or OmegaConf natively within the Python code and then just dumping/converting the configuration to a dict to shim it into the Replicate API...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/documentation Improvements or additions to documentation
Projects
None yet
Development

No branches or pull requests

2 participants