diff --git a/README.md b/README.md new file mode 100644 index 0000000..c4fc827 --- /dev/null +++ b/README.md @@ -0,0 +1,109 @@ +# Dataset Creation and Analysis + +## Überblick +Dieses Projekt mit dem experiment_key **dataset_creation_and_analysis** beschreibt ein Experiment zur Erstellung und Analyse eines Datasets aus CI-Artefakten zur Überwachung von Policy-Entscheidungen und Drift-Signalen. + +[Artikel-Link](https://donau2space.de/tag-135-aus-live-artefakten-ein-dataset-gebaut-n10-vs-n20-flappy-zaehler-inklusive/) + +[Git-Repository](https://git.donau2space.de/Mika/dataset_creation_and_analysis) + +### Hinweis +Alle Inhalte wurden per KI generiert. +Nutzung, Anpassung und Weiterentwicklung erfolgen eigenverantwortlich auf eigenes Risiko. +Es wird keine Korrektheit, Sicherheit, Funktionsfähigkeit oder rechtliche Eignung zugesichert. + +## Inhalt des Repositories +Enthalten sind mehrere Python-Skripte, die Daten aus CI-Artefakten extrahieren, analysieren und als Dataset exportieren. + +### Artefakte + +#### 1. drift_report_parser +- **Art:** python_script +- **Ziel:** mixed +- **Sprachen:** Python +- **Zweck:** Analysiert Drift-Berichte und extrahiert relevante Felder aus JSON-Daten. + +**API-Funktionen:** +- `parse_drift_report(file_path)` → parsed_data (Liste von Dictionaries) + - Liest eine Drift-Report-Datei ein und gibt strukturierte Daten zurück. + +**Datenstruktur:** `DriftReportData` +- Felder: timestamp, pinned, unpinned, decision, rolling_warn_rate, counts, label, comment + +#### 2. dataset_exporter +- **Art:** python_script +- **Ziel:** mixed +- **Sprachen:** Python +- **Zweck:** Exportiert die analysierten Daten im JSONL- oder CSV-Format. + +**API-Funktionen:** +- `export_dataset(dataset, output_format, output_path)` → None + - Speichert ein Dataset im gewünschten Ausgabeformat. + +**Datenstruktur:** `ExportOptions` +- Felder: output_format, output_path + +#### 3. rerun_evaluator +- **Art:** python_script +- **Ziel:** mixed +- **Sprachen:** Python +- **Zweck:** Bewertet die Notwendigkeit von Reruns auf Basis vorheriger Laufdaten. + +**API-Funktionen:** +- `evaluate_rerun_needs(runs_data)` → rerun_evaluation (Dictionary) + - Analysiert Laufhistorien und bestimmt, ob erneute Ausführungen sinnvoll sind. + +**Datenstruktur:** `RunData` +- Felder: run_id, label_triggered, flappy, pinned, unknown_rate + +## Installation & Nutzung +### Voraussetzungen +- Python 3.8 oder höher +- Abhängigkeiten gemäß `requirements.txt` (sofern vorhanden) + +### Installation +1. Repository klonen: + ``` + git clone https://git.donau2space.de/Mika/dataset_creation_and_analysis + cd dataset_creation_and_analysis + ``` +2. Optionale virtuelle Umgebung erstellen und aktivieren. +3. Abhängigkeiten installieren: + ``` + pip install -r requirements.txt + ``` + +### Nutzung +Die Skripte können einzeln ausgeführt oder in eigenen Python-Pipelines importiert werden. + +Beispiele: +- Drift-Report parsen: + ``` + python drift_report_parser.py path/to/report.json + ``` +- Dataset exportieren: + ``` + python dataset_exporter.py dataset.jsonl csv output.csv + ``` +- Rerun-Bewertung durchführen: + ``` + python rerun_evaluator.py previous_runs.json + ``` + +## Typische Use-Cases +- Analyse von Drift-Berichten aus CI/CD-Systemen +- Erstellung strukturierter Datasets für Machine-Learning-Auswertungen +- Bewertung und Reduktion unnötiger Reruns +- Vorbereitung von Experiment-Datenexporten + +## Struktur & mögliche Erweiterungen +- **Erweiterbar** um zusätzliche Parser für andere Artefakt-Typen +- **Kombinierbar** mit Dashboard- oder Reporting-Komponenten +- **Integration möglich** in bestehende CI/CD-Überwachungsframeworks + +## Lizenz +Dieses Projekt steht unter der **MIT-Lizenz**. + +--- + +*Hinweis:* Diese README-Datei und alle zugehörigen Inhalte wurden automatisiert per KI generiert. Nutzung auf eigene Verantwortung. \ No newline at end of file