Skip to content

[FEATURE] Add Experiment builder #154

@TonyKatkov89

Description

@TonyKatkov89

🚀 Feature Proposal

Add functionality of experimnet builder in order to allow users to dynamically modify experiment pipelines, enabling flexible configuration and adjustment of pipeline stages.

Motivation

Currently, experiment pipelines have predefined configurations that cannot be easily altered. This limits adaptability for users who need to tweak pipeline stages (e.g., adding, removing, or reordering steps) based on evolving experimental needs. This feature would enhance usability, support rapid prototyping, and align with the goal of making the product more flexible for diverse use cases.

Feature Description

Implement functionality (class or methods) that allow users to:

  1. View the current pipeline: Display the sequence of stages in the experiment pipeline.
  2. Modify stages: Add, remove, or reorder pipeline stages dynamically.
  3. Validate changes: Ensure modifications are compatible with the pipeline’s dependencies and data flow.
  4. Save and load configurations: Persist modified pipelines for reuse or sharing.

Potential Impacts

  • Compatibility issues: Existing pipelines may need backward compatibility checks to ensure older configurations still work.

Alternatives

  1. Static Configuration with Templates: Instead of runtime modification, provide a larger library of prebuilt pipeline templates users can switch between. Less flexible but simpler to implement.
  2. Script-Based Modification: Allow users to edit pipeline logic directly in code (e.g., Python scripts). More powerful but less user-friendly for non-technical users.
  3. Limited Modification: Restrict changes to predefined points in the pipeline rather than full flexibility. Reduces complexity but limits scope.

Additional Context

This feature would be particularly valuable for iterative experimentation workflows, such as those in machine learning or scientific research, where pipeline adjustments are common. For example, a researcher might need to insert a new data normalization step after initial results show skewed outputs.

Checklist

  • I have clearly described the feature.
  • I have outlined the motivation for the proposal.
  • I have provided a detailed description of the feature.
  • I have discussed potential impacts and alternatives.
  • I have added any additional context or screenshots.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions