From c8b653f9aa6937aea45353337aa15d4f1eaff06c Mon Sep 17 00:00:00 2001 From: awstools Date: Thu, 27 Jun 2024 18:14:01 +0000 Subject: [PATCH] feat(client-sagemaker): Add capability for Admins to customize Studio experience for the user by showing or hiding Apps and MLTools. --- .../src/commands/CreateDomainCommand.ts | 8 + .../src/commands/CreateProjectCommand.ts | 2 +- .../src/commands/CreateUserProfileCommand.ts | 8 + .../src/commands/DescribeDomainCommand.ts | 8 + .../commands/DescribeUserProfileCommand.ts | 8 + .../src/commands/ListModelsCommand.ts | 3 +- .../src/commands/UpdateDomainCommand.ts | 8 + .../src/commands/UpdateUserProfileCommand.ts | 8 + .../client-sagemaker/src/models/models_0.ts | 4 +- .../client-sagemaker/src/models/models_1.ts | 100 ++++++------- .../client-sagemaker/src/models/models_2.ts | 139 +++++++----------- .../client-sagemaker/src/models/models_3.ts | 120 ++++++++++----- .../client-sagemaker/src/models/models_4.ts | 40 ++++- .../src/protocols/Aws_json1_1.ts | 52 ++++++- codegen/sdk-codegen/aws-models/sagemaker.json | 127 +++++++++++++++- 15 files changed, 449 insertions(+), 186 deletions(-) diff --git a/clients/client-sagemaker/src/commands/CreateDomainCommand.ts b/clients/client-sagemaker/src/commands/CreateDomainCommand.ts index 72161200756a..56f1f8689f46 100644 --- a/clients/client-sagemaker/src/commands/CreateDomainCommand.ts +++ b/clients/client-sagemaker/src/commands/CreateDomainCommand.ts @@ -243,6 +243,14 @@ export interface CreateDomainCommandOutput extends CreateDomainResponse, __Metad * }, * }, * ], + * StudioWebPortalSettings: { // StudioWebPortalSettings + * HiddenMlTools: [ // HiddenMlToolsList + * "DataWrangler" || "FeatureStore" || "EmrClusters" || "AutoMl" || "Experiments" || "Training" || "ModelEvaluation" || "Pipelines" || "Models" || "JumpStart" || "InferenceRecommender" || "Endpoints" || "Projects", + * ], + * HiddenAppTypes: [ // HiddenAppTypesList + * "JupyterServer" || "KernelGateway" || "DetailedProfiler" || "TensorBoard" || "CodeEditor" || "JupyterLab" || "RStudioServerPro" || "RSessionGateway" || "Canvas", + * ], + * }, * }, * DomainSettings: { // DomainSettings * SecurityGroupIds: [ // DomainSecurityGroupIds diff --git a/clients/client-sagemaker/src/commands/CreateProjectCommand.ts b/clients/client-sagemaker/src/commands/CreateProjectCommand.ts index 878cf4280b56..3ff8ee63cefd 100644 --- a/clients/client-sagemaker/src/commands/CreateProjectCommand.ts +++ b/clients/client-sagemaker/src/commands/CreateProjectCommand.ts @@ -5,7 +5,7 @@ import { Command as $Command } from "@smithy/smithy-client"; import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; -import { CreateProjectInput, CreateProjectOutput } from "../models/models_1"; +import { CreateProjectInput, CreateProjectOutput } from "../models/models_2"; import { de_CreateProjectCommand, se_CreateProjectCommand } from "../protocols/Aws_json1_1"; import { SageMakerClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../SageMakerClient"; diff --git a/clients/client-sagemaker/src/commands/CreateUserProfileCommand.ts b/clients/client-sagemaker/src/commands/CreateUserProfileCommand.ts index 9845825e8721..a6da9eca3ffd 100644 --- a/clients/client-sagemaker/src/commands/CreateUserProfileCommand.ts +++ b/clients/client-sagemaker/src/commands/CreateUserProfileCommand.ts @@ -214,6 +214,14 @@ export interface CreateUserProfileCommandOutput extends CreateUserProfileRespons * }, * }, * ], + * StudioWebPortalSettings: { // StudioWebPortalSettings + * HiddenMlTools: [ // HiddenMlToolsList + * "DataWrangler" || "FeatureStore" || "EmrClusters" || "AutoMl" || "Experiments" || "Training" || "ModelEvaluation" || "Pipelines" || "Models" || "JumpStart" || "InferenceRecommender" || "Endpoints" || "Projects", + * ], + * HiddenAppTypes: [ // HiddenAppTypesList + * "JupyterServer" || "KernelGateway" || "DetailedProfiler" || "TensorBoard" || "CodeEditor" || "JupyterLab" || "RStudioServerPro" || "RSessionGateway" || "Canvas", + * ], + * }, * }, * }; * const command = new CreateUserProfileCommand(input); diff --git a/clients/client-sagemaker/src/commands/DescribeDomainCommand.ts b/clients/client-sagemaker/src/commands/DescribeDomainCommand.ts index c11f44e5b0f4..da8d906db679 100644 --- a/clients/client-sagemaker/src/commands/DescribeDomainCommand.ts +++ b/clients/client-sagemaker/src/commands/DescribeDomainCommand.ts @@ -215,6 +215,14 @@ export interface DescribeDomainCommandOutput extends DescribeDomainResponse, __M * // }, * // }, * // ], + * // StudioWebPortalSettings: { // StudioWebPortalSettings + * // HiddenMlTools: [ // HiddenMlToolsList + * // "DataWrangler" || "FeatureStore" || "EmrClusters" || "AutoMl" || "Experiments" || "Training" || "ModelEvaluation" || "Pipelines" || "Models" || "JumpStart" || "InferenceRecommender" || "Endpoints" || "Projects", + * // ], + * // HiddenAppTypes: [ // HiddenAppTypesList + * // "JupyterServer" || "KernelGateway" || "DetailedProfiler" || "TensorBoard" || "CodeEditor" || "JupyterLab" || "RStudioServerPro" || "RSessionGateway" || "Canvas", + * // ], + * // }, * // }, * // DomainSettings: { // DomainSettings * // SecurityGroupIds: [ // DomainSecurityGroupIds diff --git a/clients/client-sagemaker/src/commands/DescribeUserProfileCommand.ts b/clients/client-sagemaker/src/commands/DescribeUserProfileCommand.ts index 43023f9dcf44..3859179d61bc 100644 --- a/clients/client-sagemaker/src/commands/DescribeUserProfileCommand.ts +++ b/clients/client-sagemaker/src/commands/DescribeUserProfileCommand.ts @@ -214,6 +214,14 @@ export interface DescribeUserProfileCommandOutput extends DescribeUserProfileRes * // }, * // }, * // ], + * // StudioWebPortalSettings: { // StudioWebPortalSettings + * // HiddenMlTools: [ // HiddenMlToolsList + * // "DataWrangler" || "FeatureStore" || "EmrClusters" || "AutoMl" || "Experiments" || "Training" || "ModelEvaluation" || "Pipelines" || "Models" || "JumpStart" || "InferenceRecommender" || "Endpoints" || "Projects", + * // ], + * // HiddenAppTypes: [ // HiddenAppTypesList + * // "JupyterServer" || "KernelGateway" || "DetailedProfiler" || "TensorBoard" || "CodeEditor" || "JupyterLab" || "RStudioServerPro" || "RSessionGateway" || "Canvas", + * // ], + * // }, * // }, * // }; * diff --git a/clients/client-sagemaker/src/commands/ListModelsCommand.ts b/clients/client-sagemaker/src/commands/ListModelsCommand.ts index 300c9654e4e1..a292e5cf75a3 100644 --- a/clients/client-sagemaker/src/commands/ListModelsCommand.ts +++ b/clients/client-sagemaker/src/commands/ListModelsCommand.ts @@ -5,7 +5,8 @@ import { Command as $Command } from "@smithy/smithy-client"; import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; -import { ListModelsInput, ListModelsOutput } from "../models/models_3"; +import { ListModelsInput } from "../models/models_3"; +import { ListModelsOutput } from "../models/models_4"; import { de_ListModelsCommand, se_ListModelsCommand } from "../protocols/Aws_json1_1"; import { SageMakerClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../SageMakerClient"; diff --git a/clients/client-sagemaker/src/commands/UpdateDomainCommand.ts b/clients/client-sagemaker/src/commands/UpdateDomainCommand.ts index 098024d0095d..cf4c5aeadb74 100644 --- a/clients/client-sagemaker/src/commands/UpdateDomainCommand.ts +++ b/clients/client-sagemaker/src/commands/UpdateDomainCommand.ts @@ -199,6 +199,14 @@ export interface UpdateDomainCommandOutput extends UpdateDomainResponse, __Metad * }, * }, * ], + * StudioWebPortalSettings: { // StudioWebPortalSettings + * HiddenMlTools: [ // HiddenMlToolsList + * "DataWrangler" || "FeatureStore" || "EmrClusters" || "AutoMl" || "Experiments" || "Training" || "ModelEvaluation" || "Pipelines" || "Models" || "JumpStart" || "InferenceRecommender" || "Endpoints" || "Projects", + * ], + * HiddenAppTypes: [ // HiddenAppTypesList + * "JupyterServer" || "KernelGateway" || "DetailedProfiler" || "TensorBoard" || "CodeEditor" || "JupyterLab" || "RStudioServerPro" || "RSessionGateway" || "Canvas", + * ], + * }, * }, * DomainSettingsForUpdate: { // DomainSettingsForUpdate * RStudioServerProDomainSettingsForUpdate: { // RStudioServerProDomainSettingsForUpdate diff --git a/clients/client-sagemaker/src/commands/UpdateUserProfileCommand.ts b/clients/client-sagemaker/src/commands/UpdateUserProfileCommand.ts index febaf3a696cc..a537de9c0da2 100644 --- a/clients/client-sagemaker/src/commands/UpdateUserProfileCommand.ts +++ b/clients/client-sagemaker/src/commands/UpdateUserProfileCommand.ts @@ -200,6 +200,14 @@ export interface UpdateUserProfileCommandOutput extends UpdateUserProfileRespons * }, * }, * ], + * StudioWebPortalSettings: { // StudioWebPortalSettings + * HiddenMlTools: [ // HiddenMlToolsList + * "DataWrangler" || "FeatureStore" || "EmrClusters" || "AutoMl" || "Experiments" || "Training" || "ModelEvaluation" || "Pipelines" || "Models" || "JumpStart" || "InferenceRecommender" || "Endpoints" || "Projects", + * ], + * HiddenAppTypes: [ // HiddenAppTypesList + * "JupyterServer" || "KernelGateway" || "DetailedProfiler" || "TensorBoard" || "CodeEditor" || "JupyterLab" || "RStudioServerPro" || "RSessionGateway" || "Canvas", + * ], + * }, * }, * }; * const command = new UpdateUserProfileCommand(input); diff --git a/clients/client-sagemaker/src/models/models_0.ts b/clients/client-sagemaker/src/models/models_0.ts index 67c70b29b32a..f38529c48a31 100644 --- a/clients/client-sagemaker/src/models/models_0.ts +++ b/clients/client-sagemaker/src/models/models_0.ts @@ -8938,7 +8938,7 @@ export interface ClarifyExplainerConfig { /** *

Defines the configuration for attaching an additional Amazon Elastic Block Store (EBS) - * volume to each instance of the SageMaker HyperPod cluster instance group.

+ * volume to each instance of the SageMaker HyperPod cluster instance group. To learn more, see SageMaker HyperPod release notes: June 20, 2024.

* @public */ export interface ClusterEbsVolumeConfig { @@ -8954,7 +8954,7 @@ export interface ClusterEbsVolumeConfig { /** *

Defines the configuration for attaching additional storage to the instances in the - * SageMaker HyperPod cluster instance group.

+ * SageMaker HyperPod cluster instance group. To learn more, see SageMaker HyperPod release notes: June 20, 2024.

* @public */ export type ClusterInstanceStorageConfig = diff --git a/clients/client-sagemaker/src/models/models_1.ts b/clients/client-sagemaker/src/models/models_1.ts index 5845be0af009..761eca3e81df 100644 --- a/clients/client-sagemaker/src/models/models_1.ts +++ b/clients/client-sagemaker/src/models/models_1.ts @@ -7,6 +7,7 @@ import { AppNetworkAccessType, AppSecurityGroupManagement, AppSpecification, + AppType, AsyncInferenceConfig, AthenaDatasetDefinition, AuthMode, @@ -2025,6 +2026,49 @@ export const StudioWebPortal = { */ export type StudioWebPortal = (typeof StudioWebPortal)[keyof typeof StudioWebPortal]; +/** + * @public + * @enum + */ +export const MlTools = { + AUTO_ML: "AutoMl", + DATA_WRANGLER: "DataWrangler", + EMR_CLUSTERS: "EmrClusters", + ENDPOINTS: "Endpoints", + EXPERIMENTS: "Experiments", + FEATURE_STORE: "FeatureStore", + INFERENCE_RECOMMENDER: "InferenceRecommender", + JUMP_START: "JumpStart", + MODELS: "Models", + MODEL_EVALUATION: "ModelEvaluation", + PIPELINES: "Pipelines", + PROJECTS: "Projects", + TRAINING: "Training", +} as const; + +/** + * @public + */ +export type MlTools = (typeof MlTools)[keyof typeof MlTools]; + +/** + *

Studio settings. If these settings are applied on a user level, they take priority over the settings applied on a domain level.

+ * @public + */ +export interface StudioWebPortalSettings { + /** + *

The machine learning tools that are hidden from the Studio left navigation pane.

+ * @public + */ + HiddenMlTools?: MlTools[]; + + /** + *

The Applications supported in Studio that are hidden from the Studio left navigation pane.

+ * @public + */ + HiddenAppTypes?: AppType[]; +} + /** *

The TensorBoard app settings.

* @public @@ -2161,6 +2205,12 @@ export interface UserSettings { * @public */ CustomFileSystemConfigs?: CustomFileSystemConfig[]; + + /** + *

Studio settings. If these settings are applied on a user level, they take priority over the settings applied on a domain level.

+ * @public + */ + StudioWebPortalSettings?: StudioWebPortalSettings; } /** @@ -12673,56 +12723,6 @@ export interface ServiceCatalogProvisioningDetails { ProvisioningParameters?: ProvisioningParameter[]; } -/** - * @public - */ -export interface CreateProjectInput { - /** - *

The name of the project.

- * @public - */ - ProjectName: string | undefined; - - /** - *

A description for the project.

- * @public - */ - ProjectDescription?: string; - - /** - *

The product ID and provisioning artifact ID to provision a service catalog. The provisioning - * artifact ID will default to the latest provisioning artifact ID of the product, if you don't - * provide the provisioning artifact ID. For more information, see What is Amazon Web Services Service - * Catalog.

- * @public - */ - ServiceCatalogProvisioningDetails: ServiceCatalogProvisioningDetails | undefined; - - /** - *

An array of key-value pairs that you want to use to organize and track your Amazon Web Services - * resource costs. For more information, see Tagging Amazon Web Services resources in the Amazon Web Services General Reference Guide.

- * @public - */ - Tags?: Tag[]; -} - -/** - * @public - */ -export interface CreateProjectOutput { - /** - *

The Amazon Resource Name (ARN) of the project.

- * @public - */ - ProjectArn: string | undefined; - - /** - *

The ID of the new project.

- * @public - */ - ProjectId: string | undefined; -} - /** * @internal */ diff --git a/clients/client-sagemaker/src/models/models_2.ts b/clients/client-sagemaker/src/models/models_2.ts index 093a21bd3553..7cc05d741af5 100644 --- a/clients/client-sagemaker/src/models/models_2.ts +++ b/clients/client-sagemaker/src/models/models_2.ts @@ -138,7 +138,6 @@ import { MonitoringOutputConfig, MonitoringResources, MonitoringStoppingCondition, - MonitoringType, NeoVpcConfig, OfflineStoreConfig, OnlineStoreConfig, @@ -154,6 +153,7 @@ import { RecommendationJobStoppingConditions, RecommendationJobType, RetryStrategy, + ServiceCatalogProvisioningDetails, ShadowModeConfig, SkipModelValidation, SourceAlgorithmSpecification, @@ -163,6 +163,56 @@ import { VendorGuidance, } from "./models_1"; +/** + * @public + */ +export interface CreateProjectInput { + /** + *

The name of the project.

+ * @public + */ + ProjectName: string | undefined; + + /** + *

A description for the project.

+ * @public + */ + ProjectDescription?: string; + + /** + *

The product ID and provisioning artifact ID to provision a service catalog. The provisioning + * artifact ID will default to the latest provisioning artifact ID of the product, if you don't + * provide the provisioning artifact ID. For more information, see What is Amazon Web Services Service + * Catalog.

+ * @public + */ + ServiceCatalogProvisioningDetails: ServiceCatalogProvisioningDetails | undefined; + + /** + *

An array of key-value pairs that you want to use to organize and track your Amazon Web Services + * resource costs. For more information, see Tagging Amazon Web Services resources in the Amazon Web Services General Reference Guide.

+ * @public + */ + Tags?: Tag[]; +} + +/** + * @public + */ +export interface CreateProjectOutput { + /** + *

The Amazon Resource Name (ARN) of the project.

+ * @public + */ + ProjectArn: string | undefined; + + /** + *

The ID of the new project.

+ * @public + */ + ProjectId: string | undefined; +} + /** *

The collection of ownership settings for a space.

* @public @@ -2514,7 +2564,7 @@ export interface DeleteHubContentReferenceRequest { HubName: string | undefined; /** - *

The type of hub content to delete.

+ *

The type of hub content reference to delete. The only supported type of hub content reference to delete is ModelReference.

* @public */ HubContentType: HubContentType | undefined; @@ -9586,91 +9636,6 @@ export interface DescribeMonitoringScheduleRequest { MonitoringScheduleName: string | undefined; } -/** - * @public - * @enum - */ -export const ExecutionStatus = { - COMPLETED: "Completed", - COMPLETED_WITH_VIOLATIONS: "CompletedWithViolations", - FAILED: "Failed", - IN_PROGRESS: "InProgress", - PENDING: "Pending", - STOPPED: "Stopped", - STOPPING: "Stopping", -} as const; - -/** - * @public - */ -export type ExecutionStatus = (typeof ExecutionStatus)[keyof typeof ExecutionStatus]; - -/** - *

Summary of information about the last monitoring job to run.

- * @public - */ -export interface MonitoringExecutionSummary { - /** - *

The name of the monitoring schedule.

- * @public - */ - MonitoringScheduleName: string | undefined; - - /** - *

The time the monitoring job was scheduled.

- * @public - */ - ScheduledTime: Date | undefined; - - /** - *

The time at which the monitoring job was created.

- * @public - */ - CreationTime: Date | undefined; - - /** - *

A timestamp that indicates the last time the monitoring job was modified.

- * @public - */ - LastModifiedTime: Date | undefined; - - /** - *

The status of the monitoring job.

- * @public - */ - MonitoringExecutionStatus: ExecutionStatus | undefined; - - /** - *

The Amazon Resource Name (ARN) of the monitoring job.

- * @public - */ - ProcessingJobArn?: string; - - /** - *

The name of the endpoint used to run the monitoring job.

- * @public - */ - EndpointName?: string; - - /** - *

Contains the reason a monitoring job failed, if it failed.

- * @public - */ - FailureReason?: string; - - /** - *

The name of the monitoring job.

- * @public - */ - MonitoringJobDefinitionName?: string; - - /** - *

The type of the monitoring job.

- * @public - */ - MonitoringType?: MonitoringType; -} - /** * @internal */ diff --git a/clients/client-sagemaker/src/models/models_3.ts b/clients/client-sagemaker/src/models/models_3.ts index f781b178a1e8..30c5000aa001 100644 --- a/clients/client-sagemaker/src/models/models_3.ts +++ b/clients/client-sagemaker/src/models/models_3.ts @@ -129,7 +129,6 @@ import { ModelClientConfig, ModelConfiguration, ModelPackageGroupStatus, - MonitoringExecutionSummary, NotificationConfiguration, ObjectiveStatusCounters, OfflineStoreStatus, @@ -156,6 +155,91 @@ import { WorkerAccessConfiguration, } from "./models_2"; +/** + * @public + * @enum + */ +export const ExecutionStatus = { + COMPLETED: "Completed", + COMPLETED_WITH_VIOLATIONS: "CompletedWithViolations", + FAILED: "Failed", + IN_PROGRESS: "InProgress", + PENDING: "Pending", + STOPPED: "Stopped", + STOPPING: "Stopping", +} as const; + +/** + * @public + */ +export type ExecutionStatus = (typeof ExecutionStatus)[keyof typeof ExecutionStatus]; + +/** + *

Summary of information about the last monitoring job to run.

+ * @public + */ +export interface MonitoringExecutionSummary { + /** + *

The name of the monitoring schedule.

+ * @public + */ + MonitoringScheduleName: string | undefined; + + /** + *

The time the monitoring job was scheduled.

+ * @public + */ + ScheduledTime: Date | undefined; + + /** + *

The time at which the monitoring job was created.

+ * @public + */ + CreationTime: Date | undefined; + + /** + *

A timestamp that indicates the last time the monitoring job was modified.

+ * @public + */ + LastModifiedTime: Date | undefined; + + /** + *

The status of the monitoring job.

+ * @public + */ + MonitoringExecutionStatus: ExecutionStatus | undefined; + + /** + *

The Amazon Resource Name (ARN) of the monitoring job.

+ * @public + */ + ProcessingJobArn?: string; + + /** + *

The name of the endpoint used to run the monitoring job.

+ * @public + */ + EndpointName?: string; + + /** + *

Contains the reason a monitoring job failed, if it failed.

+ * @public + */ + FailureReason?: string; + + /** + *

The name of the monitoring job.

+ * @public + */ + MonitoringJobDefinitionName?: string; + + /** + *

The type of the monitoring job.

+ * @public + */ + MonitoringType?: MonitoringType; +} + /** * @public * @enum @@ -11293,37 +11377,3 @@ export interface ModelSummary { */ CreationTime: Date | undefined; } - -/** - * @public - */ -export interface ListModelsOutput { - /** - *

An array of ModelSummary objects, each of which lists a - * model.

- * @public - */ - Models: ModelSummary[] | undefined; - - /** - *

If the response is truncated, SageMaker returns this token. To retrieve the next set of - * models, use it in the subsequent request.

- * @public - */ - NextToken?: string; -} - -/** - * @public - * @enum - */ -export const MonitoringAlertHistorySortKey = { - CreationTime: "CreationTime", - Status: "Status", -} as const; - -/** - * @public - */ -export type MonitoringAlertHistorySortKey = - (typeof MonitoringAlertHistorySortKey)[keyof typeof MonitoringAlertHistorySortKey]; diff --git a/clients/client-sagemaker/src/models/models_4.ts b/clients/client-sagemaker/src/models/models_4.ts index ae58aa28eb37..3546c882c73d 100644 --- a/clients/client-sagemaker/src/models/models_4.ts +++ b/clients/client-sagemaker/src/models/models_4.ts @@ -99,7 +99,6 @@ import { DebugRuleEvaluationStatus, DeploymentRecommendation, EndpointStatus, - ExecutionStatus, FeatureParameter, HyperParameterTrainingJobSummary, MemberDefinition, @@ -107,7 +106,6 @@ import { ModelClientConfig, ModelPackageGroupStatus, ModelPackageStatusDetails, - MonitoringExecutionSummary, NotificationConfiguration, OidcConfig, OidcConfigFilterSensitiveLog, @@ -136,6 +134,7 @@ import { Edge, EMRStepMetadata, Endpoint, + ExecutionStatus, Experiment, FailStepMetadata, FeatureGroup, @@ -147,7 +146,8 @@ import { LambdaStepMetadata, LineageType, MetricData, - MonitoringAlertHistorySortKey, + ModelSummary, + MonitoringExecutionSummary, NotebookInstanceStatus, PipelineExecutionStatus, PipelineExperimentConfig, @@ -175,6 +175,40 @@ import { Workteam, } from "./models_3"; +/** + * @public + */ +export interface ListModelsOutput { + /** + *

An array of ModelSummary objects, each of which lists a + * model.

+ * @public + */ + Models: ModelSummary[] | undefined; + + /** + *

If the response is truncated, SageMaker returns this token. To retrieve the next set of + * models, use it in the subsequent request.

+ * @public + */ + NextToken?: string; +} + +/** + * @public + * @enum + */ +export const MonitoringAlertHistorySortKey = { + CreationTime: "CreationTime", + Status: "Status", +} as const; + +/** + * @public + */ +export type MonitoringAlertHistorySortKey = + (typeof MonitoringAlertHistorySortKey)[keyof typeof MonitoringAlertHistorySortKey]; + /** * @public * @enum diff --git a/clients/client-sagemaker/src/protocols/Aws_json1_1.ts b/clients/client-sagemaker/src/protocols/Aws_json1_1.ts index d221b8d037a3..16e984b40a84 100644 --- a/clients/client-sagemaker/src/protocols/Aws_json1_1.ts +++ b/clients/client-sagemaker/src/protocols/Aws_json1_1.ts @@ -906,6 +906,7 @@ import { AppDetails, AppImageConfigDetails, AppSpecification, + AppType, ArtifactSource, ArtifactSourceType, ArtifactSummary, @@ -1184,8 +1185,6 @@ import { CreatePresignedNotebookInstanceUrlOutput, CreateProcessingJobRequest, CreateProcessingJobResponse, - CreateProjectInput, - CreateProjectOutput, CustomFileSystemConfig, CustomPosixUserConfig, DataCaptureConfig, @@ -1258,6 +1257,7 @@ import { LabelingJobS3DataSource, LabelingJobSnsDataSource, LabelingJobStoppingConditions, + MlTools, ModelBiasAppSpecification, ModelBiasBaselineConfig, ModelBiasJobInput, @@ -1348,6 +1348,7 @@ import { SourceAlgorithm, SourceAlgorithmSpecification, Stairs, + StudioWebPortalSettings, TargetPlatform, TensorBoardAppSettings, ThroughputConfig, @@ -1360,6 +1361,8 @@ import { UserSettings, } from "../models/models_1"; import { + CreateProjectInput, + CreateProjectOutput, CreateSpaceRequest, CreateSpaceResponse, CreateStudioLifecycleConfigRequest, @@ -1584,7 +1587,6 @@ import { ModelPackageStatusDetails, ModelPackageStatusItem, ModelVariantConfigSummary, - MonitoringExecutionSummary, NotificationConfiguration, ObjectiveStatusCounters, OfflineStoreStatus, @@ -1819,7 +1821,6 @@ import { ListModelQualityJobDefinitionsRequest, ListModelQualityJobDefinitionsResponse, ListModelsInput, - ListModelsOutput, MetricData, MetricSpecification, ModelCardExportJobSummary, @@ -1831,6 +1832,7 @@ import { ModelPackageGroupSummary, ModelPackageSummary, ModelSummary, + MonitoringExecutionSummary, MonitoringJobDefinitionSummary, MonitoringSchedule, OidcConfigForResponse, @@ -1862,6 +1864,7 @@ import { Workteam, } from "../models/models_3"; import { + ListModelsOutput, ListMonitoringAlertHistoryRequest, ListMonitoringAlertHistoryResponse, ListMonitoringAlertsRequest, @@ -14014,6 +14017,10 @@ const se_EndpointInput = (input: EndpointInput, context: __SerdeContext): any => // se_Groups omitted. +// se_HiddenAppTypesList omitted. + +// se_HiddenMlToolsList omitted. + // se_HolidayConfig omitted. // se_HolidayConfigAttributes omitted. @@ -15954,6 +15961,8 @@ const se_StopPipelineExecutionRequest = (input: StopPipelineExecutionRequest, co // se_StopTransformJobRequest omitted. +// se_StudioWebPortalSettings omitted. + // se_Subnets omitted. // se_SuggestionQuery omitted. @@ -21973,6 +21982,30 @@ const de_Groups = (output: any, context: __SerdeContext): string[] => { return retVal; }; +/** + * deserializeAws_json1_1HiddenAppTypesList + */ +const de_HiddenAppTypesList = (output: any, context: __SerdeContext): AppType[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return __expectString(entry) as any; + }); + return retVal; +}; + +/** + * deserializeAws_json1_1HiddenMlToolsList + */ +const de_HiddenMlToolsList = (output: any, context: __SerdeContext): MlTools[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return __expectString(entry) as any; + }); + return retVal; +}; + /** * deserializeAws_json1_1HolidayConfig */ @@ -27957,6 +27990,16 @@ const de_StudioLifecycleConfigsList = (output: any, context: __SerdeContext): St return retVal; }; +/** + * deserializeAws_json1_1StudioWebPortalSettings + */ +const de_StudioWebPortalSettings = (output: any, context: __SerdeContext): StudioWebPortalSettings => { + return take(output, { + HiddenAppTypes: (_: any) => de_HiddenAppTypesList(_, context), + HiddenMlTools: (_: any) => de_HiddenMlToolsList(_, context), + }) as any; +}; + /** * deserializeAws_json1_1Subnets */ @@ -29325,6 +29368,7 @@ const de_UserSettings = (output: any, context: __SerdeContext): UserSettings => SharingSettings: (_: any) => de_SharingSettings(_, context), SpaceStorageSettings: (_: any) => de_DefaultSpaceStorageSettings(_, context), StudioWebPortal: __expectString, + StudioWebPortalSettings: (_: any) => de_StudioWebPortalSettings(_, context), TensorBoardAppSettings: (_: any) => de_TensorBoardAppSettings(_, context), }) as any; }; diff --git a/codegen/sdk-codegen/aws-models/sagemaker.json b/codegen/sdk-codegen/aws-models/sagemaker.json index 54215c42a242..47d0f97fc426 100644 --- a/codegen/sdk-codegen/aws-models/sagemaker.json +++ b/codegen/sdk-codegen/aws-models/sagemaker.json @@ -6503,7 +6503,7 @@ } }, "traits": { - "smithy.api#documentation": "

Defines the configuration for attaching an additional Amazon Elastic Block Store (EBS)\n volume to each instance of the SageMaker HyperPod cluster instance group.

" + "smithy.api#documentation": "

Defines the configuration for attaching an additional Amazon Elastic Block Store (EBS)\n volume to each instance of the SageMaker HyperPod cluster instance group. To learn more, see SageMaker HyperPod release notes: June 20, 2024.

" } }, "com.amazonaws.sagemaker#ClusterEbsVolumeSizeInGB": { @@ -6755,7 +6755,7 @@ } }, "traits": { - "smithy.api#documentation": "

Defines the configuration for attaching additional storage to the instances in the\n SageMaker HyperPod cluster instance group.

" + "smithy.api#documentation": "

Defines the configuration for attaching additional storage to the instances in the\n SageMaker HyperPod cluster instance group. To learn more, see SageMaker HyperPod release notes: June 20, 2024.

" } }, "com.amazonaws.sagemaker#ClusterInstanceStorageConfigs": { @@ -15568,7 +15568,7 @@ "target": "com.amazonaws.sagemaker#HubContentType", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The type of hub content to delete.

", + "smithy.api#documentation": "

The type of hub content reference to delete. The only supported type of hub content reference to delete is ModelReference.

", "smithy.api#required": {} } }, @@ -29587,6 +29587,18 @@ } } }, + "com.amazonaws.sagemaker#HiddenAppTypesList": { + "type": "list", + "member": { + "target": "com.amazonaws.sagemaker#AppType" + } + }, + "com.amazonaws.sagemaker#HiddenMlToolsList": { + "type": "list", + "member": { + "target": "com.amazonaws.sagemaker#MlTools" + } + }, "com.amazonaws.sagemaker#HolidayConfig": { "type": "list", "member": { @@ -43623,6 +43635,89 @@ "smithy.api#pattern": "^1|2$" } }, + "com.amazonaws.sagemaker#MlTools": { + "type": "enum", + "members": { + "DATA_WRANGLER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DataWrangler" + } + }, + "FEATURE_STORE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FeatureStore" + } + }, + "EMR_CLUSTERS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EmrClusters" + } + }, + "AUTO_ML": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AutoMl" + } + }, + "EXPERIMENTS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Experiments" + } + }, + "TRAINING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Training" + } + }, + "MODEL_EVALUATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ModelEvaluation" + } + }, + "PIPELINES": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Pipelines" + } + }, + "MODELS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Models" + } + }, + "JUMP_START": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "JumpStart" + } + }, + "INFERENCE_RECOMMENDER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "InferenceRecommender" + } + }, + "ENDPOINTS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Endpoints" + } + }, + "PROJECTS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Projects" + } + } + } + }, "com.amazonaws.sagemaker#MlflowVersion": { "type": "string", "traits": { @@ -60807,6 +60902,26 @@ } } }, + "com.amazonaws.sagemaker#StudioWebPortalSettings": { + "type": "structure", + "members": { + "HiddenMlTools": { + "target": "com.amazonaws.sagemaker#HiddenMlToolsList", + "traits": { + "smithy.api#documentation": "

The machine learning tools that are hidden from the Studio left navigation pane.

" + } + }, + "HiddenAppTypes": { + "target": "com.amazonaws.sagemaker#HiddenAppTypesList", + "traits": { + "smithy.api#documentation": "

The Applications supported in Studio that are hidden from the Studio left navigation pane.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Studio settings. If these settings are applied on a user level, they take priority over the settings applied on a domain level.

" + } + }, "com.amazonaws.sagemaker#SubnetId": { "type": "string", "traits": { @@ -68459,6 +68574,12 @@ "traits": { "smithy.api#documentation": "

The settings for assigning a custom file system to a user profile. Permitted users can\n access this file system in Amazon SageMaker Studio.

" } + }, + "StudioWebPortalSettings": { + "target": "com.amazonaws.sagemaker#StudioWebPortalSettings", + "traits": { + "smithy.api#documentation": "

Studio settings. If these settings are applied on a user level, they take priority over the settings applied on a domain level.

" + } } }, "traits": {