Azure AI Anomaly Detector for Java
A practical Java skill for building univariate and multivariate time-series anomaly detection with Azure AI Anomaly Detector.
The examples use environment variables for endpoints and keys and expose the Blob/SAS data flow, showing basic credential and data-flow awareness. However, least privilege, user confirmation, sensitive-data handling, external-service risk, and confirmation or rollback for model deletion are not specified, so points are deducted.
The skill covers client creation, detection, training, polling, and exception handling across plausible happy paths. It provides no skill-specific tests, compilation evidence, input-boundary coverage, polling limits, or diagnostic recovery guidance, and some examples may depend on beta SDK API details; the static score is therefore conservative.
The audience, Java SDK scenarios, univariate/multivariate use cases, and trigger phrases are reasonably clear. Non-fit scenarios, service limits, cost, regional availability, and Chinese-language guidance are absent; the core function depends on external Azure services whose reachability may vary in mainland-China environments, so points are deducted.
The skill has a name, description, MIT license, author, version, Maven dependency, layered sections, and substantial examples in a reference file. It lacks a changelog, explicit maintenance owner and update path, compatibility matrix, FAQ, complete prerequisites, and sufficiently explicit limitations, so points are deducted.
It supplies directly reusable patterns for authentication, univariate detection, multivariate training and inference, and model management, covering the core task. However, there is no complete runnable project or static API compatibility evidence, while polling, recovery, and production security require additional work; static calibration caps this at 7 or below.
The files contain concrete API calls, environment variables, and code examples, while the repository context shows general CI and test infrastructure. There is no skill-specific test suite, compile result, third-party execution evidence, or independent corroboration, so only limited static verifiability is justified.
- Examples use API keys, client credentials, and SAS URLs but do not document rotation, leakage prevention, log redaction, or least-privilege configuration.
- Multivariate training and batch inference depend on Azure Blob Storage and long polling, with no defined timeout, retry ceiling, cancellation, or post-failure cleanup strategy.
- The dependency is versioned as 3.0.0-beta.6, but no compatibility matrix or changelog is provided; the SDK API should be checked independently before use.
- The model deletion example lacks confirmation, authorization checks, and recovery guidance.
- No Chinese-language documentation or mainland-China network reachability guidance is provided.
What it does & when to use it
This skill helps Java developers use the Azure AI Anomaly Detector SDK for Java. It covers dependency setup, synchronous and asynchronous client construction, API-key authentication, and DefaultAzureCredential. The examples span univariate batch, streaming, and change-point detection, plus multivariate model training, inference, result retrieval, and model management. It is a good fit for teams integrating time-series monitoring or anomaly analysis into Java services.
It shows developers how to add the Maven dependency, read the Azure endpoint and credentials from environment variables, create univariate or multivariate clients, and call the Azure service. The examples analyze complete time series, inspect the latest point, identify change points, train multivariate models, run batch or latest-point inference, list and delete models, and catch HttpResponseException. Returned data includes anomaly flags, expected values, margins, severity, confidence scores, and contributing variables.
- A Java developer needs batch anomaly detection across a single business time series.
- A monitoring service must classify the newest time-series point in near-real-time processing.
- An analytics team needs to identify trend changes and change points.
- An engineering team needs multivariate analysis across more than 300 correlated signals.
- A backend team needs examples for training, inspecting, listing, and deleting multivariate models.
Pros & cons
- Covers both univariate and multivariate time-series detection.
- Provides concrete Java examples for clients, authentication, and core operations.
- Includes model training, batch inference, latest-point inference, and model lifecycle patterns.
- Documents practical guidance for minimum data, granularity, sensitivity, and sliding-window settings.
- Requires an Azure Anomaly Detector resource, endpoint, credentials, and network access.
- Univariate detection requires at least 12 data points.
- The examples use dependency version `3.0.0-beta.6` without documenting a supported version range.
- The supplied material does not demonstrate independent test coverage for this specific skill or provide complete asynchronous API examples.
How to install
Install the repository's skill collection in an Agent Skills-compatible client with npx skills add microsoft/skills, then select the required skill in the wizard. The repository says skills are installed in the chosen agent directory, such as .github/skills/ for GitHub Copilot. The source file for this profile is .github/plugins/azure-sdk-java/skills/azure-ai-anomalydetector-java/SKILL.md. Add the Java dependency com.azure:azure-ai-anomalydetector:3.0.0-beta.6 to the project.
How to use
Use an explicit coding request such as Use the Azure AI Anomaly Detector Java SDK for univariate streaming anomaly detection. Other documented trigger phrases include “anomaly detection Java,” “multivariate anomaly Java,” and “change point detection.” Set AZURE_ANOMALY_DETECTOR_ENDPOINT; set AZURE_ANOMALY_DETECTOR_API_KEY for AzureKeyCredential authentication, or AZURE_TOKEN_CREDENTIALS=prod when using DefaultAzureCredential in production.