Actions, resources, and condition keys for Amazon SageMaker
Amazon SageMaker (service prefix:
sagemaker
) provides the following service-specific resources, actions, and condition context keys for use in IAM permission policies.
References:
-
Learn how to configure this service .
-
View a list of the API operations available for this service .
-
Learn how to secure this service and its resources by using IAM permission policies.
Topics
Actions defined by Amazon SageMaker
You can specify the following actions in the
Action
element of an IAM policy statement. Use policies to grant permissions to perform an operation in AWS. When you use an action in a policy, you usually allow or deny access to the API operation or CLI command with the same name. However, in some cases, a single action controls access to more than one operation. Alternatively, some operations require several different actions.
The
Resource types
column of the Actions table indicates whether each action supports resource-level permissions. If there is no value for this column, you must specify all resources ("*") to which the policy applies in the
Resource
element of your policy statement. If the column includes a resource type, then you can specify an ARN of that type in a statement with that action. If the action has one or more required resources, the caller must have permission to use the action with those resources. Required resources are indicated in the table with an asterisk (*). If you limit resource access with the
Resource
element in an IAM policy, you must include an ARN or pattern for each required resource type. Some actions support multiple resource types. If the resource type is optional (not indicated as required), then you can choose to use one of the optional resource types.
The
Condition keys
column of the Actions table includes keys that you can specify in a policy statement's
Condition
element. For more information on the condition keys that are associated with resources for the service, see the
Condition keys
column of the Resource types table.
For details about the columns in the following table, see Actions table .
| Actions | Description | Access level | Resource types (*required) | Condition keys | Dependent actions |
|---|---|---|---|---|---|
| AddAssociation | Grants permission to associate a lineage entity (artifact, context, action, experiment, experiment-trial-component) to each other | Write | |||
| AddTags | Grants permission to add or overwrite one or more tags for the specified Amazon SageMaker resource | Tagging | |||
| AssociateTrialComponent | Grants permission to associate a trial component with a trial | Write | |||
| BatchDescribeModelPackage | Grants permission to describe one or more ModelPackages | Read | |||
| BatchGetMetrics [permission only] | Grants permission to retrieve metrics associated with SageMaker Resources such as Training Jobs or Trial Components. This API is not publicly exposed at this point, however admins can control this action | Read | |||
| BatchGetRecord | Grants permission to get a batch of records from one or more feature groups | Read | |||
| BatchPutMetrics | Grants permission to publish metrics associated with a SageMaker Resource such as a Training Job or Trial Component | Write | |||
| CreateAction | Grants permission to create an action | Write |
sagemaker:AddTags |
||
| CreateAlgorithm | Grants permission to create an algorithm | Write |
sagemaker:AddTags |
||
| CreateApp | Grants permission to create an App for a SageMaker UserProfile or Space | Write |
sagemaker:AddTags |
||
| CreateAppImageConfig | Grants permission to create an AppImageConfig | Write |
sagemaker:AddTags |
||
| CreateArtifact | Grants permission to create an artifact | Write |
sagemaker:AddTags |
||
| CreateAutoMLJob | Grants permission to create an AutoML job | Write |
iam:PassRole sagemaker:AddTags |
||
| CreateAutoMLJobV2 | Grants permission to create a V2 AutoML job | Write |
iam:PassRole sagemaker:AddTags |
||
| CreateCodeRepository | Grants permission to create a CodeRepository | Write |
sagemaker:AddTags |
||
| CreateCompilationJob | Grants permission to create a compilation job | Write |
iam:PassRole sagemaker:AddTags |
||
| CreateContext | Grants permission to create a context | Write |
sagemaker:AddTags |
||
| CreateDataQualityJobDefinition | Grants permission to create a data quality job definition | Write |
iam:PassRole sagemaker:AddTags |
||
| CreateDeviceFleet | Grants permission to create a device fleet | Write |
iam:PassRole sagemaker:AddTags |
||
| CreateDomain | Grants permission to create a Domain for SageMaker Studio | Write |
iam:CreateServiceLinkedRole iam:PassRole sagemaker:AddTags |
||
|
sagemaker:AppNetworkAccessType |
|||||
| CreateEdgeDeploymentPlan | Grants permission to create an edge deployment plan | Write |
iam:PassRole sagemaker:AddTags |
||
| CreateEdgeDeploymentStage | Grants permission to create an edge deployment stage | Write |
iam:PassRole sagemaker:AddTags |
||
| CreateEdgePackagingJob | Grants permission to create an edge packaging job | Write |
iam:PassRole sagemaker:AddTags |
||
| CreateEndpoint | Grants permission to create an endpoint using the endpoint configuration specified in the request | Write |
sagemaker:AddTags |
||
| CreateEndpointConfig | Grants permission to create an endpoint configuration that can be deployed using Amazon SageMaker hosting services | Write |
sagemaker:AddTags |
||
| CreateExperiment | Grants permission to create an experiment | Write |
sagemaker:AddTags |
||
| CreateFeatureGroup | Grants permission to create a feature group | Write |
iam:PassRole sagemaker:AddTags |
||
|
sagemaker:FeatureGroupOnlineStoreKmsKey sagemaker:FeatureGroupOfflineStoreKmsKey sagemaker:FeatureGroupOfflineStoreS3Uri sagemaker:FeatureGroupEnableOnlineStore |
|||||
| CreateFlowDefinition | Grants permission to create a flow definition, which defines settings for a human workflow | Write |
iam:PassRole sagemaker:AddTags |
||
| CreateHub | Grants permission to create a hub | Write |
sagemaker:AddTags |
||
| CreateHumanTaskUi | Grants permission to define the settings you will use for the human review workflow user interface | Write |
sagemaker:AddTags |
||
| CreateHyperParameterTuningJob | Grants permission to create a hyper parameter tuning job that can be deployed using Amazon SageMaker | Write |
iam:PassRole sagemaker:AddTags |
||
|
sagemaker:FileSystemAccessMode sagemaker:FileSystemDirectoryPath |
|||||
| CreateImage | Grants permission to create a SageMaker Image | Write |
iam:PassRole sagemaker:AddTags |
||
| CreateImageVersion | Grants permission to create a SageMaker ImageVersion | Write | |||
| CreateInferenceExperiment | Grants permission to create an inference experiment | Write |
iam:PassRole sagemaker:AddTags |
||
| CreateInferenceRecommendationsJob | Grants permission to create an inference recommendations job | Write |
iam:PassRole sagemaker:AddTags |
||
| CreateLabelingJob | Grants permission to start a labeling job. A labeling job takes unlabeled data in and produces labeled data as output, which can be used for training SageMaker models | Write |
iam:PassRole sagemaker:AddTags |
||
| CreateLineageGroupPolicy | Grants permission to create a lineage group policy | Write | |||
| CreateModel | Grants permission to create a model in Amazon SageMaker. In the request, you specify a name for the model and describe one or more containers | Write |
iam:PassRole sagemaker:AddTags |
||
| CreateModelBiasJobDefinition | Grants permission to create a model bias job definition | Write |
iam:PassRole sagemaker:AddTags |
||
| CreateModelCard | Grants permission to create a model card | Write |
sagemaker:AddTags |
||
| CreateModelCardExportJob | Grants permission to create an export job for a model card | Write | |||
| CreateModelExplainabilityJobDefinition | Grants permission to create a model explainability job definition | Write |
iam:PassRole sagemaker:AddTags |
||
| CreateModelPackage | Grants permission to create a ModelPackage | Write |
sagemaker:AddTags |
||
| CreateModelPackageGroup | Grants permission to create a ModelPackageGroup | Write |
sagemaker:AddTags |
||
| CreateModelQualityJobDefinition | Grants permission to create a model quality job definition | Write |
iam:PassRole sagemaker:AddTags |
||
| CreateMonitoringSchedule | Grants permission to create a monitoring schedule | Write |
iam:PassRole sagemaker:AddTags |
||
| CreateNotebookInstance | Grants permission to create an Amazon SageMaker notebook instance. A notebook instance is an Amazon EC2 instance running on a Jupyter Notebook | Write |
iam:PassRole sagemaker:AddTags |
||
|
sagemaker:DirectInternetAccess |
|||||
| CreateNotebookInstanceLifecycleConfig | Grants permission to create a notebook instance lifecycle configuration that can be deployed using Amazon SageMaker | Write | |||
| CreatePipeline | Grants permission to create a pipeline | Write |
iam:PassRole sagemaker:AddTags |
||
| CreatePresignedDomainUrl | Grants permission to return a URL that you can use from your browser to connect to the Domain as a specified UserProfile when AuthMode is 'IAM' | Write | |||
| CreatePresignedNotebookInstanceUrl | Grants permission to create a URL that you can use from your browser to connect to the Notebook Instance | Write | |||
| CreateProcessingJob | Grants permission to start a processing job. After processing completes, Amazon SageMaker saves the resulting artifacts and other optional output to an Amazon S3 location that you specify | Write |
iam:PassRole sagemaker:AddTags |
||
| CreateProject | Grants permission to create a Project | Write |
sagemaker:AddTags |
||
| CreateSharedModel [permission only] | Grants permission to create a shared model in a SageMaker Studio application | Write | |||
| CreateSpace | Grants permission to create a Space for a SageMaker Domain | Write |
sagemaker:AddTags |
||
| CreateStudioLifecycleConfig | Grants permission to create a Studio Lifecycle Configuration that can be deployed using Amazon SageMaker | Write |
sagemaker:AddTags |
||
| CreateTrainingJob | Grants permission to start a model training job. After training completes, Amazon SageMaker saves the resulting model artifacts and other optional output to an Amazon S3 location that you specify | Write |
iam:PassRole sagemaker:AddTags |
||
|
sagemaker:FileSystemAccessMode sagemaker:FileSystemDirectoryPath |
|||||
| CreateTransformJob | Grants permission to start a transform job. After the results are obtained, Amazon SageMaker saves them to an Amazon S3 location that you specify | Write |
sagemaker:AddTags |
||
| CreateTrial | Grants permission to create a trial | Write |
sagemaker:AddTags |
||
| CreateTrialComponent | Grants permission to create a trial component | Write |
sagemaker:AddTags |
||
| CreateUserProfile | Grants permission to create a UserProfile for a SageMaker Domain | Write |
iam:PassRole sagemaker:AddTags |
||
| CreateWorkforce | Grants permission to create a workforce | Write |
sagemaker:AddTags |
||
| CreateWorkteam | Grants permission to create a workteam | Write |
sagemaker:AddTags |
||
| DeleteAction | Grants permission to delete an action | Write | |||
| DeleteAlgorithm | Grants permission to delete an algorithm | Write | |||
| DeleteApp | Grants permission to delete an App | Write | |||
| DeleteAppImageConfig | Grants permission to delete an AppImageConfig | Write | |||
| DeleteArtifact | Grants permission to delete an artifact | Write | |||
| DeleteAssociation | Grants permission to delete the association from a lineage entity (artifact, context, action, experiment, experiment-trial-component) to another | Write | |||
| DeleteCodeRepository | Grants permission to delete a CodeRepository | Write | |||
| DeleteContext | Grants permission to delete a context | Write | |||
| DeleteDataQualityJobDefinition | Grants permission to delete the data quality job definition created using the CreateDataQualityJobDefinition API | Write | |||
| DeleteDeviceFleet | Grants permission to delete a device fleet | Write | |||
| DeleteDomain | Grants permission to delete a Domain | Write | |||
| DeleteEdgeDeploymentPlan | Grants permission to delete an edge deployment plan | Write | |||
| DeleteEdgeDeploymentStage | Grants permission to delete an edge deployment stage | Write | |||
| DeleteEndpoint | Grants permission to delete an endpoint. Amazon SageMaker frees up all the resources that were deployed when the endpoint was created | Write | |||
| DeleteEndpointConfig | Grants permission to delete the endpoint configuration created using the CreateEndpointConfig API. The DeleteEndpointConfig API deletes only the specified configuration. It does not delete any endpoints created using the configuration | Write | |||
| DeleteExperiment | Grants permission to delete an experiment | Write | |||
| DeleteFeatureGroup | Grants permission to delete a feature group | Write | |||
| DeleteFlowDefinition | Grants permission to delete the specified flow definition | Write | |||
| DeleteHub | Grants permission to delete hubs | Write | |||
| DeleteHubContent | Grants permission to delete hub content | Write | |||
| DeleteHumanLoop | Grants permission to delete a specified human loop | Write | |||
| DeleteHumanTaskUi | Grants permission to delete the specified human task user interface (worker task template) | Write | |||
| DeleteImage | Grants permission to delete a SageMaker Image | Write | |||
| DeleteImageVersion | Grants permission to delete a SageMaker ImageVersion | Write | |||
| DeleteInferenceExperiment | Grants permission to delete an inference experiment | Write | |||
| DeleteLineageGroupPolicy | Grants permission to delete a lineage group policy | Write | |||
| DeleteModel | Grants permission to delete a model created using the CreateModel API. The DeleteModel API deletes only the model entry in Amazon SageMaker that you created by calling the CreateModel API. It does not delete model artifacts, inference code, or the IAM role that you specified when creating the model | Write | |||
| DeleteModelBiasJobDefinition | Grants permission to delete the model bias job definition created using the CreateModelBiasJobDefinition API | Write | |||
| DeleteModelCard | Grants permission to delete a model card | Write | |||
| DeleteModelExplainabilityJobDefinition | Grants permission to delete the model explainability job definition created using the CreateModelExplainabilityJobDefinition API | Write | |||
| DeleteModelPackage | Grants permission to delete a ModelPackage | Write | |||
| DeleteModelPackageGroup | Grants permission to delete a ModelPackageGroup | Write | |||
| DeleteModelPackageGroupPolicy | Grants permission to delete a ModelPackageGroup policy | Write | |||
| DeleteModelQualityJobDefinition | Grants permission to delete the model quality job definition created using the CreateModelQualityJobDefinition API | Write | |||
| DeleteMonitoringSchedule | Grants permission to delete a monitoring schedule | Write | |||
| DeleteNotebookInstance | Grants permission to delete a Amazon SageMaker notebook instance. Before you can delete a notebook instance, you must call the StopNotebookInstance API | Write | |||
| DeleteNotebookInstanceLifecycleConfig | Grants permission to delete a notebook instance lifecycle configuration | Write | |||
| DeletePipeline | Grants permission to delete a pipeline | Write | |||
| DeleteProject | Grants permission to delete a project | Write | |||
| DeleteRecord | Grants permission to delete a record from a feature group | Write | |||
| DeleteSpace | Grants permission to delete a Space | Write | |||
| DeleteStudioLifecycleConfig | Grants permission to delete a Studio Lifecycle Configuration | Write | |||
| DeleteTags | Grants permission to delete the specified set of tags from an Amazon SageMaker resource | Tagging | |||
| DeleteTrial | Grants permission to delete a trial | Write | |||
| DeleteTrialComponent | Grants permission to delete a trial component | Write | |||
| DeleteUserProfile | Grants permission to delete a UserProfile | Write | |||
| DeleteWorkforce | Grants permission to delete a workforce | Write | |||
| DeleteWorkteam | Grants permission to delete a workteam | Write | |||
| DeregisterDevices | Grants permission to deregister a set of devices | Write | |||
| DescribeAction | Grants permission to get information about an action | Read | |||
| DescribeAlgorithm | Grants permission to describe an algorithm | Read | |||
| DescribeApp | Grants permission to describe an App | Read | |||
| DescribeAppImageConfig | Grants permission to describe an AppImageConfig | Read | |||
| DescribeArtifact | Grants permission to get information about an artifact | Read | |||
| DescribeAutoMLJob | Grants permission to describe an AutoML job that was created via the CreateAutoMLJob API | Read | |||
| DescribeAutoMLJobV2 | Grants permission to describe an AutoML job that was created via the CreateAutoMLJobV2 API | Read | |||
| DescribeCodeRepository | Grants permission to describe a CodeRepository | Read | |||
| DescribeCompilationJob | Grants permission to return information about a compilation job | Read | |||
| DescribeContext | Grants permission to get information about a context | Read | |||
| DescribeDataQualityJobDefinition | Grants permission to return information about a data quality job definition | Read | |||
| DescribeDevice | Grants permission to access information about a device | Read | |||
| DescribeDeviceFleet | Grants permission to access information about a device fleet | Read | |||
| DescribeDomain | Grants permission to describe a Domain | Read | |||
| DescribeEdgeDeploymentPlan | Grants permission to access information about an edge deployment plan | Read | |||
| DescribeEdgePackagingJob | Grants permission to access information about an edge packaging job | Read | |||
| DescribeEndpoint | Grants permission to return the description of an endpoint | Read | |||
| DescribeEndpointConfig | Grants permission to return the description of an endpoint configuration, which was created using the CreateEndpointConfig API | Read | |||
| DescribeExperiment | Grants permission to return information about an experiment | Read | |||
| DescribeFeatureGroup | Grants permission to return information about a feature group | Read | |||
| DescribeFeatureMetadata | Grants permission to return information about a feature metadata | Read | |||
| DescribeFlowDefinition | Grants permission to return information about the specified flow definition | Read | |||
| DescribeHub | Grants permission to describe hubs | Read | |||
| DescribeHubContent | Grants permission to describe hub content | Read | |||
| DescribeHumanLoop | Grants permission to return information about the specified human loop | Read | |||
| DescribeHumanTaskUi | Grants permission to return detailed information about the specified human review workflow user interface | Read | |||
| DescribeHyperParameterTuningJob | Grants permission to describe a hyper parameter tuning job that was created via the CreateHyperParameterTuningJob API | Read | |||
| DescribeImage | Grants permission to return information about a SageMaker Image | Read | |||
| DescribeImageVersion | Grants permission to return information about a SageMaker ImageVersion | Read | |||
| DescribeInferenceExperiment | Grants permission to get information about an inference experiment | Read | |||
| DescribeInferenceRecommendationsJob | Grants permission to get information about an inference recommendations job | Read | |||
| DescribeLabelingJob | Grants permission to return information about a labeling job | Read | |||
| DescribeLineageGroup | Grants permission to describe a lineage group | Read | |||
| DescribeModel | Grants permission to describe a model that you created using the CreateModel API | Read | |||
| DescribeModelBiasJobDefinition | Grants permission to return information about a model bias job definition | Read | |||
| DescribeModelCard | Grants permission to get information about a model card | Read | |||
| DescribeModelCardExportJob | Grants permission to get information about a model card export job | Read | |||
| DescribeModelExplainabilityJobDefinition | Grants permission to return information about a model explainability job definition | Read | |||
| DescribeModelPackage | Grants permission to describe a ModelPackage | Read | |||
| DescribeModelPackageGroup | Grants permission to describe a ModelPackageGroup | Read | |||
| DescribeModelQualityJobDefinition | Grants permission to return information about a model quality job definition | Read | |||
| DescribeMonitoringSchedule | Grants permission to return information about a monitoring schedule | Read | |||
| DescribeNotebookInstance | Grants permission to return information about a notebook instance | Read | |||
| DescribeNotebookInstanceLifecycleConfig | Grants permission to describe a notebook instance lifecycle configuration that was created via the CreateNotebookInstanceLifecycleConfig API | Read | |||
| DescribePipeline | Grants permission to get information about a pipeline | Read | |||
| DescribePipelineDefinitionForExecution | Grants permission to get the pipeline definition for a pipeline execution | Read | |||
| DescribePipelineExecution | Grants permission to get information about a pipeline execution | Read | |||
| DescribeProcessingJob | Grants permission to return information about a processing job | Read | |||
| DescribeProject | Grants permission to describe a project | Read | |||
| DescribeSharedModel [permission only] | Grants permission to describe a shared model in a SageMaker Studio application | Read | |||
| DescribeSpace | Grants permission to describe a Space | Read | |||
| DescribeStudioLifecycleConfig | Grants permission to describe a Studio Lifecycle Configuration | Read | |||
| DescribeSubscribedWorkteam | Grants permission to return information about a subscribed workteam | Read | |||
| DescribeTrainingJob | Grants permission to return information about a training job | Read | |||
| DescribeTransformJob | Grants permission to return information about a transform job | Read | |||
| DescribeTrial | Grants permission to return information about a trial | Read | |||
| DescribeTrialComponent | Grants permission to return information about a trial component | Read | |||
| DescribeUserProfile | Grants permission to describe a UserProfile | Read | |||
| DescribeWorkforce | Grants permission to return information about a workforce | Read | |||
| DescribeWorkteam | Grants permission to return information about a workteam | Read | |||
| DisableSagemakerServicecatalogPortfolio | Grants permission to disable a SageMaker Service Catalog Portfolio | Write | |||
| DisassociateTrialComponent | Grants permission to disassociate a trial component from a trial | Write | |||
| EnableSagemakerServicecatalogPortfolio | Grants permission to enable a SageMaker Service Catalog Portfolio | Write | |||
| GetDeployments | Grants permission to get deployment plan for device | Read | |||
| GetDeviceFleetReport | Grants permission to access a summary of the devices in a device fleet | Read | |||
| GetDeviceRegistration | Grants permission to get device registration. After you deploy a model onto edge devices this api is used to get current device registration | Read | |||
| GetLineageGroupPolicy | Grants permission to retreive a lineage group policy | Read | |||
| GetModelPackageGroupPolicy | Grants permission to get a ModelPackageGroup policy | Read | |||
| GetRecord | Grants permission to get a record from a feature group | Read | |||
| GetSagemakerServicecatalogPortfolioStatus | Grants permission to get a SageMaker Service Catalog Portfolio | Read | |||
| GetScalingPolicyConfigurationRecommendation | Grants permission to get a scaling policy configuration recommendation | Read | |||
| GetSearchSuggestions | Grants permission to get search suggestions when provided with a keyword | Read | |||
| ImportHubContent | Grants permission to import hub content | Write |
sagemaker:AddTags |
||
| InvokeEndpoint | Grants permission to invoke an endpoint. After you deploy a model into production using Amazon SageMaker hosting services, your client applications use this API to get inferences from the model hosted at the specified endpoint | Read | |||
| InvokeEndpointAsync | Grants permission to get inferences from the hosted model at the specified endpoint in an asynchronous manner | Read | |||
| ListActions | Grants permission to list actions | List | |||
| ListAlgorithms | Grants permission to list Algorithms | List | |||
| ListAliases | Grants permission to list Aliases that belong to a SageMaker Image or Sagemaker ImageVersion | List | |||
| ListAppImageConfigs | Grants permission to list the AppImageConfigs in your account | List | |||
| ListApps | Grants permission to list the Apps in your account | List | |||
| ListArtifacts | Grants permission to list artifacts | List | |||
| ListAssociations | Grants permission to list associations | List | |||
| ListAutoMLJobs | Grants permission to list AutoML jobs | List | |||
| ListCandidatesForAutoMLJob | Grants permission to lists candidates for an AutoML job | List | |||
| ListCodeRepositories | Grants permission to list code repositories | List | |||
| ListCompilationJobs | Grants permission to list compilation jobs | List | |||
| ListContexts | Grants permission to list contexts | List | |||
| ListDataQualityJobDefinitions | Grants permission to list data quality job definitions | List | |||
| ListDeviceFleets | Grants permission to list device fleets | List | |||
| ListDevices | Grants permission to list devices | List | |||
| ListDomains | Grants permission to list the Domains in your account | List | |||
| ListEdgeDeploymentPlans | Grants permission to list edge deployment plans | List | |||
| ListEdgePackagingJobs | Grants permission to list edge packaging jobs | List | |||
| ListEndpointConfigs | Grants permission to list endpoint configurations | List | |||
| ListEndpoints | Grants permission to list endpoints | List | |||
| ListExperiments | Grants permission to list experiments | List | |||
| ListFeatureGroups | Grants permission to list feature groups | List | |||
| ListFlowDefinitions | Grants permission to return summary information about flow definitions, given the specified parameters | List | |||
| ListHubContentVersions | Grants permission to list all versions of hub content | List | |||
| ListHubContents | Grants permission to list newest versions of hub content | List | |||
| ListHubs | Grants permission to list hubs | List | |||
| ListHumanLoops | Grants permission to return summary information about human loops, given the specified parameters | List | |||
| ListHumanTaskUis | Grants permission to return summary information about human review workflow user interfaces, given the specified parameters | List | |||
| ListHyperParameterTuningJobs | Grants permission to list hyper parameter tuning jobs | List | |||
| ListImageVersions | Grants permission to list ImageVersions that belong to a SageMaker Image | List | |||
| ListImages | Grants permission to list SageMaker Images in your account | List | |||
| ListInferenceExperiments | Grants permission to list inference experiments | List | |||
| ListInferenceRecommendationsJobSteps | Grants permission to list inference recommendations job steps | List | |||
| ListInferenceRecommendationsJobs | Grants permission to list inference recommendations jobs | List | |||
| ListLabelingJobs | Grants permission to list labeling jobs | List | |||
| ListLabelingJobsForWorkteam | Grants permission to list labeling jobs for workteam | List | |||
| ListLineageGroups | Grants permission to list lineage groups | List | |||
| ListModelBiasJobDefinitions | Grants permission to list model bias job definitions | List | |||
| ListModelCardExportJobs | Grants permission to list export jobs for a model card | List | |||
| ListModelCardVersions | Grants permission to list versions of a model card | List | |||
| ListModelCards | Grants permission to list model cards | List | |||
| ListModelExplainabilityJobDefinitions | Grants permission to list model explainability job definitions | List | |||
| ListModelMetadata | Grants permission to list model metadata for inference recommendations jobs | List | |||
| ListModelPackageGroups | Grants permission to list ModelPackageGroups | List | |||
| ListModelPackages | Grants permission to list ModelPackages | List | |||
| ListModelQualityJobDefinitions | Grants permission to list model quality job definitions | List | |||
| ListModels | Grants permission to list the models created with the CreateModel API | List | |||
| ListMonitoringAlertHistory | Grants permission to list the history of a monitoring alert | List | |||
| ListMonitoringAlerts | Grants permission to list monitoring alerts | List | |||
| ListMonitoringExecutions | Grants permission to list monitoring executions | List | |||
| ListMonitoringSchedules | Grants permission to list monitoring schedules | List | |||
| ListNotebookInstanceLifecycleConfigs | Grants permission to list the notebook instance lifecycle configurations that can be deployed using Amazon SageMaker | List | |||
| ListNotebookInstances | Grants permission to list the Amazon SageMaker notebook instances in the requester's account in an AWS Region | List | |||
| ListPipelineExecutionSteps | Grants permission to list steps for a pipeline execution | List | |||
| ListPipelineExecutions | Grants permission to list executions for a pipeline | List | |||
| ListPipelineParametersForExecution | Grants permission to list parameters for a pipeline execution | List | |||
| ListPipelines | Grants permission to list pipelines | List | |||
| ListProcessingJobs | Grants permission to list processing jobs | List | |||
| ListProjects | Grants permission to list Projects | List | |||
| ListSharedModelEvents [permission only] | Grants permission to list shared model events | List | |||
| ListSharedModelVersions [permission only] | Grants permission to list shared model versions | List | |||
| ListSharedModels [permission only] | Grants permission to list shared models | List | |||
| ListSpaces | Grants permission to list the Spaces in your account | List | |||
| ListStageDevices | Grants permission to list stage devices | List | |||
| ListStudioLifecycleConfigs | Grants permission to list the Studio Lifecycle Configurations that can be deployed using Amazon SageMaker | List | |||
| ListSubscribedWorkteams | Grants permission to list subscribed workteams | List | |||
| ListTags | Grants permission to list the tag set associated with the specified resource | List | |||
| ListTrainingJobs | Grants permission to list training jobs | List | |||
| ListTrainingJobsForHyperParameterTuningJob | Grants permission to list training jobs for a hyper parameter tuning job | List | |||
| ListTransformJobs | Grants permission to list transform jobs | List | |||
| ListTrialComponents | Grants permission to list trial components | List | |||
| ListTrials | Grants permission to list trials | List | |||
| ListUserProfiles | Grants permission to list the UserProfiles in your account | List | |||
| ListWorkforces | Grants permission to list workforces | List | |||
| ListWorkteams | Grants permission to list workteams | List | |||
| PutLineageGroupPolicy | Grants permission to put a lineage group policy | Write | |||
| PutModelPackageGroupPolicy | Grants permission to put a ModelPackageGroup policy | Write | |||
| PutRecord | Grants permission to put a record to a feature group | Write | |||
| QueryLineage | Grants permission to explore the lineage graph | List | |||
| RegisterDevices | Grants permission to register a set of devices | Write | |||
| RenderUiTemplate | Grants permission to render a UI template used for a human annotation task | Read |
iam:PassRole |
||
| RetryPipelineExecution | Grants permission to retry a pipeline execution | Write | |||
| Search | Grants permission to search for SageMaker objects | Read | |||
| SendHeartbeat | Grants permission to publish heartbeat data from devices. After you deploy a model onto edge devices this api is used to report device status | Write | |||
| SendPipelineExecutionStepFailure | Grants permission to fail a pending callback step | Write | |||
| SendPipelineExecutionStepSuccess | Grants permission to succeed a pending callback step | Write | |||
| SendSharedModelEvent [permission only] | Grants permission to send a shared model event | Write | |||
| StartEdgeDeploymentStage | Grants permission to start an edge deployment stage | Write | |||
| StartHumanLoop | Grants permission to start a human loop | Write | |||
| StartInferenceExperiment | Grants permission to start an inference experiment | Write | |||
| StartMonitoringSchedule | Grants permission to start a monitoring schedule | Write | |||
| StartNotebookInstance | Grants permission to start a notebook instance. This launches an EC2 instance with the latest version of the libraries and attaches your EBS volume | Write | |||
| StartPipelineExecution | Grants permission to start a pipeline execution | Write | |||
| StopAutoMLJob | Grants permission to stop a running AutoML job | Write | |||
| StopCompilationJob | Grants permission to stop a compilation job | Write | |||
| StopEdgeDeploymentStage | Grants permission to stop an edge deployment stage | Write | |||
| StopEdgePackagingJob | Grants permission to stop an edge packaging job | Write | |||
| StopHumanLoop | Grants permission to stop a specified human loop | Write | |||
| StopHyperParameterTuningJob | Grants permission to stop a running hyper parameter tuning job create via the CreateHyperParameterTuningJob | Write | |||
| StopInferenceExperiment | Grants permission to stop an inference experiment | Write | |||
| StopInferenceRecommendationsJob | Grants permission to stop an inference recommendations job | Write | |||
| StopLabelingJob | Grants permission to stop a labeling job. Any labels already generated will be exported before stopping | Write | |||
| StopMonitoringSchedule | Grants permission to stop a monitoring schedule | Write | |||
| StopNotebookInstance | Grants permission to stop a notebook instance. This terminates the EC2 instance. Before terminating the instance, Amazon SageMaker disconnects the EBS volume from it. Amazon SageMaker preserves the EBS volume | Write | |||
| StopPipelineExecution | Grants permission to stop a pipeline execution | Write | |||
| StopProcessingJob | Grants permission to stop a processing job. To stop a job, Amazon SageMaker sends the algorithm the SIGTERM signal, which delays job termination for 120 seconds | Write | |||
| StopTrainingJob | Grants permission to stop a training job. To stop a job, Amazon SageMaker sends the algorithm the SIGTERM signal, which delays job termination for 120 seconds | Write | |||
| StopTransformJob | Grants permission to stop a transform job. When Amazon SageMaker receives a StopTransformJob request, the status of the job changes to Stopping. After Amazon SageMaker stops the job, the status is set to Stopped | Write | |||
| UpdateAction | Grants permission to update an action | Write | |||
| UpdateAppImageConfig | Grants permission to update an AppImageConfig | Write | |||
| UpdateArtifact | Grants permission to update an artifact | Write | |||
| UpdateCodeRepository | Grants permission to update a CodeRepository | Write | |||
| UpdateContext | Grants permission to update a context | Write | |||
| UpdateDeviceFleet | Grants permission to update a device fleet | Write | |||
| UpdateDevices | Grants permission to update a set of devices | Write | |||
| UpdateDomain | Grants permission to update a Domain | Write | |||
| UpdateEndpoint | Grants permission to update an endpoint to use the endpoint configuration specified in the request | Write | |||
| UpdateEndpointWeightsAndCapacities | Grants permission to update variant weight, capacity, or both of one or more variants associated with an endpoint | Write | |||
| UpdateExperiment | Grants permission to update an experiment | Write | |||
| UpdateFeatureGroup | Grants permission to update a feature group | Write | |||
| UpdateFeatureMetadata | Grants permission to update a feature metadata | Write | |||
| UpdateHub | Grants permission to update hubs | Write | |||
| UpdateImage | Grants permission to update the properties of a SageMaker Image | Write |
iam:PassRole |
||
| UpdateImageVersion | Grants permission to update the properties of a SageMaker ImageVersion | Write | |||
| UpdateInferenceExperiment | Grants permission to update an inference experiment | Write | |||
| UpdateModelCard | Grants permission to update a model card | Write | |||
| UpdateModelPackage | Grants permission to update a ModelPackage | Write | |||
| UpdateMonitoringAlert | Grants permission to update a monitoring alert | Write | |||
| UpdateMonitoringSchedule | Grants permission to update a monitoring schedule | Write |
iam:PassRole |
||
| UpdateNotebookInstance | Grants permission to update a notebook instance. Notebook instance updates include upgrading or downgrading the EC2 instance used for your notebook instance to accommodate changes in your workload requirements | Write | |||
| UpdateNotebookInstanceLifecycleConfig | Grants permission to updates a notebook instance lifecycle configuration created with the CreateNotebookInstanceLifecycleConfig API | Write | |||
| UpdatePipeline | Grants permission to update a pipeline | Write |
iam:PassRole |
||
| UpdatePipelineExecution | Grants permission to update a pipeline execution | Write | |||
| UpdateProject | Grants permission to update a Project | Write | |||
| UpdateSharedModel [permission only] | Grants permission to update a shared model | Write | |||
| UpdateSpace | Grants permission to update a Space | Write | |||
| UpdateTrainingJob | Grants permission to update a training job | Write | |||
| UpdateTrial | Grants permission to update a trial | Write | |||
| UpdateTrialComponent | Grants permission to update a trial component | Write | |||
| UpdateUserProfile | Grants permission to update a UserProfile | Write | |||
| UpdateWorkforce | Grants permission to update a workforce | Write | |||
| UpdateWorkteam | Grants permission to update a workteam | Write |
Resource types defined by Amazon SageMaker
The following resource types are defined by this service and can be used in the
Resource
element of IAM permission policy statements. Each action in the
Actions table
identifies the resource types that can be specified with that action. A resource type can also define which condition keys you can include in a policy. These keys are displayed in the last column of the table. For details about the columns in the following table, see
Resource types table
.
| Resource types | ARN | Condition keys |
|---|---|---|
| device |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:device-fleet/$
{
DeviceFleetName}/device/$
{
DeviceName}
|
|
| device-fleet |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:device-fleet/$
{
DeviceFleetName}
|
|
| edge-packaging-job |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:edge-packaging-job/$
{
EdgePackagingJobName}
|
|
| edge-deployment-plan |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:edge-deployment/$
{
EdgeDeploymentPlanName}
|
|
| human-loop |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:human-loop/$
{
HumanLoopName}
|
|
| flow-definition |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:flow-definition/$
{
FlowDefinitionName}
|
|
| human-task-ui |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:human-task-ui/$
{
HumanTaskUiName}
|
|
| hub |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:hub/$
{
HubName}
|
|
| hub-content |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:hub-content/$
{
HubName}/$
{
HubContentType}/$
{
HubContentName}
|
|
| inference-recommendations-job |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:inference-recommendations-job/$
{
InferenceRecommendationsJobName}
|
|
| inference-experiment |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:inference-experiment/$
{
InferenceExperimentName}
|
|
| labeling-job |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:labeling-job/$
{
LabelingJobName}
|
|
| workteam |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:workteam/$
{
WorkteamName}
|
|
| workforce |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:workforce/$
{
WorkforceName}
|
|
| domain |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:domain/$
{
DomainId}
|
|
| user-profile |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:user-profile/$
{
DomainId}/$
{
UserProfileName}
|
|
| space |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:space/$
{
DomainId}/$
{
SpaceName}
|
|
| app |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:app/$
{
DomainId}/$
{
UserProfileName}/$
{
AppType}/$
{
AppName}
|
|
| app-image-config |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:app-image-config/$
{
AppImageConfigName}
|
|
| studio-lifecycle-config |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:studio-lifecycle-config/$
{
StudioLifecycleConfigName}
|
|
| notebook-instance |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:notebook-instance/$
{
NotebookInstanceName}
|
|
| notebook-instance-lifecycle-config |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:notebook-instance-lifecycle-config/$
{
NotebookInstanceLifecycleConfigName}
|
|
| code-repository |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:code-repository/$
{
CodeRepositoryName}
|
|
| image |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:image/$
{
ImageName}
|
|
| image-version |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:image-version/$
{
ImageName}/$
{
Version}
|
|
| algorithm |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:algorithm/$
{
AlgorithmName}
|
|
| training-job |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:training-job/$
{
TrainingJobName}
|
|
| processing-job |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:processing-job/$
{
ProcessingJobName}
|
|
| hyper-parameter-tuning-job |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:hyper-parameter-tuning-job/$
{
HyperParameterTuningJobName}
|
|
| project |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:project/$
{
ProjectName}
|
|
| model-package |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:model-package/$
{
ModelPackageName}
|
|
| model-package-group |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:model-package-group/$
{
ModelPackageGroupName}
|
|
| model |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:model/$
{
ModelName}
|
|
| endpoint-config |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:endpoint-config/$
{
EndpointConfigName}
|
|
| endpoint |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:endpoint/$
{
EndpointName}
|
|
| transform-job |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:transform-job/$
{
TransformJobName}
|
|
| compilation-job |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:compilation-job/$
{
CompilationJobName}
|
|
| automl-job |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:automl-job/$
{
AutoMLJobJobName}
|
|
| monitoring-schedule |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:monitoring-schedule/$
{
MonitoringScheduleName}
|
|
| monitoring-schedule-alert |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:monitoring-schedule/$
{
MonitoringScheduleName}/alert/$
{
MonitoringScheduleAlertName}
|
|
| data-quality-job-definition |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:data-quality-job-definition/$
{
DataQualityJobDefinitionName}
|
|
| model-quality-job-definition |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:model-quality-job-definition/$
{
ModelQualityJobDefinitionName}
|
|
| model-bias-job-definition |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:model-bias-job-definition/$
{
ModelBiasJobDefinitionName}
|
|
| model-explainability-job-definition |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:model-explainability-job-definition/$
{
ModelExplainabilityJobDefinitionName}
|
|
| experiment |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:experiment/$
{
ExperimentName}
|
|
| experiment-trial |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:experiment-trial/$
{
TrialName}
|
|
| experiment-trial-component |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:experiment-trial-component/$
{
TrialComponentName}
|
|
| feature-group |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:feature-group/$
{
FeatureGroupName}
|
|
| pipeline |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:pipeline/$
{
PipelineName}
|
|
| pipeline-execution |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:pipeline/$
{
PipelineName}/execution/$
{
RandomString}
|
|
| artifact |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:artifact/$
{
HashOfArtifactSource}
|
|
| context |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:context/$
{
ContextName}
|
|
| action |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:action/$
{
ActionName}
|
|
| lineage-group |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:lineage-group/$
{
LineageGroupName}
|
|
| model-card |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:model-card/$
{
ModelCardName}
|
|
| model-card-export-job |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:model-card/$
{
ModelCardName}/export-job/$
{
ExportJobName}
|
|
| shared-model |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:shared-model/$
{
SharedModelId}
|
|
| shared-model-event |
arn:$
{
Partition}:sagemaker:$
{
Region}:$
{
Account}:shared-model-event/$
{
EventId}
|
Condition keys for Amazon SageMaker
Amazon SageMaker defines the following condition keys that can be used in the
Condition
element of an IAM policy. You can use these keys to further refine the conditions under which the policy statement applies. For details about the columns in the following table, see
Condition keys table
.
To view the global condition keys that are available to all services, see Available global condition keys .
| Condition keys | Description | Type |
|---|---|---|
| aws:RequestTag/${TagKey} | Filters access by a key that is present in the request the user makes to the SageMaker service | String |
| aws:ResourceTag/${TagKey} | Filters access by a tag key and value pair | String |
| aws:TagKeys | Filters access by the list of all the tag key names associated with the resource in the request | ArrayOfString |
| sagemaker:AcceleratorTypes | Filters access by the list of all accelerator types associated with the resource in the request | ArrayOfString |
| sagemaker:AppNetworkAccessType | Filters access by the app network access type associated with the resource in the request | String |
| sagemaker:CustomerMetadataProperties/${MetadataKey} | Filters access by a metadata key and value pair | String |
| sagemaker:CustomerMetadataPropertiesToRemove | Filters access by the list of metadata properties associated with the model-package resource in the request | ArrayOfString |
| sagemaker:DirectInternetAccess | Filters access by the direct internet access associated with the resource in the request | String |
| sagemaker:DomainSharingOutputKmsKey | Filters access by the Domain sharing output KMS key associated with the resource in the request | ARN |
| sagemaker:FeatureGroupDisableGlueTableCreation | Filters access by the DisableGlueTableCreation flag associated with the feature group resource in the request | Bool |
| sagemaker:FeatureGroupEnableOnlineStore | Filters access by the EnableOnlineStore flag associated with feature group in the request | Bool |
| sagemaker:FeatureGroupOfflineStoreConfig | Filters access by the presence of an OfflineStoreConfig in the feature group resource in the request. This access filter only supports the null-conditional operator | Bool |
| sagemaker:FeatureGroupOfflineStoreKmsKey | Filters access by the offline store kms key associated with the feature group resource in the request | ARN |
| sagemaker:FeatureGroupOfflineStoreS3Uri | Filters access by the offline store s3 uri associated with the feature group resource in the request | String |
| sagemaker:FeatureGroupOnlineStoreKmsKey | Filters access by the online store kms key associated with the feature group resource in the request | ARN |
| sagemaker:FileSystemAccessMode | Filters access by a file system access mode associated with the resource in the request | String |
| sagemaker:FileSystemDirectoryPath | Filters access by a file system directory path associated with the resource in the request | String |
| sagemaker:FileSystemId | Filters access by a file system ID associated with the resource in the request | String |
| sagemaker:FileSystemType | Filters access by a file system type associated with the resource in the request | String |
| sagemaker:HomeEfsFileSystemKmsKey | Filters access by a key that is present in the request the user makes to the SageMaker service. This key is deprecated. It has been replaced by sagemaker:VolumeKmsKey | ARN |
| sagemaker:ImageArns | Filters access by the list of all image arns associated with the resource in the request | ArrayOfString |
| sagemaker:ImageVersionArns | Filters access by the list of all image version arns associated with the resource in the request | ArrayOfString |
| sagemaker:InstanceTypes | Filters access by the list of all instance types associated with the resource in the request | ArrayOfString |
| sagemaker:InterContainerTrafficEncryption | Filters access by the inter container traffic encryption associated with the resource in the request | Bool |
| sagemaker:KeepAlivePeriod | Filters access by the keep-alive period associated with the resource in the request | Numeric |
| sagemaker:MaxRuntimeInSeconds | Filters access by the max runtime in seconds associated with the resource in the request | Numeric |
| sagemaker:MinimumInstanceMetadataServiceVersion | Filters access by the minimum instance metadata service version used by the resource in the request | String |
| sagemaker:ModelApprovalStatus | Filters access by the model approval status with the model-package in the request | String |
| sagemaker:ModelArn | Filters access by the model arn associated with the resource in the request | ARN |
| sagemaker:NetworkIsolation | Filters access by the network isolation associated with the resource in the request | Bool |
| sagemaker:OutputKmsKey | Filters access by the output kms key associated with the resource in the request | ARN |
| sagemaker:ResourceTag/ | Filters access by the preface string for a tag key and value pair attached to a resource | String |
| sagemaker:ResourceTag/${TagKey} | Filters access by a tag key and value pair | String |
| sagemaker:RootAccess | Filters access by the root access associated with the resource in the request | String |
| sagemaker:ServerlessMaxConcurrency | Filters access by limiting maximum concurrency used for Serverless inference in the request | Numeric |
| sagemaker:ServerlessMemorySize | Filters access by limiting memory size used for Serverless inference in the request | Numeric |
| sagemaker:TaggingAction | Filters access by the API actions to which a user can apply tags. Uses the name of the API operation that creates a taggable resource to filter access | String |
| sagemaker:TargetModel | Filters access by the target model associated with the Multi-Model Endpoint in the request | String |
| sagemaker:VolumeKmsKey | Filters access by the volume kms key associated with the resource in the request | ARN |
| sagemaker:VpcSecurityGroupIds | Filters access by the list of all VPC security group ids associated with the resource in the request | ArrayOfString |
| sagemaker:VpcSubnets | Filters access by the list of all VPC subnets associated with the resource in the request | ArrayOfString |
| sagemaker:WorkteamArn | Filters access by the workteam arn associated to the request | ARN |
| sagemaker:WorkteamType | Filters access by the workteam type associated to the request. This can be public-crowd, private-crowd or vendor-crowd | String |


The SourceDebugExtension attribute is an optional
attribute in the attributes table of the
ClassFile structure. There can be no more than one
SourceDebugExtension attribute in the
attributes table of a given ClassFile
structure.
The SourceDebugExtension attribute has the
following format:
SourceDebugExtension_attribute {
u2 attribute_name_index;
u4 attribute_length;
u1 debug_extension[attribute_length];
}
The items of the SourceDebugExtension_attribute
structure are as follows:
attribute_name_index
- The value of the
attribute_name_index item must be
a valid index into the constant_pool table. The
constant_pool entry at that index must be a
CONSTANT_Utf8_info structure representing the string
"SourceDebugExtension" .
attribute_length
- The value of the
attribute_length item indicates
the length of the attribute, excluding the initial six bytes. The
value of the attribute_length item is thus the number
of bytes in the debug_extension[] item.
debug_extension[]
- The
debug_extension array holds a string, which
must be in UTF-8 format. There is no terminating zero byte.
The string in the debug_extension item will be
interpreted as extended debugging information. The content of this
string has no semantic effect on the Java Virtual Machine.
|


Copyright © 2009 Michael Truog
Version: 0.0.7 Apr 10 2010 21:58:01 ------------------------------------------------------------------------
Behaviours: gen_server.
Authors: Michael Truog (mjtruog [at] gmail (dot) com).
| code_change/3 | |
| decode/4 |
Decode asn1 data coming from the worker cnode interface and respond by sending asn1 data.Server state is modified to reflect any changes within the work manager. |
| get_task_speed_lookup/0 |
Get the current task lookup from the work manager.If the call has a timeout or error, an empty dictionary is returned so that everything can function but without the benefit of previous scheduling information. |
| handle_call/3 | |
| handle_cast/2 | |
| handle_info/2 | |
| init/1 | |
| start_link/0 |
Start the work manager server process.. |
| terminate/2 | |
| update/1 |
Update the work manager with recently scheduled processes.. |
code_change(X1, State, X3) -> any()
decode(State, Source, Data, Self) -> any()
get_task_speed_lookup() -> any()
handle_call(Request, X2, State) -> any()
handle_cast(Request, State) -> any()
handle_info(Request, State) -> any()
init(X1) -> any()
start_link() -> any()
terminate(X1, State) -> any()
update(Processes) -> any()
Generated by EDoc, Apr 10 2010, 21:58:01.


