Manuelles Erstellen von Tracking-Entitäten - Amazon SageMaker

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Manuelles Erstellen von Tracking-Entitäten

Sie können Tracking-Entitäten für jede Immobilie manuell erstellen. Informationen zu den Tracking-Entitäten, die Amazon SageMaker automatisch erstellt, finden Sie unterAmazon SageMaker — Von Amazon erstellte Tracking-Entitäten.

Sie können allen Entitäten mit Ausnahme von Assoziationen Tags hinzufügen. Tags sind beliebige Schlüssel-Wert-Paare, die benutzerdefinierte Informationen bereitstellen. Sie können eine Liste oder eine Suchabfrage nach Schlagwörtern filtern oder sortieren. Weitere Informationen finden Sie unter Taggen vonAWS Ressourcen in der Allgemeine AWS-Referenz.

Ein Beispielnotizbuch, das zeigt, wie Lineage-Entitäten erstellt werden, finden Sie im Amazon SageMaker Lineage-Notizbuch im SageMaker GitHub Amazon-Beispiel-Repository.

Manuelles Erstellen von Entitäten

Im folgenden Verfahren wird gezeigt, wie Sie Artefakte erstellen und zwischen einem SageMaker Trainingsauftrag und einem Endpunkt verknüpfen. Führen Sie die folgenden Schritte aus:

Tracking-Entitäten und Assoziationen importieren
  1. Importieren Sie die Lineage-Tracking-Entitäten.

    import sys !{sys.executable} -m pip install -q sagemaker from sagemaker import get_execution_role from sagemaker.session import Session from sagemaker.lineage import context, artifact, association, action import boto3 boto_session = boto3.Session(region_name=region) sagemaker_client = boto_session.client("sagemaker")
  2. Erstellen Sie die Eingabe- und Ausgabeartefakte.

    code_location_arn = artifact.Artifact.create( artifact_name='source-code-location', source_uri='s3://...', artifact_type='code-location' ).artifact_arn # Similar constructs for train_data_location_arn and test_data_location_arn model_location_arn = artifact.Artifact.create( artifact_name='model-location', source_uri='s3://...', artifact_type='model-location' ).artifact_arn
  3. Trainiere das Modell und hol dirtrial_component_arn das, was den Trainingsjob darstellt.

  4. Ordnen Sie die Eingabeartefakte und Ausgabeartefakte dem Trainingsjob zu (Testkomponente).

    input_artifacts = [code_location_arn, train_data_location_arn, test_data_location_arn] for artifact_arn in input_artifacts: try: association.Association.create( source_arn=artifact_arn, destination_arn=trial_component_arn, association_type='ContributedTo' ) except: logging.info('association between {} and {} already exists', artifact_arn, trial_component_arn) output_artifacts = [model_location_arn] for artifact_arn in output_artifacts: try: association.Association.create( source_arn=trial_component_arn, destination_arn=artifact_arn, association_type='Produced' ) except: logging.info('association between {} and {} already exists', artifact_arn, trial_component_arn)
  5. Erstellen Sie den Inferenzendpunkt.

    predictor = mnist_estimator.deploy(initial_instance_count=1, instance_type='ml.m4.xlarge')
  6. Erstellen Sie den Endpunktkontext.

    from sagemaker.lineage import context endpoint = sagemaker_client.describe_endpoint(EndpointName=predictor.endpoint_name) endpoint_arn = endpoint['EndpointArn'] endpoint_context_arn = context.Context.create( context_name=predictor.endpoint_name, context_type='Endpoint', source_uri=endpoint_arn ).context_arn
  7. Ordnen Sie den Trainingsjob (Testkomponente) und den Endpunktkontext zu.

    association.Association.create( source_arn=trial_component_arn, destination_arn=endpoint_context_arn )

Manuelles Verfolgen eines Workflows

Sie können den im vorherigen Abschnitt erstellten Workflow manuell verfolgen.

Anhand des Endpunkts Amazon Resource Name (ARN) aus dem vorherigen Beispiel zeigt Ihnen das folgende Verfahren, wie Sie den Workflow bis zu den Datensätzen zurückverfolgen können, mit denen das Modell trainiert wurde, das für den Endpunkt bereitgestellt wurde. Führen Sie die folgenden Schritte aus:

Um einen Arbeitsablauf vom Endpunkt bis zur Trainingsdatenquelle zu verfolgen
  1. Importieren Sie die Tracking-Entitäten.

    import sys !{sys.executable} -m pip install -q sagemaker from sagemaker import get_execution_role from sagemaker.session import Session from sagemaker.lineage import context, artifact, association, action import boto3 boto_session = boto3.Session(region_name=region) sagemaker_client = boto_session.client("sagemaker")
  2. Rufen Sie den Endpunktkontext aus dem Endpunkt-ARN ab.

    endpoint_context_arn = sagemaker_client.list_contexts( SourceUri=endpoint_arn)['ContextSummaries'][0]['ContextArn']
  3. Rufen Sie die Testkomponente aus der Verknüpfung zwischen der Testkomponente und dem Endpunktkontext ab.

    trial_component_arn = sagemaker_client.list_associations( DestinationArn=endpoint_context_arn)['AssociationSummaries'][0]['SourceArn']
  4. Rufen Sie das Standortartefakt der Trainingsdaten aus der Verknüpfung zwischen der Testkomponente und dem Endpunktkontext ab.

    train_data_location_artifact_arn = sagemaker_client.list_associations( DestinationArn=trial_component_arn, SourceType='Model')['AssociationSummaries'][0]['SourceArn']
  5. Rufen Sie den Standort der Trainingsdaten aus dem Artefakt für den Standort der Trainingsdaten ab.

    train_data_location = sagemaker_client.describe_artifact( ArtifactArn=train_data_location_artifact_arn)['Source']['SourceUri'] print(train_data_location)

    Antwort:

    s3://sagemaker-sample-data-us-east-2/mxnet/mnist/train

Einschränkungen

Sie können eine Assoziation zwischen beliebigen Entitäten, Experimenten und Abstammungen erstellen, mit Ausnahme der folgenden:

  • Sie können keine Assoziation zwischen zwei Versuchsentitäten erstellen. Versuchsentitäten bestehen aus Experimenten, Versuchen und Versuchskomponenten.

  • Sie können eine Assoziation mit einer anderen Assoziation erstellen.

Ein Fehler tritt auf, wenn Sie versuchen, eine bereits existierende Entität zu erstellen.

Maximale Anzahl manuell erstellter Abstammungsentitäten
  • Aktionen: 3000

  • Artefakte: 6000

  • -Zuordnungen: 6000

  • Kontexte: 500

Die Anzahl der automatisch von Amazon erstellten Lineage-Entitäten ist unbegrenzt SageMaker.