Metadata-Version: 2.4
Name: trainer-03
Version: 0.1.1
Summary: A modular, pipeline-first AI framework that unifies ML, DL, CV, NLP, and detection.
Author-email: AI Developer <developer@example.com>
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Requires-Dist: pyyaml
Provides-Extra: vision
Requires-Dist: opencv-python>=4.0.0; extra == "vision"
Requires-Dist: numpy; extra == "vision"
Provides-Extra: ml
Requires-Dist: scikit-learn>=1.0; extra == "ml"
Requires-Dist: numpy; extra == "ml"
Provides-Extra: dl
Requires-Dist: torch>=2.0; extra == "dl"
Requires-Dist: torchvision; extra == "dl"
Provides-Extra: nlp
Requires-Dist: nltk>=3.8; extra == "nlp"
Provides-Extra: yolo
Requires-Dist: ultralytics>=8.0; extra == "yolo"
Provides-Extra: all
Requires-Dist: opencv-python>=4.0.0; extra == "all"
Requires-Dist: scikit-learn>=1.0; extra == "all"
Requires-Dist: torch>=2.0; extra == "all"
Requires-Dist: torchvision; extra == "all"
Requires-Dist: nltk>=3.8; extra == "all"
Requires-Dist: ultralytics>=8.0; extra == "all"
Requires-Dist: numpy; extra == "all"

# AIForge 🚀

A modular, pipeline-first AI framework that unifies ML, DL, CV, NLP, and detection through a plugin-based architecture.

## 🧠 Core Philosophy
- **Don't build one huge framework**: Keep the core lightweight with zero heavy dependencies.
- **Plugin Ecosystem**: Dynamically load the tools you need (OpenCV, scikit-learn, PyTorch, NLTK, YOLO) only when you need them.

## 📦 Installation
AIForge is built as a monorepo. You can install it locally:

```bash
pip install -e .
```

To install specific plugin dependencies:
```bash
pip install -e .[vision,ml,dl,nlp,yolo]
# Or install everything:
pip install -e .[all]
```

## 🔥 Usage

### Python API
```python
from aiforge import Pipeline, load_plugin

# Load necessary plugins
load_plugin("vision")
load_plugin("yolo")
load_plugin("nlp")

pipe = Pipeline()
result = (
    pipe
    .add("blur", kernel=5)
    .add("detect_yolo", model_name="yolov8n.pt")
    .add("tokenize")
    .run(input_data)
)
```

### CLI
Run pipelines dynamically via YAML configuration files:

```bash
aiforge pipeline.yaml
```

**`pipeline.yaml` Example:**
```yaml
plugins:
  - vision
  - yolo
input_data: "path/to/image.jpg"
pipeline:
  - blur:
      kernel: 5
  - detect_yolo: {}
```

## 🔌 Available Plugins
- **vision**: OpenCV operations (`blur`, `grayscale`, `edge_detect`)
- **ml**: scikit-learn models (`train_rf`, `predict_rf`)
- **dl**: PyTorch integration (`tensor_conversion`, `normalize_tensor`)
- **nlp**: NLTK tools (`tokenize`, `lowercase`)
- **yolo**: Ultralytics object detection (`detect_yolo`)
