def generate_intelligent_default_config()

in build_artifacts/v2/v2.5/v2.5.0/dirs/etc/sagemaker/sm_pysdk_default_config.py [0:0]


def generate_intelligent_default_config(metadata: str) -> dict:
    config = {
        'SchemaVersion': '1.0',
        'SageMaker': {
            'PythonSDK': {
                'Modules': {
                    'Session': {
                        'DefaultS3Bucket': metadata['S3Bucket'],
                        'DefaultS3ObjectKeyPrefix': metadata['S3ObjectKeyPrefix']
                    },
                    'RemoteFunction': {
                        'IncludeLocalWorkDir': True,
                        'VpcConfig': {
                            'SecurityGroupIds': metadata['SecurityGroupIds'],
                            'Subnets': metadata['Subnets']
                        }
                    },
                    'NotebookJob': {
                        'RoleArn': metadata['UserRoleArn'],
                        'S3RootUri': f"s3://{metadata['S3Bucket']}/{metadata['S3ObjectKeyPrefix']}",
                        'VpcConfig': {
                            'SecurityGroupIds': metadata['SecurityGroupIds'],
                            'Subnets': metadata['Subnets']
                        }
                    },
                    'Serve': {
                        'S3ModelDataUri': f"s3://{metadata['S3Bucket']}/{metadata['S3ObjectKeyPrefix']}"
                    }
                }
            },
            'MonitoringSchedule': {
                'MonitoringScheduleConfig': {
                    'MonitoringJobDefinition': {
                        'NetworkConfig': {
                            'VpcConfig': {
                                'SecurityGroupIds': metadata['SecurityGroupIds'],
                                'Subnets': metadata['Subnets']
                            }
                        }
                    }
                }
            },
            'AutoMLJob': {
                'AutoMLJobConfig': {
                    'SecurityConfig': {
                        'VpcConfig': {
                            'SecurityGroupIds': metadata['SecurityGroupIds'],
                            'Subnets': metadata['Subnets']
                        }
                    }
                }
            },
            'AutoMLJobV2': {
                'SecurityConfig': {
                    'VpcConfig': {
                        'SecurityGroupIds': metadata['SecurityGroupIds'],
                        'Subnets': metadata['Subnets']
                    }
                }
            },
            'CompilationJob': {
                'VpcConfig': {
                    'SecurityGroupIds': metadata['SecurityGroupIds'],
                    'Subnets': metadata['Subnets']
                }
            },
            'Pipeline': {
                'RoleArn': metadata['UserRoleArn']
            },
            'Model': {
                'VpcConfig': {
                    'SecurityGroupIds': metadata['SecurityGroupIds'],
                    'Subnets': metadata['Subnets']
                },
                'ExecutionRoleArn': metadata['UserRoleArn']
            },
            'ModelPackage': {
                'ValidationSpecification': {
                    'ValidationRole': metadata['UserRoleArn']
                }
            },
            'ProcessingJob': {
                'NetworkConfig': {
                    'VpcConfig': {
                        'SecurityGroupIds': metadata['SecurityGroupIds'],
                        'Subnets': metadata['Subnets']
                    }
                },
                'RoleArn': metadata['UserRoleArn']
            },
            'TrainingJob': {
                'RoleArn': metadata['UserRoleArn'],
                'VpcConfig': {
                    'SecurityGroupIds': metadata['SecurityGroupIds'],
                    'Subnets': metadata['Subnets']
                }
            }
        }
    }
    return config