Skip to main content

The Rapid Prototyping Laboratory's Workflow Execution Interface.

Project description

wei

The Workflow Execution Interface (WEI) for Autonomous Discovery/Self Driving Laboratories (AD/SDLs)

For more details and specific examples of how to use wei, please see our documentation.

Table of Contents

Usage

To get started with WEI, we recommend:

Installation

To install the ad_sdl.wei python package, you can run pip install ad_sdl.wei

To install from source, run

git clone https://github.com/ad-sdl/wei.git
cd wei
pip install -e .

Development

  1. Install Docker for your platform of choice
  2. For managing the Python Package, install PDM
  3. For automatic development checks/linting/formatting, install pre-commit
  4. Ensure you have GNU make installed (on apt-based systems like Debian and Ubuntu, sudo apt install make)
  5. Clone the repository.
  6. Within the cloned repository, run make build to build the python package and docker image locally.

For a complete list of make commands available, run make help.

Using PDM

Using Pre-commit

  • To run pre-commit checks before committing, run pre-commit run --all-files or make checks
  • NONE OF THE FOLLOWING SHOULD BE DONE REGULARLY, AND ALL CHECKS SHOULD BE PASSING BEFORE BRANCHES ARE MERGED
    • To skip linting during commits, use SKIP=ruff git commit ...
    • To skip formatting during commits, use SKIP=ruff-format git commit ...
    • To skip all pre-commit hooks, use git commit --no-verify ...
  • See pre-commit documentation for more

Building Documentation

  • You can install the documentation python dependencies with pip install -e '.[docs]' or pdm install -G docs
  • You must install Graphviz
  • You can build the docs with make docs

Contributing

Please report bugs, enhancement requests, or questions through the Issue Tracker.

If you are looking to contribute, please see CONTRIBUTING.md.

Citing

@Article{D3DD00142C,
author ="Vescovi, Rafael and Ginsburg, Tobias and Hippe, Kyle and Ozgulbas, Doga and Stone, Casey and Stroka, Abraham and Butler, Rory and Blaiszik, Ben and Brettin, Tom and Chard, Kyle and Hereld, Mark and Ramanathan, Arvind and Stevens, Rick and Vriza, Aikaterini and Xu, Jie and Zhang, Qingteng and Foster, Ian",
title  ="Towards a modular architecture for science factories",
journal  ="Digital Discovery",
year  ="2023",
pages  ="-",
publisher  ="RSC",
doi  ="10.1039/D3DD00142C",
url  ="http://dx.doi.org/10.1039/D3DD00142C",
abstract  ="Advances in robotic automation{,} high-performance computing (HPC){,} and artificial intelligence (AI) encourage us to conceive of science factories: large{,} general-purpose computation- and AI-enabled self-driving laboratories (SDLs) with the generality and scale needed both to tackle large discovery problems and to support thousands of scientists. Science factories require modular hardware and software that can be replicated for scale and (re)configured to support many applications. To this end{,} we propose a prototype modular science factory architecture in which reconfigurable modules encapsulating scientific instruments are linked with manipulators to form workcells{,} that can themselves be combined to form larger assemblages{,} and linked with distributed computing for simulation{,} AI model training and inference{,} and related tasks. Workflows that perform sets of actions on modules can be specified{,} and various applications{,} comprising workflows plus associated computational and data manipulation steps{,} can be run concurrently. We report on our experiences prototyping this architecture and applying it in experiments involving 15 different robotic apparatus{,} five applications (one in education{,} two in biology{,} two in materials){,} and a variety of workflows{,} across four laboratories. We describe the reuse of modules{,} workcells{,} and workflows in different applications{,} the migration of applications between workcells{,} and the use of digital twins{,} and suggest directions for future work aimed at yet more generality and scalability. Code and data are available at https://ad-sdl.github.io/wei2023 and in the ESI."}

License

WEI is MIT licensed, as seen in the LICENSE file.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ad_sdl_wei-0.7.2.tar.gz (59.9 kB view details)

Uploaded Source

Built Distribution

ad_sdl.wei-0.7.2-py3-none-any.whl (74.1 kB view details)

Uploaded Python 3

File details

Details for the file ad_sdl_wei-0.7.2.tar.gz.

File metadata

  • Download URL: ad_sdl_wei-0.7.2.tar.gz
  • Upload date:
  • Size: 59.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: pdm/2.20.0.post1 CPython/3.12.7 Linux/6.5.0-1025-azure

File hashes

Hashes for ad_sdl_wei-0.7.2.tar.gz
Algorithm Hash digest
SHA256 aa9ffaff002a599f4f42822042f58fdf0877843bb4a0b680bfb8f84c9f03069f
MD5 8c7f2dca906b580dd4cdd585c81d4f17
BLAKE2b-256 411400915bd8aa0da1cdd1ac8f12e3b875a8aceb2022d35a5b7c07866b2a4371

See more details on using hashes here.

File details

Details for the file ad_sdl.wei-0.7.2-py3-none-any.whl.

File metadata

  • Download URL: ad_sdl.wei-0.7.2-py3-none-any.whl
  • Upload date:
  • Size: 74.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: pdm/2.20.0.post1 CPython/3.12.7 Linux/6.5.0-1025-azure

File hashes

Hashes for ad_sdl.wei-0.7.2-py3-none-any.whl
Algorithm Hash digest
SHA256 fff2b98e7b92e92ec73a4138479c7c8f6dd8ed57360243b127ab118afbdb9f8d
MD5 8ff2ac3d092cbdd6eac0ffe702700b00
BLAKE2b-256 224e4d0bba202aff0d2f78701d9a29deebb325d043b5c33ec33ba55d230f9af2

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page