- Introduction
- Requirements
- Installation
- Multi-Tenancy and Subscriptions
- Pending Refactor Note
- Additional Documentation
- Maintainers
- Acknowledgments
NexusML is a multimodal AutoML platform for classification and regression tasks.
Please refer to docs/what-is-nexusml.md and docs/concepts.md for an overview of NexusML and its key features.
- Python 3.10
- Auth0 configuration for user authentication
- AWS S3 configuration if you want to use S3 as the file storage backend
You can install NexusML with pip:
pip install nexusmlNexusML is designed with multi-tenancy in mind, enabling multiple organizations (tenants) to use the platform independently within isolated workspaces. Each tenant has its own environment, where organization members can collaborate on tasks, manage data, and deploy AI models without affecting other tenants.
ℹ️ Multi-tenancy requires Auth0 for user authentication. Please refer to docs/auth0.md for instructions on setting up Auth0 for NexusML.
NexusML allows you to create and customize subscription plans, adjusting quota limits (such as storage and compute resources) to meet the specific needs of different organizations.
ℹ️ Billing and payment processing are not implemented. To use NexusML in a production environment, you will need to integrate a billing and payment system such as Stripe. To do this, you will need to override the
nexusml.api.jobs.periodic_jobs.bill()function.
The engine was originally designed as a standalone RESTful API, operating on a separate infrastructure from the main API. As a result, interactions between the engine and the main API rely heavily on JSON objects (Python dictionaries).
We are planning a comprehensive refactor to allow the engine to interact directly with database models. This change will streamline and simplify the integration between the engine and the main API.
The docs directory contains additional documentation:
- architecture.md: Describes the architecture of NexusML.
- auth0.md: Describes the Auth0 configuration for NexusML.
- concepts.md: Describes the concepts used in NexusML.
- quickstart.md: Provides a quick start guide for NexusML.
- states-and-statuses.md: Describes NexusML's states and statuses.
- what-is-nexusml.md: Provides an overview of NexusML.
NexusML is maintained by the following individuals (in alphabetical order):
- Mikel Elkano Ilintxeta (@melkilin)
- Mikel Uriz Martin (@MikelUriz)
We would like to recognize the valuable contributions of the following individuals (in alphabetical order):
- Enrique Hernández Calabrés (@ehcalabres)
- Leyre Ayllón Lafuente (@layllon)
- Marco D'Alessandro (@IoSonoMarco)
- Miguel Ángel Álvarez Fernández (@MigangalWork)
- Miguel Pérez Martínez (@MiguelPerezMartinez)