Skip to main content

DashAI: a graphical toolbox for training, evaluating and deploying state-of-the-art AI models.

Project description

https://img.shields.io/pypi/v/dashai.svg Documentation Status

A graphical toolbox for training, evaluating and deploying state-of-the-art AI models

DashAI Logo

Quick installation (Pypi)

DashAI needs Python 3.10 or greater to be installed. Once that requirement is satisfied, you can install DashAI via pip:

$ pip install dashai

Then, to initialize the server and the graphical interface, run:

$ dashai

Finally, go to http://localhost:3000/ in your browser to access to the DashAI graphical interface.

Test datasets

Some datasets you can use to try DashAI are available here.

Development

To download and run the development version of DashAI, first, download the repository and switch to the developing branch:

$ git clone https://github.com/DashAISoftware/DashAI.git
$ git checkout develop

Frontend

Prepare the environment

  1. Install the LTS node version.

  2. Install Yarn package manager following the instructions located on the yarn getting started page.

  3. Move to DashAI/front and Install the project packages using yarn:

$ cd DashAI/front
$ yarn install

Running the frontend

Move to DashAI/front if you are not on that route:

$ cd DashAI/front

Then, launch the front-end development server by running the following command:

$ yarn start

Backend

Prepare the environment

First, set the python enviroment, for that you can use conda:

Later, install the requirements:

$ pip install -r requirements.txt
$ pip install -r requirements-dev.txt
$ pre-commit install

Running the Backend

There are two ways to run DashAI:

  1. By executing DashAI as a module from the root of the repository:

$ python -m DashAI
  1. Or, installing the default build:

$ pip install . -e
$ dashai

Optional Flags

Setting the local execution path

With the –local-path (alias -lp) option you can determine where DashAI will save its local files, such as datasets, experiments, runs and others. The following example shows how to set the folder in the local .DashAI directory:

$ python -m DashAI --local-path "~/.DashAI"

Setting the logging level

Through the –logging-level (alias -ll) parameter, you can set which logging level the DashAI backend server will have.

$ python -m DashAI --logging-level INFO

The possible levels available are: DEBUG, INFO, WARNING, ERROR, CRITICAL.

Note that the –logging-level not only affects the DashAI loggers, but also the datasets (which is set to the same level as DashAI) and the SQLAlchemy (which is only activated when logging level is DEBUG).

Disabling automatic browser opening

By default, DashAI will open a browser window pointing to the application after starting. If you prefer to disable this behavior, you can use the –no-browser (alias -nb) flag:

$ python -m DashAI --no-browser

Checking Available Options

You can check all available options through the command:

$ python -m DashAI --help

Database Migrations

Migrations are managed through Alembic.

They are automatically executed when starting DashAI. However, if you want to run them manually, you can do so using the following command (inside the DashAI/ folder):

$ alembic upgrade head

This command applies all pending migrations up to the latest revision.

Creating a New Migration

After modifying the database models, a new migration can be generated using:

$ alembic revision --autogenerate -m "<<Your message here>>"

Where <<Your message here>> is a brief description of the changes introduced (e.g., add model metadata table, update dataset schema).

Generated migrations are located in the alembic/versions directory and must be committed to the repository.

It is strongly recommended to review the autogenerated migration file before applying it, as Alembic may not always detect complex changes correctly.

Applying Migrations

To apply all pending migrations:

$ alembic upgrade head

To upgrade to a specific revision:

$ alembic upgrade <revision_id>

Downgrading Migrations

If you need to revert database changes, migrations can be downgraded using:

$ alembic downgrade -1

This command reverts the last applied migration.

To downgrade to a specific revision:

$ alembic downgrade <revision_id>

Checking Migration Status

To view the current migration applied to the database:

$ alembic current

To list the full migration history:

$ alembic history

Testing

Execute tests

DashAI uses pytest to perform the backend tests. To execute the backend tests

  1. Move to DashAI/back

$ cd DashAI/back
  1. Run:

$ pytest tests/

Acknowledgments

This project is sponsored by the National Center for Artificial Intelligence - CENIA (FB210017), and the Millennium Institute for Foundational Data Research - IMFD (ICN17_002).

The core of the development is carried out by students from the Computer Science Department of the University of Chile and the Federico Santa Maria Technical University.

To see the full list of contributors, visit in Contributors the DashAI repository on Github.

Collaboration Logos

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dashai-0.9.1.tar.gz (12.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dashai-0.9.1-py3-none-any.whl (12.8 MB view details)

Uploaded Python 3

File details

Details for the file dashai-0.9.1.tar.gz.

File metadata

  • Download URL: dashai-0.9.1.tar.gz
  • Upload date:
  • Size: 12.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for dashai-0.9.1.tar.gz
Algorithm Hash digest
SHA256 dcded48f3850806b65a84a3218d257f1e3def4db12d01dcfa6370988b730082d
MD5 4f5bd188d20a2635081696d451e7120c
BLAKE2b-256 668c64213293e89320410d70f4d5671bc08c8352e58edc902998fbdbffe147b2

See more details on using hashes here.

File details

Details for the file dashai-0.9.1-py3-none-any.whl.

File metadata

  • Download URL: dashai-0.9.1-py3-none-any.whl
  • Upload date:
  • Size: 12.8 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for dashai-0.9.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e0637fb670c029e5be6848e10040d55d0ab1c279a383ee3232cfa86e346f5908
MD5 bc2e5643eeb35168fa879a8c7e7678a9
BLAKE2b-256 1743b9a713510c15bfb1fcdfb59d3753c85fc1bad642b96a6241c34a967a9e62

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page