Skip to content

ThomasLoridan/infra-optimizer

Repository files navigation

Infra Optimizer

J'ai développé ce projet pour automatiser l'analyse de métriques d'infrastructure système. Le pipeline ingère un fichier JSON de métriques, détecte les anomalies selon des seuils calibrés sur les standards de l'industrie, et génère des recommandations actionnables via Claude (Anthropic).

Stack technique

Python 3.10, LangGraph pour l'orchestration du pipeline, Claude via l'API Anthropic pour la génération des recommandations, Pydantic v2 pour la validation stricte des données en entrée et en sortie, pytest pour les tests unitaires.

Installation

git clone https://github.com/ThomasLoridan/infra-optimizer
cd infra-optimizer
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt

Créer un fichier .env à la racine à partir du template :

cp .env.example .env

Puis renseigner ta clé API Anthropic dans .env :

ANTHROPIC_API_KEY=sk-ant-...

Utilisation

# Avec le fichier par défaut
python main.py

# Avec un fichier personnalisé
python main.py --input mon_fichier.json

Le pipeline traite l'ensemble des enregistrements du fichier JSON (liste ou objet unique), agrège les métriques, détecte les anomalies et écrit le rapport dans output.json.

Tests

pytest tests/test_nodes.py -v

La suite couvre 5 cas :

  1. ingestion nominale et données invalides,
  2. agrégation multi-enregistrements,
  3. détection d'anomalies en situation nominale et critique,
  4. services hors ligne,
  5. et conformité du rapport de sortie.

Outputù

Le fichier output.json généré contient les insights agrégés sur l'ensemble de la période, la liste des anomalies détectées avec leur sévérité, les recommandations produites par Ai (Claude choisit ici mais il est possible de connecter d'autres IA disponible sur le marché comme Mistral), et le résumé de l'état des services.

Architecture

Les choix techniques et la description détaillée du pipeline sont documentés dans ARCHITECTURE.md.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages