As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Habilite a detecção de anomalias nos sensores de um ativo
Crie um modelo de computação ()AWS CLI
Para criar um modelo computacional, use a interface de linha de AWS comando (AWS CLI). Depois de definir o modelo de computação, treine o modelo e programe a inferência para fazer a detecção de anomalias em um ativo em. AWS IoT SiteWise
-
Crie um arquivo
anomaly-detection-computation-model-payload.json
com o seguinte conteúdo:{ "computationModelName": "anomaly-detection-computation-model-name", "computationModelConfiguration": { "anomalyDetection": { "inputProperties": "${input_properties}", "resultProperty": "${result_property}" } }, "computationModelDataBinding": { "input_properties": { "list": [{ "assetModelProperty": { "assetModelId": "
asset-model-id
", "propertyId": "input-property-id-1
" } }, { "assetModelProperty": { "assetModelId": "asset-model-id
", "propertyId": "input-property-id-2
" } } ] }, "result_property": { "assetModelProperty": { "assetModelId": "asset-model-id
", "propertyId": "results-property-id
" } } } } -
Execute o comando a seguir para criar um modelo de computação:
aws iotsitewise create-computation-model \ --cli-input-json
file://anomaly-detection-computation-model-payload.json
ExecuteAction Preparação da carga útil da API
As próximas etapas para executar o treinamento e a inferência são realizadas com a ExecuteActionAPI. Tanto o treinamento quanto a inferência são configurados com uma configuração de carga de ação JSON. Ao invocar a ExecuteActionAPI, a carga útil da ação deve ser fornecida como um valor com uma stringValue
carga útil.
A carga útil deve seguir rigorosamente os requisitos da API. Especificamente, o valor deve ser uma string simples, sem caracteres de controle (por exemplo, novas linhas, guias ou retornos de carro).
As opções a seguir fornecem duas maneiras confiáveis de fornecer uma carga útil de ação válida:
Opção 1: usar um arquivo de carga útil limpo
O procedimento a seguir descreve as etapas para um arquivo de carga útil limpo:
-
Limpe o arquivo para remover os caracteres de controle.
tr -d '\n\r\t' < original-action-payload.json > training-or-inference-action-payload.json
-
Execute a ação com o arquivo
@=file://...
.aws iotsitewise execute-action \ --target-resource computationModelId=<
MODEL_ID
> \ --action-definition-id <ACTION_DEFINITION_ID
> \ --resolve-to assetId=<ASSET_ID
> \ --action-payload stringValue@=file://training-or-inference-action-payload.json
Opção 2: string embutida com aspas escapadas
As etapas a seguir descrevem as etapas para fornecer a carga em linha e evitar arquivos intermediários:
-
Use aspas duplas de escape (
\"
) dentro da string JSON. -
Coloque a
StringValue=..
expressão inteira entre aspas duplas.
exemplo de uma carga útil de ação que escapou:
aws iotsitewise execute-action \ --target-resource computationModelId=<
MODEL_ID
> \ --action-definition-id <ACTION_DEFINITION_ID
> \ --resolve-to assetId=<ASSET_ID
> \ --action-payload "stringValue={\"exportDataStartTime\":1717225200,\"exportDataEndTime\":1722789360,\"targetSamplingRate\":\"PT1M\"}"
Treine o AWS CLI
Com um modelo de computação criado, você pode treinar um modelo em relação aos ativos. Siga as etapas abaixo para treinar um modelo para um ativo:
-
Execute o seguinte comando para encontrar
actionDefinitionId
da açãoAWS/ANOMALY_DETECTION_TRAINING
.computation-model-id
Substitua pela ID retornada na etapa anterior.aws iotsitewise describe-computation-model \ --computation-model-id
computation-model-id
-
Crie um arquivo chamado
anomaly-detection-training-payload.json
e adicione os seguintes valores:nota
A carga útil deve estar em conformidade com. Opção 1: usar um arquivo de carga útil limpo
-
StartTime
com o início dos dados de treinamento, fornecidos em segundos de época. -
EndTime
com o final dos dados de treinamento, fornecidos em segundos de época. -
OpcionalmenteConfigurações avançadas de treinamento, você pode configurar para melhorar o desempenho do modelo.
-
(Opcional)
TargetSamplingRate
com a taxa de amostragem dos dados. -
(Opcional)
LabelInputConfiguration
para especificar períodos de tempo em que ocorreu um comportamento anômalo para melhorar o treinamento do modelo. -
(Opcional)
ModelEvaluationConfiguration
para avaliar o desempenho do modelo executando inferências em um intervalo de tempo especificado após a conclusão do treinamento.
-
{ "exportDataStartTime": StartTime, "exportDataEndTime": EndTime }
exemplo de um exemplo de carga útil de treinamento:
{ "exportDataStartTime": 1717225200, "exportDataEndTime": 1722789360 }
-
-
Execute o comando a seguir para iniciar o treinamento. Substitua os parâmetros a seguir no comando:
-
computation-model-id
com o ID do modelo de computação de destino. -
asset-id
com o ID do ativo com o qual você treinará o modelo. -
training-action-definition-id
com o ID daAWS/ANOMALY_DETECTION_TRAINING
ação da Etapa 1.
aws iotsitewise execute-action \ --target-resource computationModelId=
computation-model-id
\ --resolve-to assetId=asset-id
\ --action-definition-idtraining-action-definition-id
\ --action-payload stringValue@=file://anomaly-detection-training-payload.json
exemplo de uma ação de execução:
aws iotsitewise execute-action --target-resource computationModelId=27cb824c-fd84-45b0-946b-0a5b0466d890 --resolve-to assetId=cefd4b68-481b-4735-b466-6a4220cd19ee --action-definition-id e54cea94-5d1c-4230-a59e-4f54dcbc972d --action-payload stringValue@=file://anomaly-detection-training-payload.json
-
-
Execute o comando a seguir para verificar o status do processo de treinamento do modelo. O resumo da execução mais recente mostra o status da execução (
RUNNING
/COMPLETED
/FAILED
).aws iotsitewise list-executions \ --target-resource-type COMPUTATION_MODEL \ --target-resource-id
computation-model-id
\ --resolve-to-resource-type ASSET \ --resolve-to-resource-idasset-id
-
Execute o comando a seguir para verificar a configuração do modelo treinado mais recente. Esse comando produz uma saída somente se pelo menos um modelo tiver sido treinado com sucesso.
aws iotsitewise describe-computation-model-execution-summary \ --computation-model-id
computation-model-id
\ --resolve-to-resource-type ASSET \ --resolve-to-resource-idasset-id
-
Quando a
ComputationModel
estiver usando AssetModelProperty, use a ListComputationModelResolveToResourcesAPI para identificar os ativos com ações executadas.aws iotsitewise list-computation-model-resolve-to-resources \ --computation-model-id
computation-model-id
Iniciar e interromper a inferência ()AWS CLI
Depois de treinar o modelo, inicie a inferência. Isso instrui AWS IoT SiteWise a monitorar ativamente seus ativos industriais em busca de anomalias.
Inicie a inferência
-
Execute o seguinte comando para encontrar
actionDefinitionId
da açãoAWS/ANOMALY_DETECTION_INFERENCE
.computation-model-id
Substitua pelo ID real do modelo de computação criado anteriormente.aws iotsitewise describe-computation-model \ --computation-model-id
computation-model-id
-
Crie um arquivo
anomaly-detection-start-inference-payload.json
e adicione os seguintes valores:nota
A carga útil deve estar em conformidade com. Opção 1: usar um arquivo de carga útil limpo
"inferenceMode": "START", "dataUploadFrequency": "
DataUploadFrequency
"-
DataUploadFrequency
: configure a frequência com que o cronograma de inferência é executado para realizar a detecção de anomalias. Os valores permitidos são:PT5M, PT10M, PT15M, PT30M, PT1H, PT2H..PT12H, PT1D
. -
(Opcional)
DataDelayOffsetInMinutes
com a compensação de atraso em minutos. Defina esse valor entre 0 e 60 minutos. -
(Opcional)
TargetModelVersion
com a versão do modelo a ser ativada. -
(Opcional) Configure o
weeklyOperatingWindow
com uma configuração de turno. -
Você pode configurar Configurações avançadas de inferência opcionalmente.
-
-
Execute o comando a seguir para iniciar a inferência. Substitua os parâmetros a seguir no arquivo de carga útil.
-
computation-model-id
com o ID do modelo de computação de destino. -
asset-id
com a ID do ativo contra o qual o modelo foi treinado. -
inference-action-definition-id
com o ID daAWS/ANOMALY_DETECTION_INFERENCE
ação da Etapa 1.
aws iotsitewise execute-action \ --target-resource computationModelId=
computation-model-id
\ --resolve-to assetId=asset-id
\ --action-definition-idinference-action-definition-id
\ --action-payload stringValue@=file://anomaly-detection-inference-payload.json
-
-
Execute o comando a seguir para verificar se a inferência ainda está em execução. O
inferenceTimerActive
campo é definido comoTRUE
quando a inferência está ativa.aws iotsitewise describe-computation-model-execution-summary \ --computation-model-id
computation-model-id
\ --resolve-to-resource-type ASSET \ --resolve-to-resource-idasset-id
-
O comando a seguir lista todas as execuções de inferência:
aws iotsitewise list-executions \ --target-resource-type COMPUTATION_MODEL \ --target-resource-id
computation-model-id
\ --resolve-to-resource-type ASSET \ --resolve-to-resource-idasset-id
-
Execute o comando a seguir para descrever uma execução individual.
execution-id
Substitua pelo id da Etapa 5 anterior.aws iotsitewise describe-execution \ --execution-id
execution-id
Pare a inferência
-
Execute o seguinte comando para encontrar
actionDefinitionId
da açãoAWS/ANOMALY_DETECTION_INFERENCE
.computation-model-id
Substitua pelo ID real do modelo de computação criado anteriormente.aws iotsitewise describe-computation-model \ --computation-model-id
computation-model-id
-
Crie um arquivo
anomaly-detection-stop-inference-payload.json
e adicione o código a seguir.{ "inferenceMode": "STOP" }
nota
A carga útil deve estar em conformidade com. Opção 1: usar um arquivo de carga útil limpo
-
Execute o comando a seguir para interromper a inferência. Substitua o seguinte parâmetro no arquivo de carga:
-
computation-model-id
com o ID do modelo de computação de destino. -
asset-id
com a ID do ativo contra o qual o modelo foi treinado. -
inference-action-definition-id
com o ID daAWS/ANOMALY_DETECTION_INFERENCE
ação da Etapa 1.
exemplo do comando stop inference:
aws iotsitewise execute-action \ --target-resource computationModelId=
computation-model-id
\ --resolve-to assetId=asset-id
\ --action-definition-idinference-action-definition-id
\ --action-payload stringValue@=file://anomaly-detection-stop-inference-payload.json
-
Encontre modelos de computação que usam um determinado recurso na vinculação de dados
Para listar modelos de computação vinculados a um determinado recurso:
-
modelo de ativo (busque todos os modelos de computação em que qualquer uma das propriedades desse modelo de ativo esteja vinculada).
-
ativo (obtenha todos os modelos de computação em que qualquer uma das propriedades desse ativo esteja vinculada)
-
propriedade do modelo de ativos (obtenha todos os modelos de computação em que essa propriedade está vinculada)
-
propriedade do ativo (obtenha todos os modelos de computação em que essa propriedade está vinculada). Isso pode ser para fins informativos ou obrigatório quando o usuário tenta vincular essa propriedade a outro modelo de computação (mas ela já está vinculada a outro lugar).
Use a ListComputationModelDataBindingUsagesAPI para buscar uma lista de ComputationModelId
s que usam o ativo (propriedade) ou o modelo de ativo (propriedade) como vinculação de dados.
Prepare um request.json
com as seguintes informações:
{ "dataBindingValueFilter": { "asset": { "assetId": "<string>" } // OR "assetModel": { "assetModelId": "<string>" } // OR "assetProperty": { "assetId": "<string>", "propertyId": "<string>" } // OR "assetModelProperty": { "assetModelId": "<string>", "propertyId": "<string>" } }, "nextToken": "<string>", "maxResults": "<number>" }
Use o list-computation-model-data-binding-usages
comando para recuperar os modelos com ativos ou modelos de ativos como vinculações de dados.
aws iotsitewise list-computation-model-data-binding-usages \ --cli-input-json file:
//request.json