Quick Start (Admins)

As an Admin, you can manage users, manage models, and manage train & inference jobs on Rafiki.

This quickstart only highlights the key methods available to manage users. To learn about how to manage models, go to Quick Start (Model Developers), To learn about how to manage train & inference jobs, go to Quick Start (Application Developers), To learn more about what you can do on Rafiki, explore the methods of rafiki.client.Client.

We assume that you have access to a running instance of Rafiki Admin at <rafiki_host>:<admin_port> and Rafiki Admin Web at <rafiki_host>:<admin_web_port>.

Installation

  1. Install Python 3.6 such that the python and pip point to the correct installation of Python (see Installing Python)

  2. Clone the project at https://github.com/nginyc/rafiki (e.g. with Git)

  3. Within the project’s root folder, install Rafiki Client’s dependencies by running:

    pip install -r ./rafiki/requirements.txt
    

Initializing the client

Example:

from rafiki.client import Client
client = Client(admin_host='localhost', admin_port=3000)
client.login(email='superadmin@rafiki', password='rafiki')

Creating users

Examples:

client.create_user(
    email='admin@rafiki',
    password='rafiki',
    user_type='ADMIN'
)

client.create_user(
    email='model_developer@rafiki',
    password='rafiki',
    user_type='MODEL_DEVELOPER'
)

client.create_user(
    email='app_developer@rafiki',
    password='rafiki',
    user_type='APP_DEVELOPER'
)

Listing all users

Example:

client.get_users()
[{'email': 'superadmin@rafiki',
'id': 'c815fa08-ce06-467d-941b-afc27684d092',
'user_type': 'SUPERADMIN'},
{'email': 'admin@rafiki',
'id': 'cb2c0d61-acd3-4b65-a5a7-d78aa5648283',
'user_type': 'ADMIN'},
{'email': 'model_developer@rafiki',
'id': 'bfe58183-9c69-4fbd-a7b3-3fdc267b3290',
'user_type': 'MODEL_DEVELOPER'},
{'email': 'app_developer@rafiki',
'id': '958a7d65-aa1d-437f-858e-8837bb3ecf32',
'user_type': 'APP_DEVELOPER'}]

Banning a user

Example:

client.ban_user('app_developer@rafiki')