evento
17/03, 21 - 21/03, 10
Junte-se à série meetup para criar soluções de IA escaláveis com base em casos de uso do mundo real com outros desenvolvedores e especialistas.
Registe-se agoraEste browser já não é suportado.
Atualize para o Microsoft Edge para tirar partido das mais recentes funcionalidades, atualizações de segurança e de suporte técnico.
Importante
A partir de 20 de setembro de 2023, você não poderá criar novos recursos do Detetor de Anomalias. O serviço de Detetor de Anomalias está a ser desativado no dia 1 de outubro de 2026.
Documentação |de referência da biblioteca Pacote de código-fonte | da biblioteca (NuGet) |Encontre o código de exemplo no GitHub
Introdução à biblioteca de cliente do Detetor de Anomalias para C#. Siga estas etapas para instalar o pacote e começar a usar os algoritmos fornecidos pelo serviço. O serviço Detetor de anomalias permite que você encontre anormalidades em seus dados de séries cronológicas usando automaticamente os modelos mais adequados neles, independentemente do setor, cenário ou volume de dados.
Use a biblioteca de cliente do Detetor de Anomalias para C# para:
F0
) para experimentar o serviço e atualizar posteriormente para um nível pago para produção.Em uma janela de console (como cmd, PowerShell ou Bash), use o dotnet new
comando para criar um novo aplicativo de console com o nome anomaly-detector-quickstart
. Este comando cria um projeto "Hello World" simples com um único arquivo de origem C#: Program.cs.
dotnet new console -n anomaly-detector-quickstart
Altere seu diretório para a pasta do aplicativo recém-criada. Você pode criar o aplicativo com:
dotnet build
A saída da compilação não deve conter avisos ou erros.
...
Build succeeded.
0 Warning(s)
0 Error(s)
...
Dentro do diretório do aplicativo, instale a biblioteca de cliente do Detetor de Anomalias para .NET com o seguinte comando:
dotnet add package Azure.AI.AnomalyDetector --prerelease
Para fazer uma chamada com sucesso no serviço Detetor de Anomalias, você precisará dos seguintes valores:
Nome da variável | Valor |
---|---|
ANOMALY_DETECTOR_ENDPOINT |
Este valor pode ser encontrado na secção Chaves e Ponto Final ao examinar o recurso no portal do Azure. Exemplo de parâmetro de avaliação: https://YOUR_RESOURCE_NAME.cognitiveservices.azure.com/ |
ANOMALY_DETECTOR_API_KEY |
O valor da chave da API pode ser encontrado na seção Chaves & Ponto de Extremidade ao examinar seu recurso no portal do Azure. Pode utilizar KEY1 ou KEY2 . |
DATA_PATH |
Este guia de início rápido usa o request-data.csv arquivo que pode ser baixado de nossos dados de exemplo do GitHub. Exemplo de caminho: c:\\test\\request-data.csv |
Vá para o seu recurso no portal do Azure. O Ponto de Extremidade e as Chaves podem ser encontrados na seção Gerenciamento de Recursos. Copie seu endpoint e sua chave de acesso, pois você precisará de ambos para autenticar suas chamadas de API. Pode utilizar KEY1
ou KEY2
. Ter sempre duas chaves permite-lhe rodar e regenerar chaves de forma segura sem causar uma interrupção do serviço.
Crie e atribua variáveis de ambiente persistentes para sua chave e endpoint.
Importante
Recomendamos a autenticação do Microsoft Entra ID com identidades gerenciadas para recursos do Azure para evitar o armazenamento de credenciais com seus aplicativos executados na nuvem.
Use chaves de API com cuidado. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente. Se estiver usando chaves de API, armazene-as com segurança no Cofre de Chaves do Azure, gire as chaves regularmente e restrinja o acesso ao Cofre de Chaves do Azure usando controle de acesso baseado em função e restrições de acesso à rede. Para obter mais informações sobre como usar chaves de API com segurança em seus aplicativos, consulte Chaves de API com o Cofre de Chaves do Azure.
Para obter mais informações sobre segurança de serviços de IA, consulte Autenticar solicitações para serviços de IA do Azure.
setx ANOMALY_DETECTOR_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx ANOMALY_DETECTOR_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Este guia de início rápido usa o request-data.csv
arquivo que pode ser baixado de nossos dados de exemplo do GitHub
Você também pode baixar os dados de exemplo executando:
curl "https://raw.githubusercontent.com/Azure/azure-sdk-for-python/main/sdk/anomalydetector/azure-ai-anomalydetector/samples/sample_data/request-data.csv" --output request-data.csv
No diretório do projeto, abra o arquivo program.cs e substitua pelo seguinte código:
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using Azure;
using Azure.AI.AnomalyDetector;
using static System.Environment;
namespace anomaly_detector_quickstart
{
internal class Program
{
static void Main(string[] args)
{
string endpoint = GetEnvironmentVariable("ANOMALY_DETECTOR_ENDPOINT");
string apiKey = GetEnvironmentVariable("ANOMALY_DETECTOR_API_KEY");
var endpointUri = new Uri(endpoint);
var credential = new AzureKeyCredential(apiKey);
//create client
AnomalyDetectorClient client = new AnomalyDetectorClient(endpointUri, credential);
//read data
//example: string datapath = @"c:\test\request-data.csv";
string datapath = @"REPLACE_WITH_YOUR_LOCAL_SAMPLE_REQUEST_DATA_PATH";
List<TimeSeriesPoint> list = File.ReadAllLines(datapath, Encoding.UTF8)
.Where(e => e.Trim().Length != 0)
.Select(e => e.Split(','))
.Where(e => e.Length == 2)
.Select(e => new TimeSeriesPoint(float.Parse(e[1])) { Timestamp = DateTime.Parse(e[0]) }).ToList();
//create request
UnivariateDetectionOptions request = new UnivariateDetectionOptions(list)
{
Granularity = TimeGranularity.Daily
};
UnivariateEntireDetectionResult result = client.DetectUnivariateEntireSeries(request);
bool hasAnomaly = false;
for (int i = 0; i < request.Series.Count; ++i)
{
if (result.IsAnomaly[i])
{
Console.WriteLine("Anomaly detected at index: {0}.", i);
hasAnomaly = true;
}
}
if (!hasAnomaly)
{
Console.WriteLine("No anomalies detected in the series.");
}
}
}
}
Execute o aplicativo com o seguinte comando:
dotnet run program.cs
Anomaly detected at index: 3
Anomaly detected at index: 18
Anomaly detected at index: 21
Anomaly detected at index: 22
Anomaly detected at index: 23
Anomaly detected at index: 24
Anomaly detected at index: 25
Anomaly detected at index: 28
Anomaly detected at index: 29
Anomaly detected at index: 30
Anomaly detected at index: 31
Anomaly detected at index: 32
Anomaly detected at index: 35
Anomaly detected at index: 44
No código acima, os dados de exemplo são lidos e convertidos em um DetectRequest
objeto. Chamamos File.ReadAllLines
com o caminho do arquivo e criamos uma lista de objetos e removemos quaisquer novos caracteres de TimeSeriesPoint
linha. Extraia os valores e separe o carimbo de data/hora de seu valor numérico e adicione-os a um novo TimeSeriesPoint
objeto. O DetectRequest
objeto consiste em uma série de pontos de dados, com TimeGranularity.Daily
para a granularidade (ou periodicidade) dos pontos de dados.
Em seguida, chamamos o método do DetectEntireSeriesAsync
cliente com o DetectRequest
objeto e aguardamos a resposta como um EntireDetectResponse
objeto. Em seguida, iteramos os valores da IsAnomaly
resposta e imprimimos qualquer um que seja verdadeiro. Estes valores correspondem ao índice de pontos de dados anómalos, caso tenham sido encontrados.
Se quiser limpar e remover um recurso do Detetor de Anomalias, você pode excluir o recurso ou grupo de recursos. A exclusão do grupo de recursos também exclui quaisquer outros recursos associados a ele. Você também pode considerar a exclusão das variáveis de ambiente criadas se não pretende mais usá-las.
Documentação |de referência da biblioteca Pacote de código-fonte | da biblioteca (npm) |Encontre o código de exemplo no GitHub
Introdução à biblioteca de cliente do Detetor de Anomalias para JavaScript. Siga estas etapas para instalar o pacote e começar a usar os algoritmos fornecidos pelo serviço. O serviço Detetor de anomalias permite que você encontre anormalidades em seus dados de séries cronológicas usando automaticamente o modelo mais adequado nele, independentemente do setor, cenário ou volume de dados.
Use a biblioteca de cliente do Detetor de Anomalias para JavaScript para:
F0
) para experimentar o serviço e atualizar posteriormente para um nível pago para produção.Numa janela de consola (como cmd, PowerShell ou Bash), crie um novo diretório para a sua aplicação e navegue para a mesma.
mkdir myapp && cd myapp
Crie um package.json
arquivo com o seguinte conteúdo:
{
"dependencies": {
"@azure/ai-anomaly-detector": "next",
"@azure-rest/ai-anomaly-detector": "next",
"@azure/core-auth": "^1.3.0",
"csv-parse": "^5.3.0"
}
}
Instale os pacotes npm necessários executando o seguinte a partir do mesmo diretório que o arquivo package.json:
npm install
Para fazer uma chamada com sucesso no serviço Detetor de Anomalias, você precisará dos seguintes valores:
Nome da variável | Valor |
---|---|
ANOMALY_DETECTOR_ENDPOINT |
Este valor pode ser encontrado na secção Chaves e Ponto Final ao examinar o recurso no portal do Azure. Exemplo de parâmetro de avaliação: https://YOUR_RESOURCE_NAME.cognitiveservices.azure.com/ |
ANOMALY_DETECTOR_API_KEY |
O valor da chave da API pode ser encontrado na seção Chaves & Ponto de Extremidade ao examinar seu recurso no portal do Azure. Pode utilizar KEY1 ou KEY2 . |
datapath |
Este guia de início rápido usa o request-data.csv arquivo que pode ser baixado de nossos dados de exemplo do GitHub. |
Vá para o seu recurso no portal do Azure. O Ponto de Extremidade e as Chaves podem ser encontrados na seção Gerenciamento de Recursos. Copie seu endpoint e sua chave de acesso, pois você precisará de ambos para autenticar suas chamadas de API. Pode utilizar KEY1
ou KEY2
. Ter sempre duas chaves permite-lhe rodar e regenerar chaves de forma segura sem causar uma interrupção do serviço.
Crie e atribua variáveis de ambiente persistentes para sua chave e endpoint.
Importante
Recomendamos a autenticação do Microsoft Entra ID com identidades gerenciadas para recursos do Azure para evitar o armazenamento de credenciais com seus aplicativos executados na nuvem.
Use chaves de API com cuidado. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente. Se estiver usando chaves de API, armazene-as com segurança no Cofre de Chaves do Azure, gire as chaves regularmente e restrinja o acesso ao Cofre de Chaves do Azure usando controle de acesso baseado em função e restrições de acesso à rede. Para obter mais informações sobre como usar chaves de API com segurança em seus aplicativos, consulte Chaves de API com o Cofre de Chaves do Azure.
Para obter mais informações sobre segurança de serviços de IA, consulte Autenticar solicitações para serviços de IA do Azure.
setx ANOMALY_DETECTOR_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx ANOMALY_DETECTOR_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Este guia de início rápido usa o request-data.csv
arquivo que pode ser baixado de nossos dados de exemplo do GitHub
Você também pode baixar os dados de exemplo executando:
curl "https://raw.githubusercontent.com/Azure/azure-sdk-for-python/main/sdk/anomalydetector/azure-ai-anomalydetector/samples/sample_data/request-data.csv" --output request-data.csv
Crie um arquivo chamado index.js
e substitua pelo seguinte código:
const AnomalyDetector = require("@azure-rest/ai-anomaly-detector").default,
{ isUnexpected } = require("@azure-rest/ai-anomaly-detector");
const { AzureKeyCredential } = require("@azure/core-auth");
const { parse } = require("csv-parse/sync");
const fs = require("fs");
// Retrieve the endpoint and key from the environment variables.
const apiKey = process.env["ANOMALY_DETECTOR_API_KEY"] || "";
const endpoint = process.env["ANOMALY_DETECTOR_ENDPOINT"] || "";
const timeSeriesDataPath = "./request-data.csv";
function read_series_from_file(path) {
let result = Array();
let input = fs.readFileSync(path).toString();
let parsed = parse(input, { skip_empty_lines: true });
parsed.forEach(function (e) {
result.push({ timestamp: new Date(e[0]), value: Number(e[1]) });
});
return result;
}
async function main() {
// create client
const credential = new AzureKeyCredential(apiKey);
const client = AnomalyDetector(endpoint, credential);
// construct request
const options = {
body: {
granularity: "daily",
imputeMode: "auto",
maxAnomalyRatio: 0.25,
sensitivity: 95,
series: read_series_from_file(timeSeriesDataPath),
},
headers: { "Content-Type": "application/json" },
};
// get last detect result
const result = await client.path("/timeseries/entire/detect").post(options);
if (isUnexpected(result)) {
throw result;
}
if (result.body.isAnomaly) {
result.body.isAnomaly.forEach(function (anomaly, index) {
if (anomaly === true) {
console.log(index);
}
});
} else {
console.log("There is no anomaly detected from the series.");
}
}
main().catch((err) => {
console.error("The sample encountered an error:", err);
});
module.exports = { main };
Execute a aplicação com o comando node
no seu ficheiro de início rápido.
node index.js
Anomalies were detected from the series at index:
3
18
21
22
23
24
25
28
29
30
31
32
35
44
No código acima, chamamos a API do Detetor de Anomalias para detetar anomalias através de toda a série temporal como um lote com o método detectEntireSeries() do cliente. Armazenamos o objeto AnomalyDetectorDetectEntireSeriesResponse retornado. Em seguida, repetimos a lista de isAnomaly
respostas e imprimimos o índice de quaisquer true
valores. Estes valores correspondem ao índice de pontos de dados anómalos, caso tenham sido encontrados.
Se quiser limpar e remover um recurso do Detetor de Anomalias, você pode excluir o recurso ou grupo de recursos. A exclusão do grupo de recursos também exclui quaisquer outros recursos associados a ele. Você também pode considerar a exclusão das variáveis de ambiente criadas se não pretende mais usá-las.
Documentação |de referência da biblioteca Pacote de código-fonte | da biblioteca (PyPi) |Encontre o código de exemplo no GitHub
Comece a usar a biblioteca de cliente do Detetor de Anomalias para Python. Siga estas etapas para instalar o pacote e começar a usar os algoritmos fornecidos pelo serviço. O serviço Detetor de anomalias permite que você encontre anormalidades em seus dados de séries cronológicas usando automaticamente os modelos mais adequados neles, independentemente do setor, cenário ou volume de dados.
Use a biblioteca de cliente do Detetor de Anomalias para Python para:
F0
) para experimentar o serviço e atualizar posteriormente para um nível pago para produção.Instale a biblioteca do cliente. Você pode instalar a biblioteca de cliente com:
pip install --upgrade azure.ai.anomalydetector
Para fazer uma chamada com sucesso no serviço Detetor de Anomalias, você precisará dos seguintes valores:
Nome da variável | Valor |
---|---|
ANOMALY_DETECTOR_ENDPOINT |
Este valor pode ser encontrado na secção Chaves e Ponto Final ao examinar o recurso no portal do Azure. Exemplo de parâmetro de avaliação: https://YOUR_RESOURCE_NAME.cognitiveservices.azure.com/ |
ANOMALY_DETECTOR_API_KEY |
O valor da chave da API pode ser encontrado na seção Chaves & Ponto de Extremidade ao examinar seu recurso no portal do Azure. Pode utilizar KEY1 ou KEY2 . |
DATA_PATH |
Este guia de início rápido usa o request-data.csv arquivo que pode ser baixado de nossos dados de exemplo do GitHub. Exemplo de caminho: c:\\test\\request-data.csv |
Vá para o seu recurso no portal do Azure. O Ponto de Extremidade e as Chaves podem ser encontrados na seção Gerenciamento de Recursos. Copie seu endpoint e sua chave de acesso, pois você precisará de ambos para autenticar suas chamadas de API. Pode utilizar KEY1
ou KEY2
. Ter sempre duas chaves permite-lhe rodar e regenerar chaves de forma segura sem causar uma interrupção do serviço.
Crie e atribua variáveis de ambiente persistentes para sua chave e endpoint.
Importante
Recomendamos a autenticação do Microsoft Entra ID com identidades gerenciadas para recursos do Azure para evitar o armazenamento de credenciais com seus aplicativos executados na nuvem.
Use chaves de API com cuidado. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente. Se estiver usando chaves de API, armazene-as com segurança no Cofre de Chaves do Azure, gire as chaves regularmente e restrinja o acesso ao Cofre de Chaves do Azure usando controle de acesso baseado em função e restrições de acesso à rede. Para obter mais informações sobre como usar chaves de API com segurança em seus aplicativos, consulte Chaves de API com o Cofre de Chaves do Azure.
Para obter mais informações sobre segurança de serviços de IA, consulte Autenticar solicitações para serviços de IA do Azure.
setx ANOMALY_DETECTOR_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx ANOMALY_DETECTOR_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Este guia de início rápido usa o request-data.csv
arquivo que pode ser baixado de nossos dados de exemplo do GitHub
Você também pode baixar os dados de exemplo executando:
curl "https://raw.githubusercontent.com/Azure/azure-sdk-for-python/main/sdk/anomalydetector/azure-ai-anomalydetector/samples/sample_data/request-data.csv" --output request-data.csv
Crie um novo arquivo Python chamado quickstart.py. Em seguida, abra-o no seu editor ou IDE preferido.
Substitua o conteúdo do quickstart.py pelo código a seguir. Modifique o código para adicionar os nomes das variáveis de ambiente para sua chave, ponto de extremidade e caminho de dados de série temporal:
from azure.ai.anomalydetector import AnomalyDetectorClient
from azure.ai.anomalydetector.models import *
from azure.core.credentials import AzureKeyCredential
import pandas as pd
import os
API_KEY = os.environ['ANOMALY_DETECTOR_API_KEY']
ENDPOINT = os.environ['ANOMALY_DETECTOR_ENDPOINT']
DATA_PATH = "REPLACE_WITH_YOUR_LOCAL_SAMPLE_REQUEST_DATA_PATH" #example: c:\\test\\request-data.csv
client = AnomalyDetectorClient(ENDPOINT, AzureKeyCredential(API_KEY))
series = []
data_file = pd.read_csv(DATA_PATH, header=None, encoding='utf-8', date_parser=[0])
for index, row in data_file.iterrows():
series.append(TimeSeriesPoint(timestamp=row[0], value=row[1]))
request = UnivariateDetectionOptions(series=series, granularity=TimeGranularity.DAILY)
change_point_response = client.detect_univariate_change_point(request)
anomaly_response = client.detect_univariate_entire_series(request)
for i in range(len(data_file.values)):
if (change_point_response.is_change_point[i]):
print("Change point detected at index: "+ str(i))
elif (anomaly_response.is_anomaly[i]):
print("Anomaly detected at index: "+ str(i))
Importante
Para produção, use uma maneira segura de armazenar e acessar suas credenciais, como o Azure Key Vault. Para obter mais informações sobre segurança de credenciais, consulte o artigo de segurança dos serviços de IA do Azure.
Execute o aplicativo com o python
comando em seu arquivo de início rápido
python quickstart.py
Anomaly detected at index: 3
Anomaly detected at index: 18
Change point detected at index: 20
Anomaly detected at index: 21
Anomaly detected at index: 22
Anomaly detected at index: 23
Anomaly detected at index: 24
Anomaly detected at index: 25
Change point detected at index: 27
Anomaly detected at index: 28
Anomaly detected at index: 29
Anomaly detected at index: 30
Anomaly detected at index: 31
Anomaly detected at index: 32
Anomaly detected at index: 35
Anomaly detected at index: 44
Em nosso código acima, chamamos a API do Detetor de Anomalias duas vezes. A primeira chamada verifica pontos de mudança de tendência em nossa série de dados de exemplo com o detect_change_point
método. Esta chamada retorna um ChangePointDetectResponse
que armazenamos em uma variável que nomeamos change_point_request
. Em seguida, iteramos através da lista de is_change_point
respostas e imprimimos o índice de quaisquer valores com um booleano de true
.
A segunda chamada verifica toda a série de dados de amostra em busca de anomalias usando o detect_entire_series
método. Esta chamada retorna um EntireDetectResponse
que armazenamos em uma variável que nomeamos anomaly_response
. Repetimos através da lista de is_anomaly
respostas e imprimimos o índice de quaisquer valores com um booleano de true
. Alternativamente, poderíamos ter usado o detect_last_point
método, que é mais apropriado para detetar anomalias em dados em tempo real. Para saber mais, consulte o guia de práticas recomendadas.
Para visualizar as anomalias e os pontos de alteração em relação à série de dados de exemplo, usaremos a popular biblioteca de código aberto matplotlib.
Instale a biblioteca.
pip install matplotlib
Modifique seu arquivo quickstart.py com o seguinte código:
from azure.ai.anomalydetector import AnomalyDetectorClient
from azure.ai.anomalydetector.models import *
from azure.core.credentials import AzureKeyCredential
import pandas as pd
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
import os
API_KEY = os.environ['ANOMALY_DETECTOR_API_KEY']
ENDPOINT = os.environ['ANOMALY_DETECTOR_ENDPOINT']
DATA_PATH = "REPLACE_WITH_YOUR_LOCAL_SAMPLE_REQUEST_DATA_PATH" #example: c:\\test\\request-data.csv
client = AnomalyDetectorClient(ENDPOINT, AzureKeyCredential(API_KEY))
series = []
data_file = pd.read_csv(DATA_PATH, header=None, encoding='utf-8', date_parser=[0])
for index, row in data_file.iterrows():
series.append(TimeSeriesPoint(timestamp=row[0], value=row[1]))
request = UnivariateDetectionOptions(series=series, granularity=TimeGranularity.DAILY)
change_point_response = client.detect_univariate_change_point(request)
anomaly_response = client.detect_univariate_entire_series(request)
for i in range(len(data_file.values)):
temp_date_to_num = mdates.date2num(data_file.values[i])
date= temp_date_to_num[0]
if (change_point_response.is_change_point[i]):
plt.plot(date,data_file.values[i][1], 's', color ='blue')
print("Change point detected at index: "+ str(i))
elif (anomaly_response.is_anomaly[i]):
plt.plot(date,data_file.values[i][1], '^', color="red")
print("Anomaly detected at index: "+ str(i))
else:
plt.plot(date,data_file.values[i][1], 'o', color ='green')
plt.show()
Importante
Para produção, use uma maneira segura de armazenar e acessar suas credenciais, como o Azure Key Vault. para obter mais informações sobre segurança de credenciais, consulte o artigo de segurança dos serviços de IA do Azure.
Execute o aplicativo com o python
comando em seu arquivo de início rápido
python quickstart.py
Neste exemplo de código, adicionamos a matplotlib
biblioteca para nos permitir visualizar e distinguir facilmente pontos de dados normais de pontos de alteração e anomalias. Os pontos de alteração são representados por quadrados azuis, as anomalias são triângulos vermelhos e os pontos de dados normais são círculos verdes. As datas são convertidas em números usando matplotlib
o método de 's date2num
para fornecer valores amigáveis para os gráficos do eixo y.
Se quiser limpar e remover um recurso do Detetor de Anomalias, você pode excluir o recurso ou grupo de recursos. A exclusão do grupo de recursos também exclui quaisquer outros recursos associados a ele. Você também pode considerar a exclusão das variáveis de ambiente criadas se não pretende mais usá-las.
Neste guia de início rápido, você aprenderá a detetar anomalias em um lote de dados de séries cronológicas usando o serviço Detetor de Anomalias e o cURL.
Para uma visão de alto nível dos conceitos do Detetor de Anomalias, consulte o artigo de visão geral .
F0
) para experimentar o serviço e atualizar posteriormente para um nível pago para produção.Para fazer uma chamada com sucesso no serviço Detetor de Anomalias, você precisará dos seguintes valores:
Nome da variável | Valor |
---|---|
ANOMALY_DETECTOR_ENDPOINT |
Este valor pode ser encontrado na secção Chaves e Ponto Final ao examinar o recurso no portal do Azure. Exemplo de parâmetro de avaliação: https://YOUR_RESOURCE_NAME.cognitiveservices.azure.com/ |
ANOMALY_DETECTOR_API_KEY |
O valor da chave da API pode ser encontrado na seção Chaves & Ponto de Extremidade ao examinar seu recurso no portal do Azure. Pode utilizar KEY1 ou KEY2 . |
Vá para o seu recurso no portal do Azure. O Ponto de Extremidade e as Chaves podem ser encontrados na seção Gerenciamento de Recursos. Copie seu endpoint e sua chave de acesso, pois você precisará de ambos para autenticar suas chamadas de API. Pode utilizar KEY1
ou KEY2
. Ter sempre duas chaves permite-lhe rodar e regenerar chaves de forma segura sem causar uma interrupção do serviço.
Crie e atribua variáveis de ambiente persistentes para sua chave e endpoint.
Importante
Recomendamos a autenticação do Microsoft Entra ID com identidades gerenciadas para recursos do Azure para evitar o armazenamento de credenciais com seus aplicativos executados na nuvem.
Use chaves de API com cuidado. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente. Se estiver usando chaves de API, armazene-as com segurança no Cofre de Chaves do Azure, gire as chaves regularmente e restrinja o acesso ao Cofre de Chaves do Azure usando controle de acesso baseado em função e restrições de acesso à rede. Para obter mais informações sobre como usar chaves de API com segurança em seus aplicativos, consulte Chaves de API com o Cofre de Chaves do Azure.
Para obter mais informações sobre segurança de serviços de IA, consulte Autenticar solicitações para serviços de IA do Azure.
setx ANOMALY_DETECTOR_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx ANOMALY_DETECTOR_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Em um prompt de comando, execute o seguinte comando. Você precisará inserir os seguintes valores no comando.
curl -v POST "%ANOMALY_DETECTOR_ENDPOINT%/anomalydetector/v1.0/timeseries/entire/detect"
-H "Content-Type: application/json"
-H "Ocp-Apim-Subscription-Key: %ANOMALY_DETECTOR_API_KEY%"
-d "@path_to_sample_file.json"
Um exemplo do comando completo como uma única linha:
curl -v POST "%ANOMALY_DETECTOR_ENDPOINT%/anomalydetector/v1.0/timeseries/entire/detect" -H "Content-Type: application/json" -H "Ocp-Apim-Subscription-Key: %ANOMALY_DETECTOR_API_KEY%" -d "@c:\test\rest.json"
Como alternativa, se você estiver executando o comando cURL a partir de um shell Bash, seu comando será ligeiramente diferente:
curl -v POST "$ANOMALY_DETECTOR_ENDPOINT/anomalydetector/v1.0/timeseries/entire/detect" -H "Content-Type: application/json" -H "Ocp-Apim-Subscription-Key: $ANOMALY_DETECTOR_API_KEY" -d "@c:\test\rest.json"
Se você usou os dados de exemplo dos pré-requisitos, você deve receber uma resposta 200 com os seguintes resultados:
{
"expectedValues": [
827.7940908243968,
798.9133774671927,
888.6058431807189,
900.5606407986661,
962.8389426378304,
933.2591606306954,
891.0784104799666,
856.1781601363697,
809.8987227908941,
807.375129007505,
764.3196682448518,
803.933498594564,
823.5900620883058,
794.0905641334288,
883.164245249282,
894.8419000690953,
956.8430591101258,
927.6285055190114,
885.812983784303,
851.6424797402517,
806.0927886943216,
804.6826815312029,
762.74070738882,
804.0251702513732,
825.3523662579559,
798.0404188724976,
889.3016505577698,
902.4226124345937,
965.867078532635,
937.3200495736695,
896.1720524711102,
862.0087368413656,
816.4662342097423,
814.4297745524709,
771.8614479159354,
811.859271346729,
831.8998279215521,
802.947544797165,
892.5684407435083,
904.5488214533809,
966.8527063844707,
937.3168391003043,
895.180003672544,
860.3649596356635,
814.1707285969043,
811.9054862686213,
769.1083769610742,
809.2328084659704
],
"upperMargins": [
41.389704541219835,
39.94566887335964,
44.43029215903594,
45.02803203993331,
48.14194713189152,
46.66295803153477,
44.55392052399833,
42.808908006818484,
40.494936139544706,
40.36875645037525,
38.215983412242586,
40.196674929728196,
41.17950310441529,
39.70452820667144,
44.1582122624641,
44.74209500345477,
47.84215295550629,
46.38142527595057,
44.290649189215145,
42.58212398701258,
40.30463943471608,
40.234134076560146,
38.137035369441,
40.201258512568664,
41.267618312897795,
39.90202094362488,
44.46508252788849,
45.121130621729684,
48.29335392663175,
46.86600247868348,
44.80860262355551,
43.100436842068284,
40.82331171048711,
40.721488727623544,
38.593072395796774,
40.59296356733645,
41.5949913960776,
40.14737723985825,
44.62842203717541,
45.227441072669045,
48.34263531922354,
46.86584195501521,
44.759000183627194,
43.01824798178317,
40.70853642984521,
40.59527431343106,
38.45541884805371,
40.46164042329852
],
"lowerMargins": [
41.389704541219835,
39.94566887335964,
44.43029215903594,
45.02803203993331,
48.14194713189152,
46.66295803153477,
44.55392052399833,
42.808908006818484,
40.494936139544706,
40.36875645037525,
38.215983412242586,
40.196674929728196,
41.17950310441529,
39.70452820667144,
44.1582122624641,
44.74209500345477,
47.84215295550629,
46.38142527595057,
44.290649189215145,
42.58212398701258,
40.30463943471608,
40.234134076560146,
38.137035369441,
40.201258512568664,
41.267618312897795,
39.90202094362488,
44.46508252788849,
45.121130621729684,
48.29335392663175,
46.86600247868348,
44.80860262355551,
43.100436842068284,
40.82331171048711,
40.721488727623544,
38.593072395796774,
40.59296356733645,
41.5949913960776,
40.14737723985825,
44.62842203717541,
45.227441072669045,
48.34263531922354,
46.86584195501521,
44.759000183627194,
43.01824798178317,
40.70853642984521,
40.59527431343106,
38.45541884805371,
40.46164042329852
],
"isAnomaly": [
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
true,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false
],
"isPositiveAnomaly": [
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
true,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false
],
"isNegativeAnomaly": [
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false
],
"period": 12
}
Para obter mais informações, consulte a referência REST de deteção de anomalias.
Se quiser limpar e remover uma assinatura de serviços do Azure AI, você pode excluir o recurso ou grupo de recursos. A exclusão do grupo de recursos também exclui quaisquer outros recursos associados ao grupo de recursos.
Conceitos:
Tutoriais:
evento
17/03, 21 - 21/03, 10
Junte-se à série meetup para criar soluções de IA escaláveis com base em casos de uso do mundo real com outros desenvolvedores e especialistas.
Registe-se agoraFormação
Certificação
Certificado pela Microsoft: Azure Data Scientist Associate - Certifications
Gerencie a ingestão e a preparação de dados, o treinamento e a implantação de modelos e o monitoramento de soluções de aprendizado de máquina com Python, Azure Machine Learning e MLflow.