# CfnInferenceComponentProps

Properties for defining a `CfnInferenceComponent`.

Extends: CfnInferenceComponentProps
Used as props by: CfnInferenceComponent

- Source: Generated code
- Type last changed: v2.268.0 · 2 Sep 2026

## Example

```ts
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_sagemaker as sagemaker } from 'aws-cdk-lib';
const cfnInferenceComponentProps: sagemaker.CfnInferenceComponentProps = {
  endpointName: 'endpointName',

  // the properties below are optional
  deploymentConfig: {
    autoRollbackConfiguration: {
      alarms: [{
        alarmName: 'alarmName',
      }],
    },
    rollingUpdatePolicy: {
      maximumBatchSize: {
        type: 'type',
        value: 123,
      },
      maximumExecutionTimeoutInSeconds: 123,
      rollbackMaximumBatchSize: {
        type: 'type',
        value: 123,
      },
      waitIntervalInSeconds: 123,
    },
  },
  endpointArn: 'endpointArn',
  inferenceComponentName: 'inferenceComponentName',
  runtimeConfig: {
    copyCount: 123,
    currentCopyCount: 123,
    desiredCopyCount: 123,
    placementStatus: [{
      currentCopyCount: 123,
      instanceType: 'instanceType',
    }],
  },
  specification: {
    baseInferenceComponentName: 'baseInferenceComponentName',
    computeResourceRequirements: {
      maxMemoryRequiredInMb: 123,
      minMemoryRequiredInMb: 123,
      numberOfAcceleratorDevicesRequired: 123,
      numberOfCpuCoresRequired: 123,
    },
    container: {
      artifactUrl: 'artifactUrl',
      containerMetricsConfig: {
        metricsEndpoints: [{
          metricsEndpointPath: 'metricsEndpointPath',

          // the properties below are optional
          metricPublishFrequencyInSeconds: 123,
        }],
      },
      deployedImage: {
        resolutionTime: 'resolutionTime',
        resolvedImage: 'resolvedImage',
        specifiedImage: 'specifiedImage',
      },
      environment: {
        environmentKey: 'environment',
      },
      image: 'image',
    },
    currentDataCacheConfig: {
      enableCaching: false,
    },
    dataCacheConfig: {
      enableCaching: false,
    },
    modelName: 'modelName',
    schedulingConfig: {
      availabilityZoneBalance: {
        enforcementMode: 'enforcementMode',

        // the properties below are optional
        maxImbalance: 123,
      },
      placementStrategy: 'placementStrategy',
    },
    startupParameters: {
      containerStartupHealthCheckTimeoutInSeconds: 123,
      modelDataDownloadTimeoutInSeconds: 123,
    },
  },
  specifications: [{
    instanceType: 'instanceType',

    // the properties below are optional
    computeResourceRequirements: {
      maxMemoryRequiredInMb: 123,
      minMemoryRequiredInMb: 123,
      numberOfAcceleratorDevicesRequired: 123,
      numberOfCpuCoresRequired: 123,
    },
    container: {
      artifactUrl: 'artifactUrl',
      containerMetricsConfig: {
        metricsEndpoints: [{
          metricsEndpointPath: 'metricsEndpointPath',

          // the properties below are optional
          metricPublishFrequencyInSeconds: 123,
        }],
      },
      environment: {
        environmentKey: 'environment',
      },
      image: 'image',
    },
    currentDataCacheConfig: {
      enableCaching: false,
    },
    dataCacheConfig: {
      enableCaching: false,
    },
    modelName: 'modelName',
    schedulingConfig: {
      availabilityZoneBalance: {
        enforcementMode: 'enforcementMode',

        // the properties below are optional
        maxImbalance: 123,
      },
      placementStrategy: 'placementStrategy',
    },
    startupParameters: {
      containerStartupHealthCheckTimeoutInSeconds: 123,
      modelDataDownloadTimeoutInSeconds: 123,
    },
  }],
  tags: [{
    key: 'key',
    value: 'value',
  }],
  variantName: 'variantName',
};
```

## Properties

- `deploymentConfig`: [IResolvable](/cdk/api/v2/docs/aws-cdk-lib.IResolvable.html) | [CfnInferenceComponent.InferenceComponentDeploymentConfigProperty](/cdk/api/v2/docs/aws-cdk-lib.aws_sagemaker.CfnInferenceComponent.InferenceComponentDeploymentConfigProperty.html) — The deployment configuration for an endpoint, which contains the desired deployment strategy and rollback configurations.

- `endpointArn`: string — The Amazon Resource Name (ARN) of the endpoint that hosts the inference component.

- `endpointName`: string (required) — The name of the endpoint that hosts the inference component.

- `inferenceComponentName`: string — The name of the inference component.

- `runtimeConfig`: [IResolvable](/cdk/api/v2/docs/aws-cdk-lib.IResolvable.html) | [CfnInferenceComponent.InferenceComponentRuntimeConfigProperty](/cdk/api/v2/docs/aws-cdk-lib.aws_sagemaker.CfnInferenceComponent.InferenceComponentRuntimeConfigProperty.html) — The runtime config for the inference component.

- `specification`: [IResolvable](/cdk/api/v2/docs/aws-cdk-lib.IResolvable.html) | [CfnInferenceComponent.InferenceComponentSpecificationProperty](/cdk/api/v2/docs/aws-cdk-lib.aws_sagemaker.CfnInferenceComponent.InferenceComponentSpecificationProperty.html) — The specification for the inference component, for an endpoint with a single instance type.

  Specify exactly one of Specification or Specifications. InstanceType is not accepted here; use Specifications for per instance type configuration.

- `specifications`: [IResolvable](/cdk/api/v2/docs/aws-cdk-lib.IResolvable.html) | [IResolvable](/cdk/api/v2/docs/aws-cdk-lib.IResolvable.html) | [CfnInferenceComponent.InferenceComponentSpecificationForInstanceTypeProperty](/cdk/api/v2/docs/aws-cdk-lib.aws_sagemaker.CfnInferenceComponent.InferenceComponentSpecificationForInstanceTypeProperty.html)[] — A list of specification objects for the inference component, one per instance type.

  The service requires at least two entries; use the singular Specification for a single instance type.

- `tags`: [CfnTag](/cdk/api/v2/docs/aws-cdk-lib.CfnTag.html)[] — An array of tags to apply to the resource.

- `variantName`: string — The name of the production variant that hosts the inference component.
