FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

mlrequest/mlrequest-python at 557bc090f5e98a67d497170bcbc76f873ce3d5f6 · GitHub

Repository navigation

About

Python wrapper for the mlrequest machine learning API

Resources

Stars

1 star

Watchers

1 watching

Forks

Latest commit

 

History

17 Commits

Folders and files

Repository files navigation

Getting started

mlrequest-python is a Python client for the mlrequest machine learning API. The client allows you to do a few significant things with minimal code.

  • Deploy latency-routed scikit-learn and online machine learning models to 5 data centers around the world, providing < 60ms global response time and automatic failover.
  • Get thousands of model predictions per second
  • Train online models with thousands of training examples per second

You will need an API key to get started with mlrequest-python. You can obtain one for free that provides 5,000 monthly model transactions at https://mlrequest.com/signup.html. The free plan is limited to the deployment of a single online learning model or scikit-learn model file less than 1 MB in size. Scikit-learn model transactions are prioritized for paid accounts, and will generally receive up to 50ms faster response time than free accounts.

For more transactions, larger scikit-learn model files (up to 100 MB), more models, and faster scikit-learn response times, see our paid plans at https://mlrequest.com/pricing.html. Check out our documentation for more information.

Install

pip install mlrequest

Scikit-Learn

Create and Deploy a Scikit-Learn Model

from sklearn.ensemble import RandomForestClassifier
from mlrequest import SKLearn

clf = RandomForestClassifier()
clf.fit(X, y)

sklearn = SKLearn('your-api-key')
sklearn.deploy(clf, 'rf-model-name')

#Make predictions
pred = sklearn.predict('rf-model-name')

Online learning

Create a Model

Models are created automatically by calling one of the model endpoints below.

Classifier

Currently classification is limited to logistic regression. Email support@mlrequest.com to request other online classifier models.

from mlrequest import Classifier
classifier = Classifier('your-api-key')

# Learn single
training_data = {'features': {'feature1': 23.1, 'feature2': 'some-value'}, 'label': 1}
# Learn batch
training_data = [{'features': {'feature1': 23.1, 'feature2': 'some-value'}, 'label': 1}, ...]

r = classifier.learn(training_data=training_data, model_name='clf-model-name', class_count=2)
r.content # A single response or list of responses

# Predict single
features = {'feature1': 23.1, 'feature2': 'some-value'}
# Predict batch
features = [{'feature1': 23.1, 'feature2': 'some-value'}, ...]

r = classifier.predict(features=features, model_name='clf-model-name', class_count=2)
r.predict_result # A single predicted class or a list of predicted classes

Regression

Currently regression is limited to linear regression. Email support@mlrequest.com to request other online regression models.

from mlrequest import Regression
regression = Regression('your-api-key')

# Learn single
training_data = {'features': {'feature1': 23.1, 'feature2': 'some-value'}, 'label': 1.25}
# Learn batch
training_data = [{'features': {'feature1': 23.1, 'feature2': 'some-value'}, 'label': 1.25}, ...]

r = regression.learn(training_data=training_data, model_name='reg-model-name')
r.content # A single response or list of responses

# Predict single
features = {'feature1': 23.1, 'feature2': 'some-value'}
# Predict batch
features = [{'feature1': 23.1, 'feature2': 'some-value'}, ...]

r = regression.predict(features=features, model_name='reg-model-name')
r.predict_result # A single predicted value or a list of predicted values

Reinforcement Learning

from mlrequest import RL
rl = RL('your-api-key')

# Predict
# Note: epsilon, and action_list fields are optional - see the docs at https://docs.mlrequest.com for more information
features = {'feature1': 23.1, 'feature2': 'some-value'}

r = rl.predict(features=features, model_name='rl-model-name', session_id='some-session-id', negative_reward=0, action_count=2)
r.predict_result # A list of actions, ordered by rank (choose r.predict_data[0] for the best action)

# Reward - important note: only the first action from predict_data should be rewarded. Other actions can be used but should not be rewarded.
r = rl.reward(reward=1, model_name='rl-model-name', session_id='some-session-id')
r.content # A single response

Account

from mlrequest import Account
account = Account('your-api-key')

# Get account information
r = account.get_details()
r.content # Account info response

# Delete a model
r = account.delete_model(model_name='some-model-name')
r.content # Delete success response

About

Python wrapper for the mlrequest machine learning API

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages


Back | FazBrowse Home | New Git URL