From 25450ac82c380b3e034d0d9257366be43a13097c Mon Sep 17 00:00:00 2001 From: Hyejin Yoon <0327jane@gmail.com> Date: Wed, 17 May 2023 10:21:39 +0900 Subject: [PATCH] feat(docs): add guide on integration ML system via SDKs (#8029) Co-authored-by: socar-dini --- docs-website/sidebars.js | 1 + docs/api/tutorials/ml.md | 504 ++++++++++++++++++ .../apis/tutorials/feature-added-to-model.png | Bin 0 -> 57820 bytes .../apis/tutorials/feature-table-created.png | Bin 0 -> 74190 bytes .../tutorials/model-group-added-to-model.png | Bin 0 -> 69300 bytes .../apis/tutorials/model-group-created.png | Bin 0 -> 62516 bytes .../add_mlfeature_to_mlfeature_table.py | 43 ++ .../library/add_mlfeature_to_mlmodel.py | 44 ++ .../library/add_mlgroup_to_mlmodel.py | 43 ++ .../examples/library/create_mlfeature.py | 29 + .../library/create_mlfeature_table.py | 33 ++ .../examples/library/create_mlmodel.py | 38 ++ .../examples/library/create_mlmodel_group.py | 25 + .../examples/library/read_mlfeature.py | 13 + .../examples/library/read_mlfeature_table.py | 13 + .../examples/library/read_mlmodel.py | 13 + .../examples/library/read_mlmodel_group.py | 13 + 17 files changed, 812 insertions(+) create mode 100644 docs/api/tutorials/ml.md create mode 100644 docs/imgs/apis/tutorials/feature-added-to-model.png create mode 100644 docs/imgs/apis/tutorials/feature-table-created.png create mode 100644 docs/imgs/apis/tutorials/model-group-added-to-model.png create mode 100644 docs/imgs/apis/tutorials/model-group-created.png create mode 100644 metadata-ingestion/examples/library/add_mlfeature_to_mlfeature_table.py create mode 100644 metadata-ingestion/examples/library/add_mlfeature_to_mlmodel.py create mode 100644 metadata-ingestion/examples/library/add_mlgroup_to_mlmodel.py create mode 100644 metadata-ingestion/examples/library/create_mlfeature.py create mode 100644 metadata-ingestion/examples/library/create_mlfeature_table.py create mode 100644 metadata-ingestion/examples/library/create_mlmodel.py create mode 100644 metadata-ingestion/examples/library/create_mlmodel_group.py create mode 100644 metadata-ingestion/examples/library/read_mlfeature.py create mode 100644 metadata-ingestion/examples/library/read_mlfeature_table.py create mode 100644 metadata-ingestion/examples/library/read_mlmodel.py create mode 100644 metadata-ingestion/examples/library/read_mlmodel_group.py diff --git a/docs-website/sidebars.js b/docs-website/sidebars.js index 41073bbe3f..76466a4dce 100644 --- a/docs-website/sidebars.js +++ b/docs-website/sidebars.js @@ -318,6 +318,7 @@ module.exports = { "docs/api/tutorials/deprecation", "docs/api/tutorials/descriptions", "docs/api/tutorials/custom-properties", + "docs/api/tutorials/ml", ], }, { diff --git a/docs/api/tutorials/ml.md b/docs/api/tutorials/ml.md new file mode 100644 index 0000000000..b16f2669b3 --- /dev/null +++ b/docs/api/tutorials/ml.md @@ -0,0 +1,504 @@ +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +# ML System + +## Why Would You Integrate ML System with DataHub? + +Machine learning systems have become a crucial feature in modern data stacks. +However, the relationships between the different components of a machine learning system, such as features, models, and feature tables, can be complex. +Thus, it is essential for these systems to be discoverable to facilitate easy access and utilization by other members of the organization. + +For more information on ML entities, please refer to the following docs: + +- [MlFeature](/docs/generated/metamodel/entities/mlFeature.md) +- [MlFeatureTable](/docs/generated/metamodel/entities/mlFeatureTable.md) +- [MlModel](/docs/generated/metamodel/entities/mlModel.md) +- [MlModelGroup](/docs/generated/metamodel/entities/mlModelGroup.md) + +### Goal Of This Guide + +This guide will show you how to + +- Create ML entities: MlFeature, MlFeatureTable, MlModel, MlModelGroup +- Read ML entities: MlFeature, MlFeatureTable, MlModel, MlModelGroup +- Attach MlFeatureTable or MlModel to MlFeature + +## Prerequisites + +For this tutorial, you need to deploy DataHub Quickstart and ingest sample data. +For detailed steps, please refer to [Datahub Quickstart Guide](/docs/quickstart.md). + +## Create ML Entities + +### Create MlFeature + + + + +```python +{{ inline /metadata-ingestion/examples/library/create_mlfeature.py show_path_as_comment }} +``` + +Note that when creating a feature, you can access a list of data sources using `sources`. + + + + +### Create MlFeatureTable + + + + +```python +{{ inline /metadata-ingestion/examples/library/create_mlfeature_table.py show_path_as_comment }} +``` + +Note that when creating a feature table, you can access a list of features using `mlFeatures`. + + + + +### Create MlModel + +Please note that an MlModel represents the outcome of a single training run for a model, not the collective results of all model runs. + + + + +```python +{{ inline /metadata-ingestion/examples/library/create_mlmodel.py show_path_as_comment }} +``` + +Note that when creating a model, you can access a list of features using `mlFeatures`. +Additionally, you can access the relationship to model groups with `groups`. + + + + +### Create MlModelGroup + +Please note that an MlModelGroup serves as a container for all the runs of a single ML model. + + + + +```python +{{ inline /metadata-ingestion/examples/library/create_mlmodel_group.py show_path_as_comment }} +``` + + + + +### Expected Outcome of creating entities + +You can search the entities in DataHub UI. + +![feature-table-created](../../imgs/apis/tutorials/feature-table-created.png) + +![model-group-created](../../imgs/apis/tutorials/model-group-created.png) + +## Read ML Entities + +### Read MLFeature + + + + +```json +query { + mlFeature(urn: "urn:li:mlFeature:(test_feature_table_all_feature_dtypes,test_BOOL_LIST_feature)"){ + name + featureNamespace + description + properties { + description + dataType + version { + versionTag + } + } + } +} +``` + +Expected response: + +```json +{ + "data": { + "mlFeature": { + "name": "test_BOOL_LIST_feature", + "featureNamespace": "test_feature_table_all_feature_dtypes", + "description": null, + "properties": { + "description": null, + "dataType": "SEQUENCE", + "version": null + } + } + }, + "extensions": {} +} +``` + + + + +```json +curl --location --request POST 'http://localhost:8080/api/graphql' \ +--header 'Authorization: Bearer ' \ +--header 'Content-Type: application/json' \ +--data-raw '{ + "query": "{ mlFeature(urn: \"urn:li:mlFeature:(test_feature_table_all_feature_dtypes,test_BOOL_LIST_feature)\") { name featureNamespace description properties { description dataType version { versionTag } } } }" +}' +``` + +Expected response: + +```json +{ + "data": { + "mlFeature": { + "name": "test_BOOL_LIST_feature", + "featureNamespace": "test_feature_table_all_feature_dtypes", + "description": null, + "properties": { + "description": null, + "dataType": "SEQUENCE", + "version": null + } + } + }, + "extensions": {} +} +``` + + + + +```python +{{ inline /metadata-ingestion/examples/library/read_mlfeature.py show_path_as_comment }} +``` + + + + +### Read MLFeatureTable + + + + +```json +query { + mlFeatureTable(urn: "urn:li:mlFeatureTable:(urn:li:dataPlatform:feast,test_feature_table_all_feature_dtypes)"){ + name + description + platform { + name + } + properties { + description + mlFeatures { + name + } + } + } +} +``` + +Expected Response: + +```json +{ + "data": { + "mlFeatureTable": { + "name": "test_feature_table_all_feature_dtypes", + "description": null, + "platform": { + "name": "feast" + }, + "properties": { + "description": null, + "mlFeatures": [ + { + "name": "test_BOOL_LIST_feature" + }, + ... + { + "name": "test_STRING_feature" + } + ] + } + } + }, + "extensions": {} +} +``` + + + + +```json +curl --location --request POST 'http://localhost:8080/api/graphql' \ +--header 'Authorization: Bearer ' \ +--header 'Content-Type: application/json' \ +--data-raw '{ + "query": "{ mlFeatureTable(urn: \"urn:li:mlFeatureTable:(urn:li:dataPlatform:feast,test_feature_table_all_feature_dtypes)\") { name description platform { name } properties { description mlFeatures { name } } } }" +}' +``` + +Expected Response: + +```json +{ + "data": { + "mlFeatureTable": { + "name": "test_feature_table_all_feature_dtypes", + "description": null, + "platform": { + "name": "feast" + }, + "properties": { + "description": null, + "mlFeatures": [ + { + "name": "test_BOOL_LIST_feature" + }, + ... + { + "name": "test_STRING_feature" + } + ] + } + } + }, + "extensions": {} +} +``` + + + + +```python +{{ inline /metadata-ingestion/examples/library/read_mlfeature_table.py show_path_as_comment }} +``` + + + + +### Read MLModel + + + + +```json +query { + mlModel(urn: "urn:li:mlModel:(urn:li:dataPlatform:science,scienceModel,PROD)"){ + name + description + properties { + description + version + type + mlFeatures + groups { + urn + name + } + } + } +} +``` + +Expected Response: + +```json +{ + "data": { + "mlModel": { + "name": "scienceModel", + "description": "A sample model for predicting some outcome.", + "properties": { + "description": "A sample model for predicting some outcome.", + "version": null, + "type": "Naive Bayes classifier", + "mlFeatures": null, + "groups": [] + } + } + }, + "extensions": {} +} +``` + + + + +```json +curl --location --request POST 'http://localhost:8080/api/graphql' \ +--header 'Authorization: Bearer ' \ +--header 'Content-Type: application/json' \ +--data-raw '{ + "query": "{ mlModel(urn: \"urn:li:mlModel:(urn:li:dataPlatform:science,scienceModel,PROD)\") { name description properties { description version type mlFeatures groups { urn name } } } }" +}' +``` + +Expected Response: + +```json +{ + "data": { + "mlModel": { + "name": "scienceModel", + "description": "A sample model for predicting some outcome.", + "properties": { + "description": "A sample model for predicting some outcome.", + "version": null, + "type": "Naive Bayes classifier", + "mlFeatures": null, + "groups": [] + } + } + }, + "extensions": {} +} +``` + + + + +```python +{{ inline /metadata-ingestion/examples/library/read_mlmodel.py show_path_as_comment }} +``` + + + + +### Read MLModelGroup + + + + +```json +query { + mlModelGroup(urn: "urn:li:mlModelGroup:(urn:li:dataPlatform:science,my-model-group,PROD)"){ + name + description + platform { + name + } + properties { + description + } + } +} +``` + +Expected Response: (Note that this entity does not exist in the sample ingestion and you might want to create this entity first.) + +```json +{ + "data": { + "mlModelGroup": { + "name": "my-model-group", + "description": "my model group", + "platform": { + "name": "science" + }, + "properties": { + "description": "my model group" + } + } + }, + "extensions": {} +} +``` + + + + +```json +curl --location --request POST 'http://localhost:8080/api/graphql' \ +--header 'Authorization: Bearer ' \ +--header 'Content-Type: application/json' \ +--data-raw '{ + "query": "{ mlModelGroup(urn: \"urn:li:mlModelGroup:(urn:li:dataPlatform:science,my-model-group,PROD)\") { name description platform { name } properties { description } } }" +}' +``` + +Expected Response: (Note that this entity does not exist in the sample ingestion and you might want to create this entity first.) + +```json +{ + "data": { + "mlModelGroup": { + "name": "my-model-group", + "description": "my model group", + "platform": { + "name": "science" + }, + "properties": { + "description": "my model group" + } + } + }, + "extensions": {} +} +``` + + + + +```python +{{ inline /metadata-ingestion/examples/library/read_mlmodel_group.py show_path_as_comment }} +``` + + + + +## Add ML Entities + +### Add MlFeature to MlFeatureTable + + + + +```python +{{ inline /metadata-ingestion/examples/library/add_mlfeature_to_mlfeature_table.py show_path_as_comment }} +``` + + + + +### Add MlFeature to MLModel + + + + +```python +{{ inline /metadata-ingestion/examples/library/add_mlfeature_to_mlmodel.py show_path_as_comment }} +``` + + + + +### Add MLGroup To MLModel + + + + +```python +{{ inline /metadata-ingestion/examples/library/add_mlgroup_to_mlmodel.py show_path_as_comment }} +``` + + + + +### Expected Outcome of Adding ML Entities + +You can access to `Features` or `Group` Tab of each entity to view the added entities. + +![feature-added-to-model](../../imgs/apis/tutorials/feature-added-to-model.png) + +![model-group-added-to-model](../../imgs/apis/tutorials/model-group-added-to-model.png) diff --git a/docs/imgs/apis/tutorials/feature-added-to-model.png b/docs/imgs/apis/tutorials/feature-added-to-model.png new file mode 100644 index 0000000000000000000000000000000000000000..311506e4b27839c32d398f863e0bc9562a6ee7be GIT binary patch literal 57820 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

r%cgXw3f^X%&@f%-tZazNW%8R&tdK?%H9&vNy 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 UZ5K5;JoxXTg#7vJa|Sp5FGg^}FaQ7m literal 0 HcmV?d00001 diff --git a/docs/imgs/apis/tutorials/model-group-added-to-model.png b/docs/imgs/apis/tutorials/model-group-added-to-model.png new file mode 100644 index 0000000000000000000000000000000000000000..360b7fbb2d922046308ee29c8e06a53b84aee2d8 GIT binary patch literal 69300 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 literal 0 HcmV?d00001 diff --git a/docs/imgs/apis/tutorials/model-group-created.png b/docs/imgs/apis/tutorials/model-group-created.png new file mode 100644 index 0000000000000000000000000000000000000000..2e0fdcea4803f82bb90f05dbb4da6914afbd53fd GIT binary patch literal 62516 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 BP2>Oo literal 0 HcmV?d00001 diff --git a/metadata-ingestion/examples/library/add_mlfeature_to_mlfeature_table.py b/metadata-ingestion/examples/library/add_mlfeature_to_mlfeature_table.py new file mode 100644 index 0000000000..b8ec042bd7 --- /dev/null +++ b/metadata-ingestion/examples/library/add_mlfeature_to_mlfeature_table.py @@ -0,0 +1,43 @@ +import datahub.emitter.mce_builder as builder +import datahub.metadata.schema_classes as models +from datahub.emitter.mcp import MetadataChangeProposalWrapper +from datahub.emitter.rest_emitter import DatahubRestEmitter +from datahub.ingestion.graph.client import DatahubClientConfig, DataHubGraph +from datahub.metadata.schema_classes import MLFeatureTablePropertiesClass + +gms_endpoint = "http://localhost:8080" +# Create an emitter to DataHub over REST +emitter = DatahubRestEmitter(gms_server=gms_endpoint, extra_headers={}) + +feature_table_urn = builder.make_ml_feature_table_urn( + feature_table_name="my-feature-table", platform="feast" +) +feature_urns = [ + builder.make_ml_feature_urn( + feature_name="my-feature2", feature_table_name="my-feature-table" + ), +] + +# This code concatenates the new features with the existing features in the feature table. +# If you want to replace all existing features with only the new ones, you can comment out this line. +graph = DataHubGraph(DatahubClientConfig(server=gms_endpoint)) +feature_table_properties = graph.get_aspect( + entity_urn=feature_table_urn, aspect_type=MLFeatureTablePropertiesClass +) +if feature_table_properties: + current_features = feature_table_properties.mlFeatures + print("current_features:", current_features) + if current_features: + feature_urns += current_features + +feature_table_properties = models.MLFeatureTablePropertiesClass(mlFeatures=feature_urns) +# MCP createion +metadata_change_proposal = MetadataChangeProposalWrapper( + entityType="mlFeatureTable", + changeType=models.ChangeTypeClass.UPSERT, + entityUrn=feature_table_urn, + aspect=feature_table_properties, +) + +# Emit metadata! This is a blocking call +emitter.emit(metadata_change_proposal) diff --git a/metadata-ingestion/examples/library/add_mlfeature_to_mlmodel.py b/metadata-ingestion/examples/library/add_mlfeature_to_mlmodel.py new file mode 100644 index 0000000000..3b9c26992e --- /dev/null +++ b/metadata-ingestion/examples/library/add_mlfeature_to_mlmodel.py @@ -0,0 +1,44 @@ +import datahub.emitter.mce_builder as builder +import datahub.metadata.schema_classes as models +from datahub.emitter.mcp import MetadataChangeProposalWrapper +from datahub.emitter.rest_emitter import DatahubRestEmitter +from datahub.ingestion.graph.client import DatahubClientConfig, DataHubGraph +from datahub.metadata.schema_classes import MLModelPropertiesClass + +gms_endpoint = "http://localhost:8080" +# Create an emitter to DataHub over REST +emitter = DatahubRestEmitter(gms_server=gms_endpoint, extra_headers={}) + +model_urn = builder.make_ml_model_urn( + model_name="my-test-model", platform="science", env="PROD" +) +feature_urns = [ + builder.make_ml_feature_urn( + feature_name="my-feature3", feature_table_name="my-feature-table" + ), +] + +# This code concatenates the new features with the existing features in the model +# If you want to replace all existing features with only the new ones, you can comment out this line. +graph = DataHubGraph(DatahubClientConfig(server=gms_endpoint)) +model_properties = graph.get_aspect( + entity_urn=model_urn, aspect_type=MLModelPropertiesClass +) +if model_properties: + current_features = model_properties.mlFeatures + print("current_features:", current_features) + if current_features: + feature_urns += current_features + +model_properties = models.MLModelPropertiesClass(mlFeatures=feature_urns) + +# MCP creation +metadata_change_proposal = MetadataChangeProposalWrapper( + entityType="mlModel", + changeType=models.ChangeTypeClass.UPSERT, + entityUrn=model_urn, + aspect=model_properties, +) + +# Emit metadata! +emitter.emit(metadata_change_proposal) diff --git a/metadata-ingestion/examples/library/add_mlgroup_to_mlmodel.py b/metadata-ingestion/examples/library/add_mlgroup_to_mlmodel.py new file mode 100644 index 0000000000..7020807674 --- /dev/null +++ b/metadata-ingestion/examples/library/add_mlgroup_to_mlmodel.py @@ -0,0 +1,43 @@ +import datahub.emitter.mce_builder as builder +import datahub.metadata.schema_classes as models +from datahub.emitter.mcp import MetadataChangeProposalWrapper +from datahub.emitter.rest_emitter import DatahubRestEmitter +from datahub.ingestion.graph.client import DatahubClientConfig, DataHubGraph + +gms_endpoint = "http://localhost:8080" +# Create an emitter to DataHub over REST +emitter = DatahubRestEmitter(gms_server=gms_endpoint, extra_headers={}) + +model_group_urns = [ + builder.make_ml_model_group_urn( + group_name="my-model-group", platform="science", env="PROD" + ) +] +model_urn = builder.make_ml_model_urn( + model_name="science-model", platform="science", env="PROD" +) + +# This code concatenates the new features with the existing features in the feature table. +# If you want to replace all existing features with only the new ones, you can comment out this line. +graph = DataHubGraph(DatahubClientConfig(server=gms_endpoint)) + +target_model_properties = graph.get_aspect( + entity_urn=model_urn, aspect_type=models.MLModelPropertiesClass +) +if target_model_properties: + current_model_groups = target_model_properties.groups + print("current_model_groups:", current_model_groups) + if current_model_groups: + model_group_urns += current_model_groups + +model_properties = models.MLModelPropertiesClass(groups=model_group_urns) +# MCP createion +metadata_change_proposal = MetadataChangeProposalWrapper( + entityType="mlModel", + changeType=models.ChangeTypeClass.UPSERT, + entityUrn=model_urn, + aspect=model_properties, +) + +# Emit metadata! This is a blocking call +emitter.emit(metadata_change_proposal) diff --git a/metadata-ingestion/examples/library/create_mlfeature.py b/metadata-ingestion/examples/library/create_mlfeature.py new file mode 100644 index 0000000000..81104fdb49 --- /dev/null +++ b/metadata-ingestion/examples/library/create_mlfeature.py @@ -0,0 +1,29 @@ +import datahub.emitter.mce_builder as builder +import datahub.metadata.schema_classes as models +from datahub.emitter.mcp import MetadataChangeProposalWrapper +from datahub.emitter.rest_emitter import DatahubRestEmitter + +# Create an emitter to DataHub over REST +emitter = DatahubRestEmitter(gms_server="http://localhost:8080", extra_headers={}) + +dataset_urn = builder.make_dataset_urn( + name="fct_users_deleted", platform="hive", env="PROD" +) +feature_urn = builder.make_ml_feature_urn( + feature_table_name="my-feature-table", + feature_name="my-feature", +) + +# Create feature +metadata_change_proposal = MetadataChangeProposalWrapper( + entityType="mlFeature", + changeType=models.ChangeTypeClass.UPSERT, + entityUrn=feature_urn, + aspectName="mlFeatureProperties", + aspect=models.MLFeaturePropertiesClass( + description="my feature", sources=[dataset_urn], dataType="TEXT" + ), +) + +# Emit metadata! +emitter.emit(metadata_change_proposal) diff --git a/metadata-ingestion/examples/library/create_mlfeature_table.py b/metadata-ingestion/examples/library/create_mlfeature_table.py new file mode 100644 index 0000000000..1a8fa14237 --- /dev/null +++ b/metadata-ingestion/examples/library/create_mlfeature_table.py @@ -0,0 +1,33 @@ +import datahub.emitter.mce_builder as builder +import datahub.metadata.schema_classes as models +from datahub.emitter.mcp import MetadataChangeProposalWrapper +from datahub.emitter.rest_emitter import DatahubRestEmitter + +# Create an emitter to DataHub over REST +emitter = DatahubRestEmitter(gms_server="http://localhost:8080", extra_headers={}) + +feature_table_urn = builder.make_ml_feature_table_urn( + feature_table_name="my-feature-table", platform="feast" +) +feature_urns = [ + builder.make_ml_feature_urn( + feature_name="my-feature", feature_table_name="my-feature-table" + ), + builder.make_ml_feature_urn( + feature_name="my-feature2", feature_table_name="my-feature-table" + ), +] +feature_table_properties = models.MLFeatureTablePropertiesClass( + description="Test description", mlFeatures=feature_urns +) + +# MCP creation +metadata_change_proposal = MetadataChangeProposalWrapper( + entityType="mlFeatureTable", + changeType=models.ChangeTypeClass.UPSERT, + entityUrn=feature_table_urn, + aspect=feature_table_properties, +) + +# Emit metadata! +emitter.emit(metadata_change_proposal) diff --git a/metadata-ingestion/examples/library/create_mlmodel.py b/metadata-ingestion/examples/library/create_mlmodel.py new file mode 100644 index 0000000000..c324f8a820 --- /dev/null +++ b/metadata-ingestion/examples/library/create_mlmodel.py @@ -0,0 +1,38 @@ +import datahub.emitter.mce_builder as builder +import datahub.metadata.schema_classes as models +from datahub.emitter.mcp import MetadataChangeProposalWrapper +from datahub.emitter.rest_emitter import DatahubRestEmitter + +# Create an emitter to DataHub over REST +emitter = DatahubRestEmitter(gms_server="http://localhost:8080", extra_headers={}) +model_urn = builder.make_ml_model_urn( + model_name="my-test-model", platform="science", env="PROD" +) +model_group_urns = [ + builder.make_ml_model_group_urn( + group_name="my-model-group", platform="science", env="PROD" + ) +] +feature_urns = [ + builder.make_ml_feature_urn( + feature_name="my-feature", feature_table_name="my-feature-table" + ), + builder.make_ml_feature_urn( + feature_name="my-feature2", feature_table_name="my-feature-table" + ), +] + +metadata_change_proposal = MetadataChangeProposalWrapper( + entityType="mlModel", + changeType=models.ChangeTypeClass.UPSERT, + entityUrn=model_urn, + aspectName="mlModelProperties", + aspect=models.MLModelPropertiesClass( + description="my feature", + groups=model_group_urns, + mlFeatures=feature_urns, + ), +) + +# Emit metadata! +emitter.emit(metadata_change_proposal) diff --git a/metadata-ingestion/examples/library/create_mlmodel_group.py b/metadata-ingestion/examples/library/create_mlmodel_group.py new file mode 100644 index 0000000000..325c6e4cc3 --- /dev/null +++ b/metadata-ingestion/examples/library/create_mlmodel_group.py @@ -0,0 +1,25 @@ +import datahub.emitter.mce_builder as builder +import datahub.metadata.schema_classes as models +from datahub.emitter.mcp import MetadataChangeProposalWrapper +from datahub.emitter.rest_emitter import DatahubRestEmitter + +# Create an emitter to DataHub over REST +emitter = DatahubRestEmitter(gms_server="http://localhost:8080", extra_headers={}) +model_group_urn = builder.make_ml_model_group_urn( + group_name="my-model-group", platform="science", env="PROD" +) + + +metadata_change_proposal = MetadataChangeProposalWrapper( + entityType="mlModelGroup", + changeType=models.ChangeTypeClass.UPSERT, + entityUrn=model_group_urn, + aspectName="mlModelGroupProperties", + aspect=models.MLModelGroupPropertiesClass( + description="my model group", + ), +) + + +# Emit metadata! +emitter.emit(metadata_change_proposal) diff --git a/metadata-ingestion/examples/library/read_mlfeature.py b/metadata-ingestion/examples/library/read_mlfeature.py new file mode 100644 index 0000000000..1f6e797b21 --- /dev/null +++ b/metadata-ingestion/examples/library/read_mlfeature.py @@ -0,0 +1,13 @@ +from datahub.ingestion.graph.client import DatahubClientConfig, DataHubGraph + +# Imports for metadata model classes +from datahub.metadata.schema_classes import MLFeaturePropertiesClass + +# First we get the current owners +gms_endpoint = "http://localhost:8080" +graph = DataHubGraph(DatahubClientConfig(server=gms_endpoint)) + +urn = "urn:li:mlFeature:(test_feature_table_all_feature_dtypes,test_BOOL_feature)" +result = graph.get_aspect(entity_urn=urn, aspect_type=MLFeaturePropertiesClass) + +print(result) diff --git a/metadata-ingestion/examples/library/read_mlfeature_table.py b/metadata-ingestion/examples/library/read_mlfeature_table.py new file mode 100644 index 0000000000..893fc2c8d3 --- /dev/null +++ b/metadata-ingestion/examples/library/read_mlfeature_table.py @@ -0,0 +1,13 @@ +from datahub.ingestion.graph.client import DatahubClientConfig, DataHubGraph + +# Imports for metadata model classes +from datahub.metadata.schema_classes import MLFeatureTablePropertiesClass + +# First we get the current owners +gms_endpoint = "http://localhost:8080" +graph = DataHubGraph(DatahubClientConfig(server=gms_endpoint)) + +urn = "urn:li:mlFeatureTable:(urn:li:dataPlatform:feast,test_feature_table_all_feature_dtypes)" +result = graph.get_aspect(entity_urn=urn, aspect_type=MLFeatureTablePropertiesClass) + +print(result) diff --git a/metadata-ingestion/examples/library/read_mlmodel.py b/metadata-ingestion/examples/library/read_mlmodel.py new file mode 100644 index 0000000000..8f4f1ff114 --- /dev/null +++ b/metadata-ingestion/examples/library/read_mlmodel.py @@ -0,0 +1,13 @@ +from datahub.ingestion.graph.client import DatahubClientConfig, DataHubGraph + +# Imports for metadata model classes +from datahub.metadata.schema_classes import MLModelPropertiesClass + +# First we get the current owners +gms_endpoint = "http://localhost:8080" +graph = DataHubGraph(DatahubClientConfig(server=gms_endpoint)) + +urn = "urn:li:mlModel:(urn:li:dataPlatform:science,scienceModel,PROD)" +result = graph.get_aspect(entity_urn=urn, aspect_type=MLModelPropertiesClass) + +print(result) diff --git a/metadata-ingestion/examples/library/read_mlmodel_group.py b/metadata-ingestion/examples/library/read_mlmodel_group.py new file mode 100644 index 0000000000..03e45d4d25 --- /dev/null +++ b/metadata-ingestion/examples/library/read_mlmodel_group.py @@ -0,0 +1,13 @@ +from datahub.ingestion.graph.client import DatahubClientConfig, DataHubGraph + +# Imports for metadata model classes +from datahub.metadata.schema_classes import MLModelGroupPropertiesClass + +# First we get the current owners +gms_endpoint = "http://localhost:8080" +graph = DataHubGraph(DatahubClientConfig(server=gms_endpoint)) + +urn = "urn:li:mlModelGroup:(urn:li:dataPlatform:science,my-model-group,PROD)" +result = graph.get_aspect(entity_urn=urn, aspect_type=MLModelGroupPropertiesClass) + +print(result)