Decentralized collaboration for the AutoRA Python package with a functional paradigm and namespace packages
AutoRA – the Automated Research Assistant – is a growing collection of python packages for running fully automated psychological experiments online. It allows the user to automate the specification of experimental conditions, data collection, and theory derivation, cycling back to specifying new experimental conditions. One primary goal of the PI was to allow unaffiliated developers to contribute new methods for generating experimental conditions, and new regression techniques for theory derivation. But taking the naïve monorepo approach would be too costly: either 1) testing all of the contributions for every change to the code – which would be too costly as some of the contributions train neural networks as part of their execution and require hours to run; or 2) would require configuring the CI so that only relevant parts of the code were tested for each pull request – which would mean a high maintenance burden. Furthermore, since this work is about applying ML to experiments run on people, it’s vital that every submission be ethically vetted before it can be part of the official release. Thus, one primary goal of our work was to allow for decentralized extensibility, so that contributors unaffiliated with the core team could easily innovate and share new functionality without leading to a high centralized maintenance and testing costs. Another was to ensure that contributions could be vetted and included easily. We’ll present how RSEs helped to establish a common interface based around a simple functional paradigm, with namespace packages spread across multiple repositories so that each contributor could be owner of and responsible for their own work, and how their contributions are integrated into the main package. We’ll also look at how we enable contributors to start their work quickly using templates.
Institutions
- John Brown University (US)
Publication Details
- Journal
- Zenodo (CERN European Organization for Nuclear Research)
- Published
- 2024-10-15
- DOI
- https://doi.org/10.5281/zenodo.13942805
- Primary Topic
- Explainable Artificial Intelligence (XAI)
- Type
- article
- Field-Weighted Citation Impact
- 0.00