0 / 0
Go back to the English version of the documentation
Środowiska Amazon SageMaker w środowisku Watson OpenScale
Last updated: 15 cze 2023
Środowiska Amazon SageMaker w środowisku Watson OpenScale

Amazon SageMaker można używać do rejestrowania danych dotyczących ładunku i informacji zwrotnych, a także do mierzenia dokładności wydajności, wykrywania, wytłumaczalności i automatycznego debiuowania w programie IBM Watson OpenScale.

Produkt IBM Watson OpenScale w pełni obsługuje następujące środowiska Amazon SageMaker :

Tabela 1. Szczegóły obsługi środowiska

Szczegóły obsługi środowiska
Środowisko Typ problemu Typ danych
Własne Danych Strukturalne
Własne Regresja1 Strukturalne

1Obsługa modeli regresji nie obejmuje wielkości dryftu.

Dodawanie Amazon SageMaker do Watson OpenScale

Usługę Watson OpenScale można skonfigurować do pracy z produktem Amazon SageMaker przy użyciu jednej z następujących metod:

Przykładowe notebooki

W następujących notatnikach przedstawiono sposób pracy z Amazon SageMaker:

Określanie instancji usługi Amazon SageMaker ML

Pierwszym krokiem w narzędziu Watson OpenScale jest określenie instancji usługi Amazon SageMaker . Instancja usługi Amazon SageMaker służy do przechowywania modeli i wdrożeń AI.

Połącz instancję usługi Amazon SageMaker

Usługa Watson OpenScale łączy się z modelami i wdrożeniami AI w instancji usługi Amazon SageMaker . Aby połączyć usługę z usługą Watson OpenScale, przejdź do karty Konfiguruj Ikona karty konfiguracji , dodaj dostawcę uczenia maszynowego i kliknij ikonę Edytuj Zostanie wyświetlona ikona karty konfiguracji. . Oprócz nazwy i opisu oraz tego, czy środowisko Pre-production lub Production, należy podać następujące informacje specyficzne dla tego typu instancji usługi:

  • Identyfikator klucza dostępu: ID klucza dostępu AWS aws_access_key_id, który sprawdza, czy użytkownik jest uwierzytelniany i autoryzowany oraz autoryzuje wywołania na potrzeby AWS.
  • Klucz tajnego dostępu: klucz tajnego dostępu użytkownika AWS aws_secret_access_key, który jest wymagany do sprawdzenia, kto jest i do uwierzytelniania i autoryzacji wywołań, które są używane w systemie AWS.
  • Region: wprowadź region, w którym został utworzony identyfikator klucza dostępu. Klucze są przechowywane i używane w regionie, w którym zostały utworzone i nie mogą być przenoszone do innego regionu.

Teraz można wybrać wdrożone modele i skonfigurować monitory. Watson OpenScale przedstawia listę wdrożonych modeli na panelu kontrolnym Insights , na którym można kliknąć opcję Dodaj do panelu kontrolnego. Wybierz wdrożenia, które mają być monitorowane, a następnie kliknij przycisk Konfiguruj.

Więcej informacji na ten temat zawiera sekcja Konfigurowanie monitorów.

Rejestrowanie ładunku przy użyciu mechanizmu uczenia maszynowego Amazon SageMaker

Dodaj mechanizm uczenia maszynowego Amazon SageMaker

Mechanizm inny niżIBM Watson Machine Learning jest powiązany jako niestandardowy przy użyciu metadanych. Nie jest możliwa bezpośrednia integracja z usługą inną niżIBM Watson Machine Learning .

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

Aby wyświetlić subskrypcję usługi, należy uruchomić następujący kod:

client.service_providers.list()

Powiązanie SageMaker ML

Dodaj subskrypcję usługi Amazon SageMaker ML

Aby dodać subskrypcję, uruchom następujący kod:

asset_deployment_details = wos_client.service_providers.list_assets(data_mart_id=data_mart_id, service_provider_id=service_provider_id).result
asset_deployment_details
 
deployment_id='684e35eee8a479470cee05983e1f9d64'
for model_asset_details in asset_deployment_details['resources']:
    if model_asset_details['metadata']['guid']==deployment_id:
        break
 
  
aws_asset = Asset(
        asset_id=model_asset_details['entity']['asset']['asset_id'],
        name=model_asset_details['entity']['asset']['name'],
        url=model_asset_details['entity']['asset']['url'],
        asset_type=model_asset_details['entity']['asset']['asset_type'] if 'asset_type' in model_asset_details['entity']['asset'] else 'model',
        problem_type=ProblemType.BINARY_CLASSIFICATION,
        input_data_type=InputDataType.STRUCTURED,
    )
 
from ibm_watson_openscale.base_classes.watson_open_scale_v2 import ScoringEndpointRequest
deployment_scoring_endpoint = model_asset_details['entity']['scoring_endpoint']
scoring_endpoint = ScoringEndpointRequest(url = model_asset_details['entity']['scoring_endpoint']['url'] )
 
deployment = AssetDeploymentRequest(
        deployment_id=model_asset_details['metadata']['guid'],
        url=model_asset_details['metadata']['url'],
        name=model_asset_details['entity']['name'],
        #description="asset['entity']['description']",
        deployment_type=model_asset_details['entity']['type'],
        scoring_endpoint =  scoring_endpoint
    )
 
asset_properties = AssetPropertiesRequest(
        label_column="Risk",
        prediction_field='predicted_label',
        probability_fields=['score'],
        training_data_reference=training_data_reference,
        training_data_schema=None,
        input_data_schema=None,
        output_data_schema=None,
        feature_fields=feature_columns,
        categorical_fields=categorical_columns
    )
 
subscription_details = wos_client.subscriptions.add(
        data_mart_id=data_mart_id,
        service_provider_id=service_provider_id,
        asset=aws_asset,
        deployment=deployment,
        asset_properties=asset_properties,
        background_mode=False
).result

Aby uzyskać listę subskrypcji, uruchom następującą komendę:

subscription_id = subscription_details.metadata.id
subscription_id
 
details: wos_client.subscriptions.get(subscription_id).result.to_dict()

Włącz rejestrowanie ładunku

Aby włączyć rejestrowanie ładunku, uruchom następującą komendę:

request_data = {'fields': feature_columns, 
                'values': [[payload_values]]}

Aby uzyskać szczegóły rejestrowania, uruchom następującą komendę:

response_data = {'fields': list(result['predictions'][0]),
                 'values': [list(x.values()) for x in result['predictions']]}

Rejestrowanie i rejestrowanie ładunku

Aby zapisać żądanie i odpowiedź w tabeli rejestrowania ładunku, należy uruchomić następujący kod:

wos_client.data_sets.store_records(data_set_id=payload_data_set_id, request_body=[PayloadRecord(
           scoring_id=str(uuid.uuid4()),
           request=request_data,
           response=response_data,
           response_time=460
)])
 

W przypadku języków innych niż Pythonmożna również rejestrować ładunek przy użyciu interfejsu REST API.

Temat nadrzędny: Obsługiwane mechanizmy uczenia maszynowego, środowiska i modele

Generative AI search and answer
These answers are generated by a large language model in watsonx.ai based on content from the product documentation. Learn more