Azure anomáliadetektor JavaScripthez készült ügyfélkódtár – 3.0.0-beta.5-verzió
Azure AnomalyDetector Az API lehetővé teszi, hogy gépi tanulással monitorozza és észlelje az idősoradatok rendellenességeit.
Főbb hivatkozások:
Fő fogalmak
A AnomalyDetectorClient
anomáliadetektálási módszereket biztosít:
-
detectEntireSeries
– Egy teljes adatkészlet rendellenességeit észleli -
detectLastPoint
– A legújabb adatpont rendellenességeit észleli -
detectChangePoint
– Kiértékeli az összes adatsorpont változáspont-pontszámát
Első lépések
Jelenleg támogatott környezetek
- A Node.jsLTS-verziói
- A Safari, a Chrome, az Edge és a Firefox legújabb verziói.
További részletekért tekintse meg támogatási szabályzatunkat .
Előfeltételek
- Egy Azure-előfizetés.
- Egy meglévő anomáliadetektor erőforrás.
Ha az Azure CLI-t használja, cserélje le <your-resource-group-name>
a és <your-resource-name>
nevet a saját egyedi nevére:
az cognitiveservices account create --kind AnomalyDetector --resource-group <your-resource-group-name> --name <your-resource-name>
Telepítse a(z) @azure/ai-anomaly-detector
csomagot
Telepítse a JavaScripthez készült Azure anomáliadetektor ügyfélkódtárat a következővelnpm
:
npm install @azure/ai-anomaly-detector
Hozzon létre és hitelesítsen egy AnomalyDetectorClient
Ahhoz, hogy létrehozhasson egy ügyfélobjektumot a anomáliadetektor API eléréséhez, szüksége lesz a endpoint
anomáliadetektor erőforrásra és egy credential
. Az anomáliadetektor-ügyfél azure Active Directory-hitelesítő adatokat vagy API-kulcs hitelesítő adatait használhatja a hitelesítéshez.
A anomáliadetektor-erőforrás végpontját az Azure PortalonKeys and Endpoint
, a menü Erőforrás-kezelés területén vagy az alábbi Azure CLI-kódrészlet használatával találja meg:
az cognitiveservices account show --name <your-resource-name> --resource-group <your-resource-group-name> --query "endpoint"
API-kulcs használata
Az Azure Portalon keresse meg a anomáliadetektor erőforrást, és kérjen le egy API-kulcsot Keys and Endpoint
az Erőforrás-kezelés területen, vagy használja az alábbi Azure CLI-kódrészletet:
Megjegyzés: Néha az API-kulcsot "előfizetői azonosítónak" vagy "előfizetési API-kulcsnak" is nevezik.
az cognitiveservices account keys list --resource-group <your-resource-group-name> --name <your-resource-name>
Miután rendelkezik API-kulccsal és végpontokkal, a AzureKeyCredential
osztály használatával hitelesítheti az ügyfelet az alábbiak szerint:
const { AnomalyDetectorClient, AzureKeyCredential } = require("@azure/ai-anomaly-detector");
const client = new AnomalyDetectorClient("<endpoint>", new AzureKeyCredential("<API key>"));
Azure Active Directory-hitelesítő adatok használata
A legtöbb példában ügyfél API-kulcsos hitelesítést használunk, de az [Azure Identity Library] használatával az Azure Active Directoryval is végezhet hitelesítést. Az alább látható DefaultAzureCredential szolgáltató vagy az Azure SDK-hoz biztosított egyéb hitelesítőadat-szolgáltatók használatához telepítse a @azure/identity
csomagot:
npm install @azure/identity
Új AAD-alkalmazást is regisztrálnia kell, és hozzáférést kell adnia a anomáliadetektor számára, ha hozzárendeli a "Cognitive Services User"
szerepkört a szolgáltatásnévhez (megjegyzés: más szerepkörök, például "Owner"
nem biztosítják a szükséges engedélyeket, csak "Cognitive Services User"
elegendő a példák és a mintakód futtatásához).
Állítsa be az AAD-alkalmazás ügyfél-azonosítójának, bérlőazonosítójának és titkos ügyfélkulcsának értékeit környezeti változóként: AZURE_CLIENT_ID
, AZURE_TENANT_ID
, AZURE_CLIENT_SECRET
.
const { AnomalyDetectorClient } = require("@azure/ai-anomaly-detector");
const { DefaultAzureCredential } = require("@azure/identity");
const client = new AnomalyDetectorClient("<endpoint>", new DefaultAzureCredential());
Példák
Változáspontok észlelése
Ez a minta bemutatja, hogyan észlelhetők a változáspontok a teljes sorozatban.
const { AnomalyDetectorClient, TimeGranularity } = require("@azure/ai-anomaly-detector");
const { AzureKeyCredential } = require("@azure/core-auth");
// You will need to set this environment variables in .env file or edit the following values
const apiKey = process.env["API_KEY"] || "";
const endpoint = process.env["ENDPOINT"] || "";
async function main() {
// create client
const client = new AnomalyDetectorClient(endpoint, new AzureKeyCredential(apiKey));
// construct request
const request = {
series: [
{ timestamp: new Date("2018-03-01T00:00:00Z"), value: 32858923 },
{ timestamp: new Date("2018-03-02T00:00:00Z"), value: 29615278 },
{ timestamp: new Date("2018-03-03T00:00:00Z"), value: 22839355 },
{ timestamp: new Date("2018-03-04T00:00:00Z"), value: 25948736 },
{ timestamp: new Date("2018-03-05T00:00:00Z"), value: 34139159 },
{ timestamp: new Date("2018-03-06T00:00:00Z"), value: 33843985 },
{ timestamp: new Date("2018-03-07T00:00:00Z"), value: 33637661 },
{ timestamp: new Date("2018-03-08T00:00:00Z"), value: 32627350 },
{ timestamp: new Date("2018-03-09T00:00:00Z"), value: 29881076 },
{ timestamp: new Date("2018-03-10T00:00:00Z"), value: 22681575 },
{ timestamp: new Date("2018-03-11T00:00:00Z"), value: 24629393 },
{ timestamp: new Date("2018-03-12T00:00:00Z"), value: 34010679 },
{ timestamp: new Date("2018-03-13T00:00:00Z"), value: 33893888 },
{ timestamp: new Date("2018-03-14T00:00:00Z"), value: 33760076 },
{ timestamp: new Date("2018-03-15T00:00:00Z"), value: 33093515 }
],
granularity: TimeGranularity.daily
};
// get change point detect results
const result = await client.detectChangePoint(request);
const isChangePointDetected = result.isChangePoint.some((changePoint) => changePoint);
if (isChangePointDetected) {
console.log("Change points were detected from the series at index:");
result.isChangePoint.forEach((changePoint, index) => {
if (changePoint === true) {
console.log(index);
}
});
} else {
console.log("There is no change point detected from the series.");
}
// output:
// Change points were detected from the series at index:
// 9
}
main().catch((err) => {
console.error("The sample encountered an error:", err);
});
További minták itt találhatók
Hibaelhárítás
Naplózás
A naplózás engedélyezése hasznos információkat deríthet fel a hibákról. A HTTP-kérések és -válaszok naplójának megtekintéséhez állítsa a környezeti változót értékre AZURE_LOG_LEVEL
info
. A naplózás futásidőben is engedélyezhető a következő hívásával setLogLevel
@azure/logger
:
import { setLogLevel } from "@azure/logger";
setLogLevel("info");
A naplók engedélyezésére vonatkozó részletesebb utasításokért tekintse meg a @azure/logger csomag dokumentációját.
Következő lépések
A kódtár használatára vonatkozó részletes példákért tekintse meg a mintakönyvtárat.
Közreműködés
A projektben szívesen fogadjuk a hozzájárulásokat és a javaslatokat. A legtöbb hozzájáruláshoz el kell fogadnia egy Közreműködői licencszerződést (CLA-t), amelyben kijelenti, hogy jogosult arra, hogy ránk ruházza hozzájárulása felhasználási jogát, és ezt ténylegesen meg is teszi. További részletekért lásd: https://cla.microsoft.com.
A lekéréses kérelmek elküldésekor egy CLA-robot automatikusan meghatározza, hogy kell-e biztosítania CLA-t, és megfelelően kitölti a lekéréses kérelmet (például címke, megjegyzés). Egyszerűen csak kövesse a robot által megadott utasításokat. Ezt csak egyszer kell elvégeznie az összes olyan tárházban, amely a CLA-t használja.
A projekt a Microsoft nyílt forráskódú projekteket szabályozó etikai kódexe, a Microsoft Open Source Code of Conduct hatálya alá esik. További információkért lásd a viselkedési szabályzattal kapcsolatos gyakori kérdéseket , vagy vegye fel a kapcsolatot opencode@microsoft.com az esetleges további kérdésekkel vagy megjegyzésekkel.
Ha hozzá szeretne járulni ehhez a kódtárhoz, olvassa el a közreműködői útmutatót , amelyből többet is megtudhat a kód buildeléséhez és teszteléséhez.
Azure SDK for JavaScript