AD-AGENT is a multi-agent anomaly detection platform designed to support the full lifecycle of real-world anomaly detection—from data preprocessing and model selection to detection, explanation, and evaluation. It integrates classical and graph-based AD algorithms with LLM-powered modules for enhanced usability, privacy, and adaptability.
🔍 One platform. Multiple agents. All your anomaly detection workflows—automated, explainable, and secure.
- Modular Pipeline Execution: Supports multivariate, graph, and time-series anomaly detection algorithms for more and more complex data types.
- Multi-Agent Architecture: Detection, explanation, and adaptation are handled by decoupled agents with clear APIs and extendability.
- LLM Integration (in progress): Language models assist in tasks such as explanation, synthetic anomaly generation, and interactive debugging.
- Privacy-Aware Design (in progress): Includes a framework for anonymizing data before AD processing, suitable for regulated domains.
- Human-in-the-loop Support (in progress): Enables analysts to query explanations and iterate on detection results interactively.
git clone [email protected]:USC-FORTIS/AD-AGENT.git
cd AD-AGENTpython -m venv .venv
source .venv/bin/activatepython -m venv .venv
.venv\Scripts\activatepip install pyg_lib torch_scatter torch_sparse torch_cluster torch_spline_conv -f https://data.pyg.org/whl/torch-2.5.0+cpu.html
pip install -r requirements.txtEdit the config file to include your OpenAI API key:
# File: /config/config.py
OPENAI_API_KEY = 'your-api-key-here'python main.pypython main.py -ppython main.py -oYou can also run the system with natural-language-like test commands.
# PyOD
Run IForest on ./data/glass_train.mat and ./data/glass_test.mat
Run all on ./data/glass_train.mat and ./data/glass_test.mat
# PyGOD
Run DOMINANT on ./data/inj_cora_train.pt and ./data/inj_cora_test.pt
# TSLib
Run LightTS on ./data/MSL and ./data/MSL
# Darts (in progress)
Run GlobalNaiveAggregate on ./data/yahoo_train.csv and ./data/yahoo_test.csv
Run all on ./data/glass_train.mat and ./data/glass_test.mat
.
├── config/
│ └── config.py # Configuration file for API keys
.
.
.
├── data/
│ └── glass.mat # Sample dataset
├── main.py # Main execution script
├── requirements.txt # Required Python packages
└── README.md # Project documentation
- Make sure your dataset is placed inside the
./data/directory. - Modify
main.pyto add support for additional algorithms or datasets if needed.
Made with contrib.rocks.