Dashboard
Search
Edit Profile
Logout
Raise New Ticket
Citizen Name:
Citizen Email:
Organisation Name
Organisation Email
Description
Organic Waste Pickup
E-Waste Pickup
Monetary Donations
Non-Monetary Donations
Type
Once
Recurring (Daily)
Recurring (Weekly)
Recurring (Monthly)
Pickup Date
to
Raise Ticket


Ashwani Kumar
Menu
Skip to content
Home
Blog
Tutorials
Unity3d
Android
GitHub
About Me
Sidebar
All Repositories
Download .zip
Download .tar.gz
View on GitHub


Toggle navigation
Home
About
Web App MVC Template
This is a web application starter template built with AngularJS with an MVC structure


CloudBrew 2018
A two-day conference by AZUG, the Belgium Microsoft Azure User Group
Friday, October 12, 2018 - Saturday, October 13, 2018
About CloudBrew
CloudBrew started in 2013 as a small-scale event focused on cloud technologies and Microsoft Azure.
-
Microsoft Azure
Two full days of Microsoft Azure! We will have some local and international speakers who will share their knowledge and experience.
-
Beers and great lunch
The event takes place in a former brewery. We'll have a lunch buffet and beers. But no worries! We'll have plenty of coffee and soda, too.
-
Small scale
We intentionally keep CloudBrew small-scale. This gives the event a more intimate feeling. It also allows us to keep the cost low, providing a day of learning that's really worth everyone's valuable time.
-
Community
Organized by AZUG, the Belgium Microsoft Azure User Group, CloudBrew originates from the community. Both you and our speakers are part of it. Ideal to network with peers!
Agenda
Click on any session to see more details.
Speakers
Click on any speaker to see more details.
Location
CloudBrew takes place at Lamot, Van Beethovenstraat 8-10, 2800 Mechelen (Belgium)
Q-Park and Indigo parkings are nearby. Check Lamot's website for up-to-date parking and public transportation options. More parkings in Mechelen can be found on the Toerisme Mechelen website.
Stay in touch
We have several evening sessions during the year as well. Join our newsletter and we'll keep you posted!


debugout.js (debug output) generates a text file from your logs that can be searched, timestamped, downloaded and more. See examples and usage on GitHub.
Install via npm or bower using the package name debugout.js
or
Create a new debugout object and replace all your console logs with debugout's log method:
var bugout = new debugout();
bugout.log('A date:');
bugout.log(d);
bugout.log('An array:');
bugout.log(arr);
bugout.log('A function:');
bugout.log(bugout.objectSize);
bugout.log('A regex');
bugout.log(rgx);
bugout.log('an object with nested objects...');
bugout.log(obj);
bugout.log('an array of objects...');
bugout.log(arrayWithObjects);
// Use a method above and output will be displayed here


Experienced and results-oriented Full-stack Developer and loves Backend with a deep passion for the job and experience in building high quality Web applications and APIs. Offering a strong attention to detail and accuracy, excellent problem-solving skills, and the important ability to work in fast-paced team environments, Pascalis a reliable individual with determination to meet and exceedall assigned results.
Get startedBackend Developer
Technical Writer
Azure Developer
Experienced and results-orientedFull-stack Developer and loves Backend with a deep passion forthe job and experience in buildinghigh quality Web applications andAPIs. Offering a strong attention todetail and accuracy, excellentproblem-solving skills, and theimportant ability to work in fast-paced team environments, Pascalis a reliable individual withdetermination to meet and exceedall assigned results.
CONTACT ME
081-6171-8694
<EMAIL_ADDRESS>Lagos, Nigeria


Log your first donation and start tracking your giving!
Log in or create an account to keep track of your giving!


- test(Filter, Class) - Static method in class cufy.meta.Filter.util
-
Check whether the given class is in the given family or not.
- test(T, U) - Method in interface cufy.util.function.ThrowBiPredicate
-
- test0(T, U) - Method in interface cufy.util.function.ThrowBiPredicate
-
Evaluates this predicate on the given arguments.
- thread(Loop<?, ?>) - Method in class cufy.concurrent.Instructor
-
Start the given loop with a new thread.
- thread - Variable in class cufy.concurrent.Loop
-
The first caller of this loop.
- thread() - Method in class cufy.concurrent.Loop
-
Start this loop on a new Thread.
- thread(String) - Method in class cufy.concurrent.Loop
-
Start this loop on a new Thread.
- ThrowBiConsumer<T,U,E extends java.lang.Throwable> - Interface in cufy.util.function
-
Functional Interface that can be specified to throw an exception.
- ThrowBiFunction<T,U,R,E extends java.lang.Throwable> - Interface in cufy.util.function
-
Functional Interface that can be specified to throw an exception.
- ThrowBinaryOperator<T,E extends java.lang.Throwable> - Interface in cufy.util.function
-
Functional Interface that can be specified to throw an exception.
- ThrowBiPredicate<T,U,E extends java.lang.Throwable> - Interface in cufy.util.function
-
Functional Interface that can be specified to throw an exception.
- ThrowConsumer<T,E extends java.lang.Throwable> - Interface in cufy.util.function
-
Functional Interface that can be specified to throw an exception.
- ThrowFunction<T,R,E extends java.lang.Throwable> - Interface in cufy.util.function
-
Functional Interface that can be specified to throw an exception.
- ThrowingSupplier<T,E extends java.lang.Throwable> - Interface in cufy.util.function
-
Functional Interface that can be specified to throw an exception.
- ThrowRunnable<E extends java.lang.Throwable> - Interface in cufy.util.function
-
Functional Interface that can be specified to throw an exception.
- ThrowUnaryOperator<T,E extends java.lang.Throwable> - Interface in cufy.util.function
-
Functional Interface that can be specified to throw an exception.
- tick() - Method in class cufy.concurrent.Instructor
-
Do the posts posted on this group.
- tick(Loop<?, ?>) - Method in class cufy.concurrent.Instructor
-
Do the posts posted on this group.
- tick() - Method in class cufy.concurrent.Loop
-
Do things that should be done by this loop (except the loop code).
- toString() - Method in class cufy.beans.AbstractBean
-
- toString() - Method in class cufy.lang.Clazz
-
- tree - Variable in class cufy.convert.ConvertToken
-
A table of data globally shared across this token and it's sub-tokens.
- tree - Variable in class cufy.text.ClassifyToken
-
A table of data globally shared across this token and it's sub-tokens.
- tree - Variable in class cufy.text.FormatToken
-
A table of data globally shared across this token and it's sub-tokens.
- tree - Variable in class cufy.text.ParseToken
-
A table of data globally shared across this token and it's sub-tokens.
- type - Variable in class cufy.beans.Bean.FieldEntry
-
The type of the value of this entry.
- Type - Annotation Type in cufy.meta
-
A recipe to pass information about a clazz in the annotations environment.
- Type.util - Class in cufy.meta
-
Utilities for this annotation.


Project TetraNet
Dashboard
Analyze
History
My Dashboard
Device Connected
Coordinates: 0.00 0.00
Humidity
Temperature
Air Pressure
Coordinates: 0.00 0.00
Humidity
Temperature
Air Pressure


Customize the initialization of Starling in a Feathers MXML application
When you create a new Feathers application in MXML, Starling is initialized automatically by the compiler, behind the scenes. The default settings will work well for most Feathers apps to support common requirements like stage and view port resizing, high DPI displays on desktop, and creating a theme. However, advanced developers may wish to customize some of these settings.
In your project's application, you can provide your own [Frame]
metadata to use a custom class to initialize Starling:
<f:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:f="library://ns.feathersui.com/mxml">
<fx:Metadata>
[Frame(factoryClass="com.example.CustomBootstrap")]
</fx:Metadata>
</f:Application>
A very simple startup class might look something like this:
package com.example
{
import flash.display.Sprite;
import starling.core.Starling;
public class CustomBootstrap extends Sprite
{
public function CustomBootstrap()
{
this._starling = new Starling( MyApp, this.stage );
this._starling.start();
}
private var _starling:Starling;
}
}


Personal information:
First name:
Last name:
What school do you go to?
Select a School
Western Kentucky University
Southcentral Kentucky Community and Technical College
Kentucky Mountain Bible College
Kentucky Wesleyan College
I agree to the terms etc


To view this video please enable JavaScript, and consider upgrading to a web browser that supports HTML5 video


Hi, my name is
Arpan Patel.
I love building things.
I develop awesome
Websites &
Applications.
Mobile apps using Flutter & everything in between.
Contributing to OpenSource is my favourite activity!
I enjoy Public Speaking and had a few as well!
I love to pen down ocassionally Blogs as well!


Post a Project
Project Title*
Category*
Sub Category*
Location Type*
On site
Online
Location*
Completion Date*
Project Description*({{description.length}}/2000 remaining)
Other skills*({{skills.length}}/2000 remaining)
Budget Type*
Total Amount
Hourly Rate
Project Budget*
Working Hours


Edmonds CC volleyball seeks second straight NWAC trophy
The Tritons are the North Region’s No. 2 seed for the NWAC tournament, which begins Thursday in Tacoma.
by Nick PattersonThe Edmonds Community College volleyball team is seeking another trophy.
The 2019 Northwest Athletic Conference Volleyball Championship begins Thursday at the Greater Tacoma Convention Center, and the Tritons are one of 16 teams bidding for the tournament’s four trophies. Last year Edmonds took fourth place to claim its first trophy since 2008.
Edmonds, the No. 2 seed from the North Region, opens the double-elimination tournament against South No. 3 Linn-Benton at 2 p.m. Thursday. Linn-Benton won both times the teams met during the regular season, prevailing 3-2 on Sept. 4 in Albany, Oregon, and 2-0 on Sept. 7 in Bellevue. But on both occasions the Tritons were without top setter Haylee Hooper.
Here’s a capsule look at the Tritons:
Edmonds Tritons
Coach: Tony Miranda
Record: 27-12
Seed: North No. 2
NWAC rank: Unranked
Streak: Won five, including a 3-0 sweep of North champion Whatcom in its season finale
Top players:
Sophomore outside hitter Sadie Gardner from Vernal, Utah, the team leader in kills (313) and digs (225)
Freshman middle blocker Danika Brown from Anchorage, Alaska, second on the team in kills (166) and first in blocks (88)
Sophomore setter Haylee Hooper from Auburn, the team’s No. 1 setter
First-round opponent: South No. 3 Linn-Benton (27-10, unranked)
Tournament favorites: East No. 1 North Idaho (27-3), West No. 1 Pierce (33-2), East No. 2 Spokane (31-2)
Bracket: Can be found at nwacsports.org


Danny Dyer (born 1977-07-24[ref]) has appeared in 24 episodes between 2007-2018. Danny Dyer on IMDB. Danny Dyer on Wikipedia.


|
You begin entering your observations by clicking the mouse on the Enter Interpretation tab near the top of the Control Panel window. Data entry is divided into four separate subscreens. The data entry screen for each subscreen is activated by one of the large buttons on the left. General Procedure
Button Color CodingEach of these buttons is initially displayed with a redish color to indicate that it has not yet been activated for the current study. When you click on a button it will turn gray to indicate that its data entry section has been visited. A button will turn green to indicate that you have entered sufficient data to complete that section. |
| You open the first data entry screen by clicking the Indicate Image Quality button. It will turn gray to indicate that the image quality screen has been visited. Initially, the four image quality indicator buttons are displayed. Depending upon which one you select, additional data entry options may be displayed on this screen. |
| Click on button number 1 to indicate good image quality. In this case, no further information about image quality needs to be entered, so the color of the "Indicate Image Quality" button changes to green to indicate that this section has been completed. |
| If the image is less than optimal, then instead of selecting button "1", you would click on one of the buttons "2", "3" or "U/R". In this case, additional information about image quality needs to be entered, so additional options will be displayed. |
| If you select "Other", you will be asked to elaborate by entering descriptive information. |
|
This screen image shows a completed set of observations for the Parenchymal Abnormalities section. Note that the color of the large "Parenchymal Abnormalities" button on the left is now green, indicating that this section has been completed. By the way, the four major data entry sections may be completed in any order you choose. The color of the large buttons will remind you which sections have not been completed. |
|
This screen image shows data entry in progress for the Pleural Abnormalities section. If either the "R" or "L" button in the bottom row is clicked, additional data entry options will be displayed. |
|
This screen image shows data entry beginning for the Other Abnormalities section. When this and the other three observation entry sections are complete, you proceed by clicking the white "Produce Report" button. This takes you to the next tab on the Control Panel, the "Produce Report" tab. |
|
This screen image shows sample data entry for the "Produce Report" tab. After the information is entered, you click the "Show Report" button at the bottom of the screen. This causes the first page of the completed report form to be displayed. |
|
The Report Display Window shows the first page of the completed two-page report form. Clicking on the "Show Page 2" button at the top of the window will cause the second page to be displayed. This button allows you to toggle back and forth between the two pages. You can optionally magnify and pan this report display by using your mouse as you would for a subject study image. Clicking the "Reset Image" button will restore the original display size and position, just as it would for the subject study image. Clicking on the "Print Report" button will cause the 2-page report form to be printed using the usual Windows printer options available on your computer workstation. |
| Here the "Approve Report" button has just been clicked. This action will close the current study. The pop-up question prompts you to delete the information for the study just completed. Clicking the "Approve Report" button represents your final sign-off on this study. |


Contents:
psychopy.core
- basic functions (clocks etc.)psychopy.visual
- many visual stimulipsychopy.clock
- Clocks and timerspsychopy.data
- functions for storing/saving/analysing datapsychopy.event
- for keypresses and mouse clickspsychopy.filters
- helper functions for creating filterspsychopy.gui
- create dialogue boxespsychopy.hardware
- hardware interfacespsychopy.info
- functions for getting information about the systempsychopy.iohub
- ioHub event monitoring frameworkpsychopy.logging
- control what gets loggedpsychopy.microphone
- Capture and analyze soundpsychopy.misc
- miscellaneous routines for converting units etcpsychopy.monitors
- for those that don’t like Monitor Centerpsychopy.parallel
- functions for interacting with the parallel portpsychopy.preferences
- getting and setting preferencespsychopy.serial
- functions for interacting with the serial portpsychopy.sound
- play various forms of soundpsychopy.tools
- miscellaneous toolspsychopy.voicekey
- Real-time sound processingpsychopy.web
- Web methods


| Selector |
|
Description |
type="" |
Required |
don't forget the type attribute. Requires one of the following values: ["submit", "button", "reset"] |
States
If the states are toggled with extra classes you can add .has-
, or with JavaScript .js-has-
state classes.
Full width
| Selector |
|
Description |
.button--block |
Required |
Modifier class |
Links
Even links can be turned into buttons.


EsaKit
A Swift framework for the esa.io API
let client = EsaClient(token: "your_token", teamName: "your_team_name")
client.members()
.startWithResult { result in
switch result {
case let .success(response, members):
print("\(response)") // => Response(xRateLimitLimit: 75, XRateLimitRemaining: 71)
print("\(members)") // => Memberss(members: [EsaKit.MemberUser(name:...
case let .failure(error):
print("An error occured: \(error)")
}
}
client.teamName = "other_your_team_name"
client.posts()
.startWithResult { result in
switch result {
case let .success(response, posts):
print("\(response)") // => Response(xRateLimitLimit: 75, XRateLimitRemaining: 70)
print("\(posts)") // => Posts(posts: [EsaKit.Post(number: 11, name:...
case let .failure(error):
print("An error occured: \(error)")
}
}
EsaKit is build with ReactiveSwift and Sourcery.
Requirements
EsaKit requires / supports the following environments:
- Swift 3.0 / Xcode 8.1
- OS X 10.10 or later
- iOS 9.0 or later
Installation
Carthage
- Insert
github "pixyzehn/EsaKit"
to your Cartfile. - Run
carthage update
. - Link your app with
EsaKit.framework
,ReactiveSwift.framework
andResult.framework
inCarthage/Build
.
CocoaPods
- Insert
pod 'EsaKit'
to your Podfile. - Run
pod install
.
Swift Package Manager
- Add EsaKit as a dependency of your package in
Package.swift
..Package(url: "https://github.com/pixyzehn/EsaKit.git", majorVersion: 0, minor: 2)
Usage
Read the docs. Generated with jazzy.


