Metadata-Version: 2.4
Name: telekinesis-iris
Version: 0.0.5
Summary: Model training and inference repository
Author-email: Telekinesis <support@telekinesis.ai>
License-Expression: LicenseRef-Proprietary
Project-URL: Homepage, https://telekinesis.ai
Project-URL: Documentation, https://docs.telekinesis.ai
Project-URL: Telekinesis Examples Repository, https://github.com/telekinesis-ai/telekinesis-examples
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Operating System :: OS Independent
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development :: Libraries
Requires-Python: >=3.11
Description-Content-Type: text/markdown
Requires-Dist: loguru>=0.7.0
Requires-Dist: opencv-python>=4.7.0.72
Requires-Dist: pycocotools>=2.0.6
Requires-Dist: numpy>=1.24.0
Requires-Dist: pydantic>=2.0
Requires-Dist: requests>=2.31.0
Requires-Dist: rerun-sdk>=0.34.0
Requires-Dist: scipy>=1.10.0
Requires-Dist: torch>=2.2.0
Requires-Dist: torch-hungarian==0.1.0rc0
Requires-Dist: tensorboard>=2.16.0
Requires-Dist: tqdm>=4.66.0
Requires-Dist: transformers<6,>=5.0.0
Requires-Dist: torchvision>=0.17.0
Requires-Dist: onnx>=1.16.0
Requires-Dist: onnxscript>=0.1.0
Requires-Dist: onnxruntime>=1.18.0
Requires-Dist: torchmetrics[detection]<1.9.0,>=1.8.2
Provides-Extra: sam3-lora
Requires-Dist: einops>=0.6.0; extra == "sam3-lora"
Requires-Dist: ftfy>=6.1.0; extra == "sam3-lora"
Requires-Dist: huggingface-hub>=0.26.0; extra == "sam3-lora"
Requires-Dist: iopath>=0.1.10; extra == "sam3-lora"
Requires-Dist: regex>=2023.0.0; extra == "sam3-lora"
Requires-Dist: timm>=1.0.0; extra == "sam3-lora"
Provides-Extra: docs
Requires-Dist: mkdocs<2,>=1.6; extra == "docs"
Requires-Dist: mkdocstrings[python]<1,>=0.25; extra == "docs"
Requires-Dist: mkdocs-awesome-pages-plugin<3,>=2; extra == "docs"
Provides-Extra: dev
Requires-Dist: ruff==0.15.8; extra == "dev"
Requires-Dist: pylint==4.0.5; extra == "dev"
Requires-Dist: pytest>=8.0.0; extra == "dev"
Requires-Dist: pytest-cov>=5.0.0; extra == "dev"

<div align="center">
  <p>
    <a href="https://telekinesis.ai" target="_blank">
      <img
        width="100%"
        src="https://assets.telekinesis.ai/logo/telekinesis-banner.png"
        alt="Telekinesis"
      >
    </a>
  </p>

  <br>

  [![PyPI version](https://img.shields.io/pypi/v/telekinesis-iris)](https://pypi.org/project/telekinesis-iris/)
  [![License](https://img.shields.io/pypi/l/telekinesis-iris)](https://pypi.org/project/telekinesis-iris/)
  [![Python versions](https://img.shields.io/pypi/pyversions/telekinesis-iris)](https://pypi.org/project/telekinesis-iris/)
</div>

<p align="center">
  <a href="https://github.com/telekinesis-ai">GitHub</a>
  &nbsp;•&nbsp;
  <a href="https://www.linkedin.com/company/telekinesis-ai/">LinkedIn</a>
  &nbsp;•&nbsp;
  <a href="https://x.com/telekinesis_ai">X</a>
  &nbsp;•&nbsp;
  <a href="https://discord.gg/7NnQ3bQHqm">Discord</a>
</p>

# Telekinesis Iris

Telekinesis Iris is a computer vision platform for training, exporting, and
deploying object detection and instance segmentation models on COCO datasets.

It includes:

- Local RF-DETR and SAM3-LoRA model integrations
- Unified PyTorch training, validation, checkpointing, export, and inference
- ONNX deployment for RF-DETR and native PyTorch deployment for SAM3-LoRA
- Rerun visualization for datasets and predictions

## Release Model

Telekinesis Iris is currently in active development (pre-1.0). APIs may evolve
between minor releases. Install the latest package version for the newest
features and fixes.

## Installation

1. Install [Miniconda](https://docs.conda.io/projects/miniconda/en/latest/).

2. Create a Python 3.11 environment:

   ```bash
   conda create -n telekinesis-iris python=3.11
   ```

3. Activate the environment:

   ```bash
   conda activate telekinesis-iris
   ```

4. Install PyTorch and TorchVision for CUDA 12.8, then install the package:

   ```bash
   pip install torch torchvision --index-url https://download.pytorch.org/whl/cu128
   ```

   ```bash
   pip install telekinesis-iris
   ```

## Example

Train an RF-DETR segmentation model on a COCO dataset:

```python
from telekinesis.iris.dataset import COCODataset
from telekinesis.iris.models import RFDETR
from telekinesis.iris.trainer import Trainer

model = RFDETR(variant="seg-nano", num_classes=3, pretrained=True)
training_dataset = COCODataset(
    "dataset/train",
    transforms=model.train_transforms,
    include_masks=model.requires_masks,
)

trainer = Trainer(
    model=model,
    training_dataset=training_dataset,
    output_dir="results/seg-nano",
    epochs=10,
    batch_size=4,
)

trainer.train()
artifact_path = trainer.export()
```

## Resources

- [Telekinesis Examples](https://github.com/telekinesis-ai/telekinesis-examples)
- [Telekinesis Documentation](https://docs.telekinesis.ai)
- [Development guide](DEVELOPMENT.md)
- [Changelog](CHANGELOG.md)

## Support

For issues and questions:

- Create an [issue](https://github.com/telekinesis-ai/telekinesis-examples/issues).
- Contact `support@telekinesis.ai`.
- Join the [Telekinesis Discord](https://discord.com/invite/7NnQ3bQHqm).
