Caution
The functionality in this repository is deprecated, and the corresponding code was removed from the main Oppia repository in oppia/oppia#21356.
This repository has been archived for reference purposes, and further development on this project is not expected.
Oppia-ml is a supplementary component which is used with Oppia for training machine learning models on a separate VM instance. Oppia puts job requests for training a classifier in database. Oppia-ml picks this job requests one by one, trains classifier for these requests and stores the result of training back into database. Oppia uses this stored results to predict outcome for answers.
Oppia-ml is written in Python and uses various machine learning libraries for creating classifiers.
-
Clone this repo in folder oppia-ml.
-
Open terminal and navigate to oppia-ml folder and run:
git checkout develop
bash scripts/start.sh
- Clone this repo in oppia-ml folder of your VM instance:
git clone https://github.com/oppia/oppia-ml.git
- Install Supervisor on VM instance. Generally it can be installed by running simple pip command. You need superuser privileges to install it on VM. if this command does not work then follow instructions on official installation page.
pip install supervisor
- Navigate to oppia-ml folder in terminal and run following commands:
bash scripts/deploy.sh
- Add shared secret key in VM and in Oppia for secure communication.
- Shared key on VM is added using GCE metadata. Select the VM instance in the GCP panel, then add two key - value pairs in metadata, one for
shared_secret_key
and other isvm_id
. VM will automatically get the ID and secret from metadata. - Shared key on Oppia can be added by going to
/admin
page of your Oppia host. On this page go to the 'Config' tab where there will be one section for VMID and shared secret keys in which one can add as manyvm_id
andshared_secret_key
as needed.
If you have any feature requests or bug reports, please log them on our issue tracker.
Please report security issues directly to [email protected].
The Oppia-ml code is released under the Apache v2 license.