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

Implement Label Studio Annotator Stack Component #134

Open
1 task
strickvl opened this issue Feb 4, 2024 · 3 comments
Open
1 task

Implement Label Studio Annotator Stack Component #134

strickvl opened this issue Feb 4, 2024 · 3 comments
Assignees
Labels
enhancement New feature or request good first issue Good for newcomers

Comments

@strickvl
Copy link
Contributor

strickvl commented Feb 4, 2024

MLStacks currently supports the concept of an annotator stack component but lacks an actual implementation of such a component. This task aims to integrate Label Studio as an annotator stack component within MLStacks, enhancing the framework's capabilities in data annotation.

Task Description

Develop a deployed instance of Label Studio as part of the MLStacks framework. This involves several key steps, including updating enums and constants to recognize Label Studio as a component flavor, and creating a Terraform module for deploying Label Studio on cloud providers (AWS and/or GCP).

Expected Outcome

  • The ComponentFlavor enum in src/mlstacks/enums.py is updated to include Label Studio as an accepted annotator component flavor.
  • The constants in src/mlstacks/constants.py are updated to support annotator as a stack component, with label_studio as a permitted flavor.
  • A Terraform module is created for deploying Label Studio on AWS and/or GCP, with the deployment method chosen based on Kubernetes/Helm or VM instance options.
  • The deployment is tested to ensure it successfully deploys Label Studio, with appropriate values exported as outputs from the Terraform module and accessible via MLStacks.

Steps to Implement

  1. Update src/mlstacks/enums.py to include label_studio as a component flavor under the annotator category.
  2. Modify src/mlstacks/constants.py to recognize annotator as a stack component and add label_studio to the list of permitted flavors.
  3. Design and implement a Terraform module for deploying Label Studio, considering Kubernetes/Helm and VM instance deployment options. Reference Label Studio's installation guides for Kubernetes/Helm and VM instance deployments. (Remember to ensure that the Label Studio instance is backed by persistent storage, esp when using container-based deployments.
  4. Ensure the Terraform module exports critical deployment information (e.g., Label Studio URL, access credentials) as outputs.
  5. Conduct thorough testing of the Label Studio deployment via MLStacks on the chosen cloud provider(s), verifying functionality and access.
  6. Document the implementation process and provide usage instructions, including how to configure the Label Studio annotator stack component in MLStacks.

Additional Context

Integrating Label Studio as an annotator stack component will significantly broaden MLStacks' utility in data annotation workflows, offering users a flexible and powerful tool for labeling data across various use cases.

Code of Conduct

  • I agree to follow this project's Code of Conduct
@strickvl strickvl added enhancement New feature or request good first issue Good for newcomers labels Feb 4, 2024
@strickvl
Copy link
Contributor Author

strickvl commented Apr 3, 2024

Note this is similar to #150, but this issue would be for a deployment that was to the cloud provider of choice.

@samsmithspace
Copy link

Hi @strickvl, I'd like to work on this task.

@strickvl
Copy link
Contributor Author

@samsmithspace You're welcome to work on this! Let us know if you have any questions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request good first issue Good for newcomers
Projects
None yet
Development

No branches or pull requests

2 participants