Pustaka klien Azure Anomaly Detector untuk JavaScript - versi 3.0.0-beta.5
Azure AnomalyDetector API memungkinkan Anda memantau dan mendeteksi kelainan dalam data rangkaian waktu Anda dengan pembelajaran mesin.
Tautan utama:
Konsep utama
menyediakan AnomalyDetectorClient
metode untuk deteksi anomali:
detectEntireSeries
- Mendeteksi anomali pada seluruh himpunan datadetectLastPoint
- Mendeteksi anomali dalam titik data terbarudetectChangePoint
- Mengevaluasi skor titik perubahan dari setiap titik seri
Memulai
Lingkungan yang didukung saat ini
- Versi LTS dari Node.js
- Safari, Chrome, Edge, dan Firefox versi terbaru.
Lihat kebijakan dukungan kami untuk detail selengkapnya.
Prasyarat
- Langganan Azure.
- Sumber daya Detektor Anomali yang ada.
Jika Anda menggunakan Azure CLI, ganti <your-resource-group-name>
dan <your-resource-name>
dengan nama unik Anda sendiri:
az cognitiveservices account create --kind AnomalyDetector --resource-group <your-resource-group-name> --name <your-resource-name>
Pasang paket @azure/ai-anomaly-detector
Instal pustaka klien Azure Anomaly Detector untuk JavaScript dengan npm
:
npm install @azure/ai-anomaly-detector
Membuat dan mengautentikasi AnomalyDetectorClient
Untuk membuat objek klien untuk mengakses API Detektor Anomali, Anda memerlukan endpoint
sumber daya Detektor Anomali dan credential
. Klien Detektor Anomali dapat menggunakan kredensial Azure Active Directory atau kredensial kunci API untuk mengautentikasi.
Anda dapat menemukan titik akhir untuk sumber daya Detektor Anomali di Portal Microsoft Azure dengan mengklik Keys and Endpoint
di bawah Manajemen Sumber Daya di menu atau dengan menggunakan cuplikan Azure CLI di bawah ini:
az cognitiveservices account show --name <your-resource-name> --resource-group <your-resource-group-name> --query "endpoint"
Menggunakan Kunci API
Gunakan Portal Microsoft Azure untuk menelusuri sumber daya Detektor Anomali Anda dan mengambil kunci API dengan mengklik Keys and Endpoint
di bawah Manajemen Sumber Daya, atau gunakan cuplikan Azure CLI di bawah ini:
Catatan: Terkadang kunci API disebut sebagai "kunci langganan" atau "kunci API langganan."
az cognitiveservices account keys list --resource-group <your-resource-group-name> --name <your-resource-name>
Setelah Anda memiliki kunci API dan titik akhir, Anda dapat menggunakan AzureKeyCredential
kelas untuk mengautentikasi klien sebagai berikut:
const { AnomalyDetectorClient, AzureKeyCredential } = require("@azure/ai-anomaly-detector");
const client = new AnomalyDetectorClient("<endpoint>", new AzureKeyCredential("<API key>"));
Menggunakan Kredensial Azure Active Directory
Autentikasi kunci API klien digunakan di sebagian besar contoh, tetapi Anda juga dapat mengautentikasi dengan Azure Active Directory menggunakan [pustaka Identitas Azure]. Untuk menggunakan penyedia DefaultAzureCredential yang ditunjukkan di bawah ini, atau penyedia kredensial lain yang disediakan dengan Azure SDK, harap instal @azure/identity
paket:
npm install @azure/identity
Anda juga perlu mendaftarkan aplikasi AAD baru dan memberikan akses ke Detektor Anomali dengan menetapkan "Cognitive Services User"
peran ke perwakilan layanan Anda (catatan: peran lain seperti "Owner"
tidak akan memberikan izin yang diperlukan, hanya "Cognitive Services User"
cukup untuk menjalankan contoh dan kode sampel).
Atur nilai ID klien, ID penyewa, dan rahasia klien aplikasi AAD sebagai variabel lingkungan: 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());
Contoh
Mendeteksi Titik Perubahan
Sampel ini menunjukkan cara mendeteksi titik perubahan pada seluruh seri.
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);
});
Sampel lainnya dapat ditemukan di sini
Pemecahan Masalah
Pencatatan
Mengaktifkan pengelogan dapat membantu menemukan informasi yang berguna tentang kegagalan. Untuk melihat log permintaan dan respons HTTP, atur variabel lingkungan AZURE_LOG_LEVEL
ke info
. Atau, pengelogan dapat diaktifkan saat runtime dengan memanggil setLogLevel
di @azure/logger
:
import { setLogLevel } from "@azure/logger";
setLogLevel("info");
Untuk instruksi lebih rinci tentang cara mengaktifkan log, Anda dapat melihat dokumen paket @azure/pencatat.
Langkah berikutnya
Silakan lihat direktori sampel untuk contoh terperinci tentang cara menggunakan pustaka ini.
Berkontribusi
Proyek ini menyambut baik kontribusi dan saran. Sebagian besar kontribusi mengharuskan Anda menyetujui Perjanjian Lisensi Kontributor (CLA) yang menyatakan bahwa Anda memiliki hak untuk, dan benar-benar melakukannya, memberi kami hak untuk menggunakan kontribusi Anda. Untuk detailnya, kunjungi https://cla.microsoft.com.
Ketika Anda mengirimkan permintaan tarik, CLA-bot akan secara otomatis menentukan apakah Anda perlu memberikan CLA dan menghias PR dengan tepat (misalnya, label, komentar). Cukup ikuti instruksi yang diberikan oleh bot. Anda hanya perlu melakukan ini sekali di semua repos menggunakan CLA kami.
Proyek ini telah mengadopsi Kode Etik Sumber Terbuka Microsoft. Untuk informasi selengkapnya, lihat Tanya Jawab Umum Tata Tertib atau hubungi opencode@microsoft.com untuk pertanyaan atau komentar lainnya.
Jika Anda ingin berkontribusi pada pustaka ini, baca panduan berkontribusi untuk mempelajari selengkapnya tentang cara membuat dan menguji kode.
Azure SDK for JavaScript
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk