metaseq icon indicating copy to clipboard operation
metaseq copied to clipboard

feat: add .devcontainer to standardize development environment setup

Open mattmazzola opened this issue 1 year ago • 0 comments

⚠️ This PR likely won't work directly but I wanted to share code from our fork that may be modified to integrate ⚠️

Issue

(This may not be 100% accurate, but was my understanding. @tupini07 Please add comments to clarify if the description below is incorrect)

Setting up the development environment for Metaseq is non-trivial. Requiring:

  • Installation of Apex, Megatron, and FairScale
  • Hardware that supports CUDA with drivers installed

For development and execution there is additional process of

Making this process easier improves environment stability for current devs and reduces barrier to entry for new contributors.

Solution

Use VSCode .devcontainer specification to standardize the steps above!

  • Automates manual "attaching to (metaseq) container" by using metaseq image as base of .devcontainer
  • Setting of non-secret environment variables
  • Mounts appropriate drives
  • Executes python installation

Testing steps

Did not test. Although these changes should not affect operation. Using .devcontainer is entirely opt-in

Related to #726

mattmazzola avatar Jun 09 '23 16:06 mattmazzola