##What is the Web Audio Api?
![HTML 5](img/h5_logo.png)
The [Web Audio Api](https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html) is a high-level JavaScript API for processing and synthesizing audio in web applications. It is currently being spearheaded by Chris Rogers at Google.
The Web Audio API comes with a number of natively compiled audio nodes capable of doing quite a bit of advanced synthesis.
You can check out Hongchan's [WAAX](https://github.com/hoch/waax) library for an example of extensive work being done with native nodes.
But What if you want something more?
I present to you
##The JavaScriptNode
The JavaScriptNode allows individuals to create their own web audio nodes in pure JavaScript. This allows individuals to extend the Web Audio Api with custom nodes.
Web Audio Libraries such as [Flocking](flockingjs.org) by Colin Clark and [Gibber](http://www.charlie-roberts.com/gibber/) by Charlie Roberts make extensive use of the JavaScriptNode.
========
#WARNING
========
Currently native Web Audio nodes and JavaScriptNodes don't play so nicely together, most implementations of Web Audio tend to pick one or the other.
So what do you want, stability or the bleeding edge
##What does faust look like?
Below is an example of Noise Written in Faust
```
random = +(12345)~*(1103515245);
noise = random/2147483647.0;
process = noise * vslider("Volume[style:knob]", 0, 0, 1, 0.1);
```
##What does a WebAudioNode look like?
Below is an example of White Noise taken from Flocking
```
flock.ugen.whiteNoise = function (inputs, output, options) {
var that = flock.ugen(inputs, output, options);
that.gen = function (numSamps) {
var out = that.output,
i;
for (i = 0; i < numSamps; i++) {
out[i] = Math.random();
}
that.mulAdd(numSamps);
};
that.onInputChanged = function () {
flock.onMulAddInputChanged(that);
};
that.onInputChanged();
return that;
};
```
##But Doesn't Faust Already compile to web audio?
##But does it work?
[Current Faust2Webaudio Noise](examples/current-noise.html)
There is only one answer...
##Before we start a flame war
![Flame War](img/flame_war.gif)
#I freaking love JavaScript
##But there are some things it can't do...
##asm.js to the rescue!
[![asm.js](http://static.techspot.com/images2/news/thumbs/2013-05-23-teasercc7.jpg)](http://asmjs.org/)
asm.js is a strict subset of JavaScript that can be used as a low-level, efficient target language for compilers. The asm.js language provides an abstraction similar to the C/C++ virtual machine: a large binary heap with efficient loads and stores, integer and floating-point arithmetic, first-order function definitions, and function pointers.
##What does an asm.js
##WebAudioNode look like?
An example from the asmjs Flocking Branch
```
flock.ugen.asmSin.module = function (stdlib, foreign, heap) {
"use asm";
var sin = stdlib.Math.sin;
var pi = 3.14159;
var out = new stdlib.Float32Array(heap);
function gen (numSamps, freq, phaseOffset, mul, add, sampleRate, phase) {
numSamps = numSamps|0;
freq = +freq;
phaseOffset = +phaseOffset;
mul = +mul;
add = +add;
sampleRate = +sampleRate;
phase = +phase;
var i = 0;
for (; (i | 0) < (numSamps | 0); i = i + 1 | 0) {
out[i >> 2] = +(sin(phase + phaseOffset) * mul + add);
phase = +(phase + (freq / sampleRate * pi * 2.0));
}
return +phase;
}
return {
gen: gen
};
};
```
##So this is all great, but I don't want to hand roll asm.js like a sucker...
##Introducing
[![Emscripten](img/emscripten.jpg)](http://emscripten.org/)
Emscripten is an LLVM to JavaScript compiler. It takes LLVM bitcode (which can be generated from C/C++ using Clang, or any other language that can be converted into LLVM bitcode) and compiles that into JavaScript, which can be run on the web (or anywhere else JavaScript can run).
##Faust -> C++
So using the faust compiler (specifically the faust2-asmjs branch) we can compile from [faust](https://gist.github.com/TheAlphaNerd/5710239#file-noise-dsp) to [C++](https://gist.github.com/TheAlphaNerd/5710239#file-noise-emscripten-cpp) with the following command
```
faust -a minimal.cpp -i -uim -cn Noise \
dsp/noise.dsp -o cpp/faust-noise.cpp
```
In order to get access to the verious parts of a C++ class via emscripten we need to write a simple wrapper on top of our Noise class.
```
// Adapted From https://gist.github.com/camupod/5640386
// compile using "C" linkage to avoid name obfuscation
extern "C" {
float** fInChannel;
float** fOutChannel;
int numInputs;
int numOutputs;
//constructor
void *NOISE_constructor(int samplingFreq, int bufferSize) {
// Make a new noise object
Noise* n = new Noise();
// Init it with samplingFreq supplied... should we give a sample size here too?
n->init(samplingFreq);
// Lets get this once so we don't need to keep calculating every call to compute
numInputs = n->getNumInputs();
numOutputs = n->getNumOutputs();
// This Needs to be dealt with... curently only able to return a single buffer... rather
// Way too mono...
// This is due to the Channels not being properly initialized... need to look at how
// Other architecture fiels do this a bit better
for (int i = 0; i < numInputs; i++) {
fInChannel[i] = new float[bufferSize];
}
for (int i = 0; i < numOutputs; i++) {
fOutChannel[i] = new float[bufferSize];
}
return n;
}
FAUSTFLOAT *NOISE_compute(Noise *n, int count) {
n->compute(count, fInChannel, fOutChannel);
// Returning due to problem as mentioend above...
return fOutChannel[0];
}
int NOISE_getNumInputs(Noise *n){
return n->getNumInputs();
}
int NOISE_getNumOutputs(Noise *n){
return n->getNumOutputs();
}
void NOISE_destructor(Noise *n) {
for (int i = 0; i < numInputs; i++) {
delete fInChannel[i];
}
for (int i = 0; i < numOutputs; i++) {
delete fOutChannel[i];
}
delete n;
}
}
// Number of channels gotten from getNumInputs / getNumOutputs
// fOutChannel[i] = (float*)ioData->mBuffers[i].mData;
```
We can then compile the resulting C++ file to asm.js using emscripten with the following command
```
emcc cpp/faust-noise.cpp -o js/faust-noise-temp.js \
-s EXPORTED_FUNCTIONS="['_NOISE_constructor','_NOISE_destructor', \
'_NOISE_compute', '_NOISE_getNumInputs', '_NOISE_getNumOutputs']"
```
Which creates this [JavaScript file](https://gist.github.com/TheAlphaNerd/5710239#file-noise-emscripten-js)
Finally we apply the following JavaScript wrapper in order to break out the functions we wrapped earlier in C++
```
// Adapted From https://gist.github.com/camupod/5640386
var faust = faust || {};
(function() {
faust.context = new webkitAudioContext();
var NOISE_constructor = Module.cwrap('NOISE_constructor', 'number', 'number');
var NOISE_destructor = Module.cwrap('NOISE_destructor', null, ['number']);
var NOISE_compute = Module.cwrap('NOISE_compute', ['number'], ['number', 'number']);
var NOISE_getNumInputs = Module.cwrap('NOISE_getNumInputs', 'number', []);
var NOISE_getNumOutputs = Module.cwrap('NOISE_getNumOutputs', 'number', []);
faust.noise = function () {
that = {};
that.ptr = NOISE_constructor(faust.context.sampleRate);
that.getNumInputs = function () {
return NOISE_getNumInputs();
}
that.getNumOutputs = function () {
return NOISE_getNumOutputs();
}
that.compute = function (count) {
return NOISE_compute(that.ptr, count);
}
that.destroy = function () {
NOISE_destructor(that.ptr);
}
return that;
}
}())
noise = faust.noise();
```
#Sure,
#[take a listen](demo/index.html)
##But it is unnecessarily complicated
###Managing memory in C++ while maintaining persistence when compiled to JavaScript can be tricky.
###Specifically because faust represents inputs and outputs as a float **
That means the input and output variables are in fact a pointer to an array of channels
Each channel in the array is a pointer to a buffer
Each buffer is an array consisting of the samples represented as a floating point number between -1 and 1.
##This seems unnecessarily complicated
##Why should we be spending time managing these pointers?
##How are we supposed to deal with the pointers in JavaScript land without creating lots of garbage?
##But didn't I say Faust is Functional?
###So why are am I going from
Functional -> Object Oriented -> Functional
![Clever Girl](img/clever-girl.png)
##Emscripten comes with its own virtual machine as well as a number of compilation optimizations
##Simply put, a bunch of performance for free!
##That made it a tempting starting point
##As a primary research goal is to create very efficient web audio based unit generators
>
#Moving Forward
##Faust -> asm.js directly
###Prior to being compiled to C++, faust is compiled to Faust Intermediate Representation (FIR)
It is in this form that Faust is compiled to specific language architectures such as C++ and java.
##It is from FIR that we can compile directly to asm.js
##While Faust -> JavaScript directly might be more elegant
###There is no guarantee it will be faster
###As such we need to continue to develop both and compare via benchmarks to see which method ends up being more efficient
##In Conclusion
Faust in the browser would be awesome
##But we are not quite there yet.
###Even if we solve the compilation issues, we will still run into the ceiling of the browser due to all processes running in a single thread
##But if WebAudio is going to have a future, it is important to be able to extend it.
#Find the source on [Github](https://github.com/TheAlphaNerd/faust2webaudio)
Thank You
by Myles Borins


Chapter 3 Software User Manual
This chapter presents the main interfaces of BIcenter, aiming to help users to navigate through the system.
3.1 Initial views
The login page presented in Figure 3.1 allows users to be authenticated using their credentials. This can be connected with the institution LDAP, which provides a central place to store usernames and passwords.
After the authentication process, the user is redirected to the application’s home page represented in Figure 3.2. This page contains all the institutions that the user belongs to. In this case, this user has permission to create a new instance of an institution in the application using the modal illustrated in Figure 3.3.
3.2 Institutional features
The configuration of a data source is illustrated in Figures 3.4 and 3.5. Firstly is created the data source instance in the institution, and then, the details of this connection are inserted in the modal represented in Figure 3.5.
The connection to the remote server follows a similar flow. This configuration is illustrated in Figures 3.6 and 3.7.
Finally, the ETL tasks are also created for the institutions. This feature redirects the users to the ETL Task Editor, in which they can design and implement an ETL pipeline using the web interface. The creation of a new task can be done by using the option represented in Figure 3.8.
3.3 ETL Task Editor
The ETL Task Editor allows users to create an ETL pipeline by dragging and dropping ETL components. Figure 3.9 shows an overview of this web editor.
Figure shows an example of an ETL pipeline implemented in the ETL Task Editor using the four most common ETL components.
The components available to implement these ETL pipelines are available on the left menu. Part of this menu is represented in Figure , which is expanded the components for input, output and transformations.
The navigation bar illustrated in Figure allows the uses to operate over the ETL Task. This menu is divided into sub-menus: 1) step, which contains the features to configure each ETL component in the pipeline and analyse the input and output of each step; 2) execution, which defined if the ETL task will be executed locally or in a remote server; edit, contain the editing usual features, such as cut, copy, paste, delete, undo and redo; and 4) select, which is related with the drawing features.


BURNT BY THE SUN A film review by James Berardinelli Copyright 1995 James Berardinelli
RATING (0 TO 10): 7.0
U.S. Availability: limited release beginning 4/95 Running Length: 2:14 MPAA Classification: R (Violence, sex, mature themes)
Cast: Nikita Mikhalkov, Ingeborga Dapkounaite, Oleg Menchikov, Nadia Mikhalkov Director: Nikita Mikhalkov Producers: Nikita Mikhalkov and Michel Seydoux Screenplay: Nikita Mikhalkov and Roustam Ibraguimbekov Cinematography: Vilen Kaluta Music: Edouard Artemiev U.S. Distributor: Sony Pictures Classics In Russian with subtitles
BURNT BY THE SUN, the winner of 1995's Best Foreign Film Oscar, attempts, with only limited success, to combine two segments of radically different pacing and temperament. The movie's resolution represents forty-five minutes of taut, arresting drama. The setup, which weighs in at an overlong ninety minutes, has a tendency to meander. The overall effect is to limit the impact of the picture, primarily because half the audience may be asleep by the time the climax arrives.
The film takes place in 1936 Russia, nineteen years after the Communist Revolution and well into Stalin's reign of terror. We are introduced to Colonel Serguei Kotov (Nikita Mikhalkov), hero of the Revolution, and his family: young wife Maroussia (Ingeborga Dapkounaite) and six-year old daughter Nadia (Nadia Mikhalkov). They are spending a happy, peaceful summer at a rural retreat. Into this idyllic setting comes Dimitri (Oleg Menchikov), an old lover of Moroussia's who was once in exile and whose current occupation is unknown. His appearance irrevocably alters the loving relationship between Kotov and his wife as secrets, both new and old, come to light, and buried jealousy bubbles to the surface.
Director Nikita Mikhalkov is up front about the ultimate meaning of his film, dedicating it to "everyone who was burnt by the sun of the Revolution." This movie is very much an attack on the policies and paranoia of Stalin. The chilling final scenes emphasize the theme as we come to realize just how far-reaching the dictator's grasp was, and how insecure even the most loyal patriots were.
BURNT BY THE SUN's most apparent flaw is the stagnancy of its first two-thirds, which are scripted like Checkov in slow-motion, but without depth. Other than establishing relationships and hinting at past misdeeds, this portion of the film serves little purpose beyond presenting impressive views of Russian country vistas and highlighting several fine performances. Directors like the legendary Ingmar Bergman embraced this sort of deliberate, unhurried pace, but Bergman's films always had multiple levels of meaning.  Only in the final third does the plot begin to explore issues of substance and power.
Symbolism plays a key part in BURNT BY THE SUN. Some of it, like a huge, billowing portrait of Stalin, is obvious, but much is obscure. It's left up to the individual viewer to determine how literally to take several instances of magic realism -- not that a particular interpretation will more than subtly change anyone's appreciation of the film. Mikhalkov makes sure that his principal thesis is conveyed in such a manner that it's impossible to overlook or misunderstand.
BURNT BY THE SUN is characterized by solid acting (including a performance by director Mikhalkov as Kotov), but the real standout is the film maker's daughter Nadia, who displays a wonderfully wide-eyed energy and unexpected aptitude for dialogue. At the tender age of six, the young actress gives an amazingly unforced portrayal.
This is the first anti-Stalin film to come out of post-Communist Russia, and the new freedom shows in the full scope of what Mikhalkov is able to criticize. This story is the latest to illustrate the age-old injustices inherent in absolute power and how easily past loyalties are betrayed. After the protracted and sluggish setup, the meat of BURNT BY THE SUN is as gripping as that of any "serious" motion picture -- it's getting to that point that's the main difficulty.
- James Berardinelli<EMAIL_ADDRESS>The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


Asha Benjamin is currently a full stack web student at Lambda School. She enjoys photography, spending time with her family and a lot of quiet time. She can’t cook rice but creates a decent react app.
Julian is a Full stack Developer student at lambda and is looking forward to a rewarding career in the tech industry, his hobbies outside of engineering are outdoor sports such as snowboarding.
Laura is a full-stack web developement student at Lambda, based in Boise, ID. She's a tech enthusiast and lover of food. Aside from coding, you can usually find her taking cat naps or cooking high quality meals.
Megan Holt is currently a stay at home mom studying Full Stack Web Development at Lambda School. During the day you can find her cooking and taking care of her husband and four kids, and at night you'll probably find her journaling or gaming! Megan was born and raised in Hawaii but currently lives in the beautiful Pacific Northwest.
Rose is a Full Stack Web Development student at Lambda, and is looking forward to beginning her career in tech. She is hoping to relocate to either the West Coast of North America, or internationally to Europe with her first job move. Her non-coding hobbies include reading, exploring, and trying new things.
Lorem ipsum dolor, sit amet consectetur adipisicing elit. Commodi, sequi? Eveniet ipsum laborum quas molestias iure, a eos non quibusdam suscipit maxime sint voluptatum eum est officia deleniti hic possimus?
Sophia is a Full Stack Web Dev student at Lambda, from Michigan. Sophia is also studying for Cisco DEVASC exam in hopes to use her coding skills to create a career in DevOps after graduation. She enjoys reading and watching horror movies in her free time.


Using the youtube_dl
module¶
When using the youtube_dl
module, you start by creating an instance of YoutubeDL
and adding all the available extractors:
>>> from youtube_dl import YoutubeDL
>>> ydl = YoutubeDL()
>>> ydl.add_default_info_extractors()
Extracting video information¶
You use the YoutubeDL.extract_info()
method for getting the video information, which returns a dictionary:
>>> info = ydl.extract_info('http://www.youtube.com/watch?v=BaW_jenozKc', download=False)
[youtube] Setting language
[youtube] BaW_jenozKc: Downloading webpage
[youtube] BaW_jenozKc: Downloading video info webpage
[youtube] BaW_jenozKc: Extracting video information
>>> info['title']
'youtube-dl test video "\'/\\ä↭𝕐'
>>> info['height'], info['width']
(720, 1280)
If you want to download or play the video you can get its url:
>>> info['url']
'https://...'
Extracting playlist information¶
The playlist information is extracted in a similar way, but the dictionary is a bit different:
>>> playlist = ydl.extract_info('http://www.ted.com/playlists/13/open_source_open_world', download=False)
[TED] open_source_open_world: Downloading playlist webpage
...
>>> playlist['title']
'Open-source, open world'
You can access the videos in the playlist with the entries
field:
>>> for video in playlist['entries']:
... print('Video #%d: %s' % (video['playlist_index'], video['title']))
Video #1: How Arduino is open-sourcing imagination
Video #2: The year open data went worldwide
Video #3: Massive-scale online collaboration
Video #4: The art of asking
Video #5: How cognitive surplus will change the world
Video #6: The birth of Wikipedia
Video #7: Coding a better government
Video #8: The era of open innovation
Video #9: The currency of the new economy is trust


"The flight in took my breath away, just like every moment on the island"
"Bucket list: checked"
"Will never forget this"
"Saved my marriage"


Open this tutorial in a jupyter notebook.
Convolutional Layers¶
For this tutorial, the MNIST dataset will be used. With this one, it is simple to have good results. You can try other popular dataset (like SVHN, CIFAR10 etc.).
Datset¶
import numpy as np
import random as rd
import matplotlib.pyplot as plt
import nets
import nets.datasets as datasets
# IMPORTANT: normalize the data !
# 1. reshape from (data_length, 32, 32, 3) to (data_length, 32 * 32 * 3)
reshape = lambda x: x.reshape(-1, 784)
# 2. scale the data: data = (data - mean) / std
normalize = lambda x: (x - np.mean(x, axis=1, keepdims=True)) / np.std(x, axis=1, keepdims=True)
# 3. all together
transform = lambda x: normalize(reshape(x)).reshape(-1, 1, 28, 28)#.transpose(0, 3, 1, 2)
# Download the training and testing data
train_data, test_data = datasets.MNIST.splits(transform = transform)
# Check the data
train_data
Out:
Dataset MNIST(
(data): Tensor(shape=(60000, 1, 28, 28), dtype=float64)
(labels): Tensor(shape=(60000,), dtype=uint8)
)
You can visualize it with the following code:
# Configure the mosaic to display images
fig = plt.figure(figsize = (20, 10))
columns = 8
rows = 4
# Create the mosaic
for i in range(1, columns * rows + 1):
# Choose randomly an image
image_index = rd.randint(0, len(train_data))
image, label = train_data[image_index]
# Plot it
fig.add_subplot(rows, columns, i)
plt.imshow(image.numpy().reshape(28, 28))
# Remove axis and display image's label
# plt.title(classes[label.data])
plt.axis('off')
# Render
plt.show()
Data Lodaer¶
Once the data is downloaded locally, you will need to create an iterator
, which will be used
to sample in batches the data.
from nets.data import Iterator
BATCH_SIZE = 64
iterator = Iterator(train_data,
batch_size = BATCH_SIZE,
shuffle = True)
Model¶
Then, you can create a CNN
base model:
import nets.nn as nn
class Classifier(nn.Module):
def __init__(self, input_dim, hidden_dim, output_dim):
super().__init__()
# Input batch shape: [batch_size, num_channel, height, width]
# for MNIST: [batch_size, 1 , 28 , 28 ]
self.conv = nn.Conv2d(1, 1, (3, 3), stride=1, pad=0)
# Output shape: [batch_size, num_channel, height - 2, width - 2]
# ie: [batch_size, 1 , 26 , 26 ]
self.pool = nn.MaxPool2d((2, 2), stride=2, pad=0)
# Output shape: [batch_size, num_channel, height / 2, width / 2]
# ie: [batch_size, 1 , 13 , 13 ]
# Input shape: [batch_size, num_channel * height * width]
# ie: [batch_size, 169 ]
self.layer1 = nn.Linear(input_dim, hidden_dim)
# Output shape: [batch_size, hidden_dim]
self.layer2 = nn.Linear(hidden_dim, hidden_dim)
self.layer3 = nn.Linear(hidden_dim, output_dim)
# Output shape: [batch_size, output_dim]
def forward(self, inputs):
# Convolution layer
out = self.conv(inputs)
# Decrease the dimensions
out = self.pool(out)
# Transition from 4-d tensor to 2-d tensor
out = out.reshape(out.shape[0], -1)
# From: [batch_size, 1, H, W]
# to: [batch_size, input_dim]
# Classification layer(s)
out = nets.relu(self.layer1(out))
out = nets.relu(self.layer2(out))
# Prediction layer
out = self.layer3(out)
return out
model = Classifier(169, 100, 10)
# Let's check the architecture
model
Out:
Classifier(
(conv): Conv2d(in_channels=1, out_channels=1, filter_size=(3, 3), stride=1, pad=0, bias=True)
(pool): MaxPool2d(pool_size=(2, 2), stride=2, pad=0)
(layer1): Linear(input_dim=169, output_dim=100, bias=True)
(layer2): Linear(input_dim=100, output_dim=100, bias=True)
(layer3): Linear(input_dim=100, output_dim=10, bias=True)
)
Optimization¶
Defines a loss a.k.a. a criterion (how far from the truth should the errors be computed) and a weight update rule a.k.a. optimizer.
from nets.optim import SGD
from nets.nn import CrossEntropyLoss, MSE
from nets.nn.utils import one_hot
# How much do we update the parameters
LEARNING_RATE = 0.1
optimizer = SGD(model.parameters(), lr=LEARNING_RATE)
criterion = CrossEntropyLoss()
Training¶
import time
from nets.utils import progress_bar
# Training iterations
EPOCHS = 50
#Display the time during training
start = time.time()
# Record the loss
history = []
# Run the simulation EPOCHS times
for epoch in range(EPOCHS):
# Keep track of the loss at each epoch
epoch_loss = 0.0
epoch_start = time.time()
# Number of batches
N = len(iterator)
# Predict for all batches
for idx, batch in enumerate(iterator):
# Gradients accumulates, therefore we need to set them to zero at each iteration
model.zero_grad()
# Get the data from the batch
image, label = batch
# Run the forward pass on the model
predictions = model(image)
# Get how far are the predictions from the truth (aka gold labels)
label = one_hot(label, 10).astype(int)
loss = criterion(predictions, label)
# Compute the gradient
loss.backward()
# Update the parameters
optimizer.step()
# Record the loss for plotting
epoch_loss += loss.item() # .item() is really important, it will free the memory from the computational graph
# Let's plot a progress bar in the console
progress_bar(idx, N, prefix="Training:", start_time=epoch_start)
# Update the history of all previous loss
history.append(epoch_loss / N)
# Check the mean loss for this loop
print(f"Epoch: {epoch+1:4d}/{EPOCHS} | loss: {epoch_loss / N:1.3E}")
# Duration of the total training loop
print('\nTotal time:', time.time() - start)
Out:
[...]
epoch: 48/50 | loss: 4.765E-02
Training: 100% | [==================================================] | Time: 0m 27s | Done !
epoch: 49/50 | loss: 4.621E-02
Training: 100% | [==================================================] | Time: 0m 27s | Done !
epoch: 50/50 | loss: 4.475E-02
Total time: 1327.5961854457855
Weights visualization¶
You can also visualize the updated weights:
# Configure the mosaic to display images
fig = plt.figure(figsize = (20, 10))
columns = 4
rows = 1
# Conv2d filter
fig.add_subplot(rows, columns, 1)
conv_filter = model._modules['conv'].weight
plt.imshow(conv_filter.numpy().reshape(3, 3))
plt.title('Conv2d filter')
plt.axis('off')
# Linear1 weight
fig.add_subplot(rows, columns, 2)
layer1_weightr = model._modules['layer1'].weight
plt.imshow(layer1_weightr.numpy())
plt.title('Layer1 weight')
plt.axis('off')
# Linear2 weight
fig.add_subplot(rows, columns, 3)
layer1_weightr = model._modules['layer2'].weight
plt.imshow(layer1_weightr.numpy())
plt.title('Layer2 weight')
plt.axis('off')
# Linear3 weight
fig.add_subplot(rows, columns, 4)
layer1_weightr = model._modules['layer3'].weight
plt.imshow(layer1_weightr.numpy())
plt.title('Layer3 weight')
plt.axis('off')
# Render
plt.show()


An assortment of awesome music with psychedelic music videos.
Videos of intense guided yoga sessions under 30mins.
Awesome selection of electronic influenced jazz music.


Helpr V0.1
New Goals
(current)
Profile
Settings
Help
Justin Hynes-Bruell
Detail
Tagline about yourself?
Relationships
Finance
Physical
Finance begin


My favourite pet is a dog. Dogs are considered a distinct species
in the wolf family.They are also considered to be Man's best friend.
They are passived to be one of the most intelligent animals.
Dogs have different roles in our society. These roles can be as follows:
Dogs also have favourite activities.These activities may include: