HashSlap-Summer-of-Code/ml-core

Build a Plugin-Based Architecture for ML Algorithm Extensions

オープン

#13 opened on 2025/06/18

 (0 件のコメント) (0 件のリアクション) (0 人の担当者)Jupyter Notebook (11 件のフォーク)auto 404
Advancedenhancementhacktoberfesthssoc

Repository metrics

Stars
 (3 個のスター)
PR merge metrics
 (30d に merged PR はありません)

説明

Description:
Refactor the repository to follow a plugin-based architecture where models, preprocessors, and evaluators can be plugged in dynamically. This makes the project scalable and flexible for advanced experimentation.

Expected Tasks:

  • Create a plugin_registry.py to manage discovery and registration of components.
  • Define base classes/interfaces like BaseModel, BasePreprocessor, and BaseEvaluator.
  • Add a decorator or registration function to auto-register components into a central registry.
  • Refactor at least three models (e.g., KNN, Perceptron, Naive Bayes) to follow the plugin system.
  • Provide a dynamic way to load and instantiate registered models by name or type.
  • Update training scripts to use models through the registry instead of hardcoded imports.
  • Write a guide in docs/PLUGIN_GUIDE.md explaining how to create and register a new plugin.
  • Add error handling and graceful failure if a plugin is missing or incompatible.

Stretch Tasks:

  • Allow loading plugins from external .py files in a plugins/ folder.
  • Add YAML or JSON-based pipeline configuration for training workflows.
  • Create a CLI command to list all available registered plugins.

コントリビューターガイド