Supported machine learning providers
The Watson OpenScale service supports Watson Machine Learning as well as many third-party machine learning providers.
Use one of these supported machine learning providers to perform payload logging, feedback logging, and to measure performance accuracy, runtime bias detection, explainability, and auto-debias function as part of your model evaluation.
- Watson Machine Learning
- Azure ML Studio
- Azure ML Service
- AWS SageMaker
- Custom (The custom machine learning framework must have equivalent functionality to Watson Machine Learning.)
Support for multiple machine learning engines
Watson OpenScale supports multiple machine learning engines within a single instance. You can provision them through the Watson OpenScale dashboard configuration or the Python SDK.
Adding providers using the Watson OpenScale dashboard
- After you open Watson OpenScale, from the Configure tab, click Add machine learning provider.
- Select the provider you want to add.
- Enter the required information, such as credentials, and click Save.
Changing or updating details for machine learning providers
Click the tile menu icon and then click View & edit details.
Adding machine learning providers by using the Python SDK
You can add more than one machine learning engine to Watson OpenScale by using the Python API wos_client.service_providers.add
method.
IBM Watson Machine Learning
To add the IBM Watson Machine Learning machine learning engine, run the following command:
WML_CREDENTIALS = {
"url": "https://us-south.ml.cloud.ibm.com",
"apikey": IBM CLOUD_API_KEY
}
wos_client.service_providers.add(
name=SERVICE_PROVIDER_NAME,
description=SERVICE_PROVIDER_DESCRIPTION,
service_type=ServiceTypes.WATSON_MACHINE_LEARNING,
deployment_space_id = WML_SPACE_ID,
operational_space_id = "production",
credentials=WMLCredentialsCloud(
apikey=CLOUD_API_KEY, ## use `apikey=IAM_TOKEN` if using IAM_TOKEN to initiate client
url=WML_CREDENTIALS["url"],
instance_id=None
),
background_mode=False
).result
Microsoft Azure ML Studio
To add the Azure ML Studio machine learning engine, run the following command:
AZURE_ENGINE_CREDENTIALS = {
"client_id": "",
"client_secret": "",
"subscription_id": "",
"tenant": ""
}
wos_client.service_providers.add(
name=SERVICE_PROVIDER_NAME,
description=SERVICE_PROVIDER_DESCRIPTION,
service_type=ServiceTypes.AZURE_MACHINE_LEARNING,
#deployment_space_id = WML_SPACE_ID,
#operational_space_id = "production",
credentials=AzureCredentials(
subscription_id= AZURE_ENGINE_CREDENTIALS['subscription_id'],
client_id = AZURE_ENGINE_CREDENTIALS['client_id'],
client_secret= AZURE_ENGINE_CREDENTIALS['client_secret'],
tenant = AZURE_ENGINE_CREDENTIALS['tenant']
),
background_mode=False
).result
Amazon Sagemaker
To add the AWS Sagemaker machine learning engine, run the following command:
SAGEMAKER_ENGINE_CREDENTIALS = {
'access_key_id':””,
'secret_access_key':””,
'region': '}
wos_client.service_providers.add(
name="AWS",
description="AWS Service Provider",
service_type=ServiceTypes.AMAZON_SAGEMAKER,
credentials=SageMakerCredentials(
access_key_id=SAGEMAKER_ENGINE_CREDENTIALS['access_key_id'],
secret_access_key=SAGEMAKER_ENGINE_CREDENTIALS['secret_access_key'],
region=SAGEMAKER_ENGINE_CREDENTIALS['region']
),
background_mode=False
).result
Microsoft Azure ML Service
To add the Azure ML Service machine learning engine, run the following command:
service_type = "azure_machine_learning_service"
added_service_provider_result = wos_client.service_providers.add(
name=SERVICE_PROVIDER_NAME,
description=SERVICE_PROVIDER_DESCRIPTION,
service_type = service_type,
credentials=AzureCredentials(
subscription_id= AZURE_ENGINE_CREDENTIALS['subscription_id'],
client_id = AZURE_ENGINE_CREDENTIALS['client_id'],
client_secret= AZURE_ENGINE_CREDENTIALS['client_secret'],
tenant = AZURE_ENGINE_CREDENTIALS['tenant']
),
background_mode=False
).result
Producing a list of machine learning providers
To view a list of all the bindings, run the list
method:
client.service_providers.list()
uid | name | service_type | created |
---|---|---|---|
e88ms###-####-####-############ | My Azure ML Service engine | azure_machine_learning | 2019-04-04T09:50:33.189Z |
e88sl###-####-####-############ | My Azure ML Studio engine | azure_machine_learning | 2019-04-04T09:50:33.186Z |
e00sjl###-####-####-############ | WML instance | watson_machine_learning | 2019-03-04T09:50:33.338Z |
e43kl###-####-####-############ | My AWS SageMaker engine | sagemaker_machine_learning | 2019-04-04T09:50:33.186Z |
For information about specific machine learning engines, see the following topics:
- Add your Custom machine learning engine.
- Add your Microsoft Azure machine learning studio engine
- Add your Microsoft Azure machine learning service engine
- Add your Amazon SageMaker machine learning engine
For a coding example, see the Watson OpenScale sample notebooks.
Parent topic: Evaluating AI models with Watson OpenScale