microsoft/AI-For-Beginners
Publicmirrored fromhttps://github.com/microsoft/AI-For-BeginnersAvailable
translations/de/AGENTS.md
317lines · modecode
| 1 | # AGENTS.md |
| 2 | |
| 3 | ## Projektübersicht |
| 4 | |
| 5 | AI for Beginners ist ein umfassender 12-wöchiger Lehrplan mit 24 Lektionen, der die Grundlagen der Künstlichen Intelligenz abdeckt. Dieses Bildungs-Repository enthält praktische Lektionen mit Jupyter Notebooks, Quizfragen und interaktiven Übungen. Der Lehrplan umfasst: |
| 6 | |
| 7 | - Symbolische KI mit Wissensrepräsentation und Expertensystemen |
| 8 | - Neuronale Netze und Deep Learning mit TensorFlow und PyTorch |
| 9 | - Techniken und Architekturen der Computer Vision |
| 10 | - Verarbeitung natürlicher Sprache (NLP), einschließlich Transformer und BERT |
| 11 | - Spezialisierte Themen: Genetische Algorithmen, Verstärkendes Lernen, Multi-Agenten-Systeme |
| 12 | - KI-Ethik und Prinzipien verantwortungsvoller KI |
| 13 | |
| 14 | **Wichtige Technologien:** Python 3, Jupyter Notebooks, TensorFlow, PyTorch, Keras, OpenCV, Vue.js (für die Quiz-App) |
| 15 | |
| 16 | **Architektur:** Bildungsinhalts-Repository mit Jupyter Notebooks, organisiert nach Themenbereichen, ergänzt durch eine Vue.js-basierte Quiz-Anwendung und umfangreiche mehrsprachige Unterstützung. |
| 17 | |
| 18 | ## Setup-Befehle |
| 19 | |
| 20 | ### Primäre Entwicklungsumgebung (Python/Jupyter) |
| 21 | |
| 22 | Der Lehrplan ist für die Ausführung mit Python und Jupyter Notebooks konzipiert. Die empfohlene Methode ist die Verwendung von Miniconda: |
| 23 | |
| 24 | ```bash |
| 25 | # Clone the repository |
| 26 | git clone https://github.com/microsoft/ai-for-beginners |
| 27 | cd ai-for-beginners |
| 28 | |
| 29 | # Create and activate conda environment |
| 30 | conda env create --name ai4beg --file environment.yml |
| 31 | conda activate ai4beg |
| 32 | |
| 33 | # Start Jupyter Notebook |
| 34 | jupyter notebook |
| 35 | # OR |
| 36 | jupyter lab |
| 37 | ``` |
| 38 | |
| 39 | ### Alternative: Verwendung von devcontainer |
| 40 | |
| 41 | ```bash |
| 42 | # Open in VS Code and select "Reopen in Container" when prompted |
| 43 | # The devcontainer will automatically set up the environment |
| 44 | ``` |
| 45 | |
| 46 | ### Einrichtung der Quiz-Anwendung |
| 47 | |
| 48 | Die Quiz-App ist eine separate Vue.js-Anwendung, die sich unter `etc/quiz-app/` befindet: |
| 49 | |
| 50 | ```bash |
| 51 | cd etc/quiz-app |
| 52 | npm install |
| 53 | npm run serve # Development server |
| 54 | npm run build # Production build |
| 55 | npm run lint # Lint and fix files |
| 56 | ``` |
| 57 | |
| 58 | ## Entwicklungsworkflow |
| 59 | |
| 60 | ### Arbeiten mit Jupyter Notebooks |
| 61 | |
| 62 | 1. **Lokale Entwicklung:** |
| 63 | - Conda-Umgebung aktivieren: `conda activate ai4beg` |
| 64 | - Jupyter starten: `jupyter notebook` oder `jupyter lab` |
| 65 | - Zu den Lektionen-Ordnern navigieren und `.ipynb`-Dateien öffnen |
| 66 | - Zellen interaktiv ausführen, um den Lektionen zu folgen |
| 67 | |
| 68 | 2. **VS Code mit Python-Erweiterung:** |
| 69 | - Repository in VS Code öffnen |
| 70 | - Python-Erweiterung installieren |
| 71 | - VS Code erkennt und verwendet automatisch die Conda-Umgebung |
| 72 | - `.ipynb`-Dateien direkt in VS Code öffnen |
| 73 | |
| 74 | 3. **Cloud-Entwicklung:** |
| 75 | - **GitHub Codespaces:** Klicken Sie auf "Code" → "Codespaces" → "Codespace auf main erstellen" |
| 76 | - **Binder:** Verwenden Sie das Binder-Badge in der README, um im Browser zu starten |
| 77 | - Hinweis: Binder hat begrenzte Ressourcen und einige Einschränkungen beim Webzugriff |
| 78 | |
| 79 | ### GPU-Unterstützung für fortgeschrittene Lektionen |
| 80 | |
| 81 | Spätere Lektionen profitieren erheblich von GPU-Beschleunigung: |
| 82 | |
| 83 | - **Azure Data Science VM:** Verwenden Sie NC-Serie VMs mit GPU-Unterstützung |
| 84 | - **Azure Machine Learning:** Nutzen Sie Notebook-Funktionen mit GPU-Computing |
| 85 | - **Google Colab:** Laden Sie Notebooks einzeln hoch (kostenlose GPU-Unterstützung verfügbar) |
| 86 | |
| 87 | ### Entwicklung der Quiz-App |
| 88 | |
| 89 | ```bash |
| 90 | cd etc/quiz-app |
| 91 | npm run serve # Hot-reload development server at http://localhost:8080 |
| 92 | ``` |
| 93 | |
| 94 | ## Testanweisungen |
| 95 | |
| 96 | Dieses Repository ist auf Lerninhalte ausgerichtet und nicht auf Softwaretests. Es gibt keine traditionelle Test-Suite. |
| 97 | |
| 98 | ### Validierungsansätze: |
| 99 | |
| 100 | 1. **Jupyter Notebooks:** Zellen nacheinander ausführen, um sicherzustellen, dass die Codebeispiele funktionieren |
| 101 | 2. **Quiz-App-Tests:** Manuelles Testen über den Entwicklungsserver |
| 102 | 3. **Validierung der Übersetzungen:** Überprüfen Sie die übersetzten Inhalte im Ordner `translations/` |
| 103 | 4. **Linting der Quiz-App:** `npm run lint` in `etc/quiz-app/` ausführen |
| 104 | |
| 105 | ### Ausführung von Codebeispielen: |
| 106 | |
| 107 | ```bash |
| 108 | # Activate environment first |
| 109 | conda activate ai4beg |
| 110 | |
| 111 | # Run Python scripts directly |
| 112 | python lessons/4-ComputerVision/07-ConvNets/pytorchcv.py |
| 113 | |
| 114 | # Or execute notebooks |
| 115 | jupyter notebook lessons/3-NeuralNetworks/03-Perceptron/Perceptron.ipynb |
| 116 | ``` |
| 117 | |
| 118 | ## Code-Stil |
| 119 | |
| 120 | ### Python-Code-Stil |
| 121 | |
| 122 | - Standard-Python-Konventionen für Bildungs-Code |
| 123 | - Klarer, lesbarer Code, der Lernen über Optimierung priorisiert |
| 124 | - Kommentare, die wichtige Konzepte erklären |
| 125 | - Jupyter Notebook-freundlich: Zellen sollten möglichst eigenständig sein |
| 126 | - Keine strengen Linting-Anforderungen für Lehrinhalte |
| 127 | |
| 128 | ### JavaScript/Vue.js (Quiz-App) |
| 129 | |
| 130 | - ESLint-Konfiguration in `etc/quiz-app/package.json` |
| 131 | - `npm run lint` ausführen, um Probleme zu überprüfen und automatisch zu beheben |
| 132 | - Vue 2.x-Konventionen |
| 133 | - Komponentenbasierte Architektur |
| 134 | |
| 135 | ### Dateiorganisation |
| 136 | |
| 137 | ``` |
| 138 | lessons/ |
| 139 | ├── 0-course-setup/ # Setup instructions |
| 140 | ├── 1-Intro/ # Introduction to AI |
| 141 | ├── 2-Symbolic/ # Symbolic AI |
| 142 | ├── 3-NeuralNetworks/ # Neural Networks basics |
| 143 | ├── 4-ComputerVision/ # Computer Vision |
| 144 | ├── 5-NLP/ # Natural Language Processing |
| 145 | ├── 6-Other/ # Other AI techniques |
| 146 | ├── 7-Ethics/ # AI Ethics |
| 147 | └── X-Extras/ # Additional content |
| 148 | |
| 149 | etc/ |
| 150 | ├── quiz-app/ # Vue.js quiz application |
| 151 | └── quiz-src/ # Quiz source files |
| 152 | |
| 153 | translations/ # Multi-language translations |
| 154 | ``` |
| 155 | |
| 156 | ## Build und Deployment |
| 157 | |
| 158 | ### Jupyter-Inhalte |
| 159 | |
| 160 | Kein Build-Prozess erforderlich - Jupyter Notebooks werden direkt ausgeführt. |
| 161 | |
| 162 | ### Quiz-Anwendung |
| 163 | |
| 164 | ```bash |
| 165 | cd etc/quiz-app |
| 166 | |
| 167 | # Development |
| 168 | npm run serve |
| 169 | |
| 170 | # Production build |
| 171 | npm run build # Outputs to etc/quiz-app/dist/ |
| 172 | |
| 173 | # Deploy to Azure Static Web Apps |
| 174 | # Azure automatically creates GitHub Actions workflow |
| 175 | # See etc/quiz-app/README.md for detailed deployment instructions |
| 176 | ``` |
| 177 | |
| 178 | ### Dokumentationsseite |
| 179 | |
| 180 | Das Repository verwendet Docsify für die Dokumentation: |
| 181 | - `index.html` dient als Einstiegspunkt |
| 182 | - Kein Build erforderlich - direkt über GitHub Pages bereitgestellt |
| 183 | - Zugriff unter: https://microsoft.github.io/AI-For-Beginners/ |
| 184 | |
| 185 | ## Richtlinien für Beiträge |
| 186 | |
| 187 | ### Pull-Request-Prozess |
| 188 | |
| 189 | 1. **Titel-Format:** Klare, beschreibende Titel, die die Änderung erklären |
| 190 | 2. **CLA-Anforderung:** Microsoft CLA muss unterzeichnet sein (automatische Überprüfung) |
| 191 | 3. **Inhaltsrichtlinien:** |
| 192 | - Bildungsfokus und anfängerfreundlichen Ansatz beibehalten |
| 193 | - Alle Codebeispiele in Notebooks testen |
| 194 | - Sicherstellen, dass Notebooks durchgehend ausführbar sind |
| 195 | - Übersetzungen aktualisieren, wenn englische Inhalte geändert werden |
| 196 | 4. **Änderungen an der Quiz-App:** `npm run lint` vor dem Commit ausführen |
| 197 | |
| 198 | ### Übersetzungsbeiträge |
| 199 | |
| 200 | - Übersetzungen werden automatisiert über GitHub Actions mit co-op-translator durchgeführt |
| 201 | - Manuelle Übersetzungen werden in `translations/<language-code>/` abgelegt |
| 202 | - Quiz-Übersetzungen in `etc/quiz-app/src/assets/translations/` |
| 203 | - Unterstützte Sprachen: Über 40 Sprachen (siehe README für vollständige Liste) |
| 204 | |
| 205 | ### Aktive Beitragsbereiche |
| 206 | |
| 207 | Siehe `etc/CONTRIBUTING.md` für aktuelle Bedürfnisse: |
| 208 | - Abschnitte zu Deep Reinforcement Learning |
| 209 | - Verbesserungen bei der Objekterkennung |
| 210 | - Beispiele für Named Entity Recognition |
| 211 | - Trainingsbeispiele für benutzerdefinierte Einbettungen |
| 212 | |
| 213 | ## Umgebungskonfiguration |
| 214 | |
| 215 | ### Erforderliche Abhängigkeiten |
| 216 | |
| 217 | ```bash |
| 218 | # Core Python packages (from requirements.txt) |
| 219 | tensorflow==2.17.0 |
| 220 | torch (via conda) |
| 221 | torchvision (via conda) |
| 222 | keras==3.5.0 |
| 223 | opencv (via conda) |
| 224 | scikit-learn |
| 225 | numpy==1.26 |
| 226 | pandas==2.2.2 |
| 227 | matplotlib==3.9 |
| 228 | jupyter |
| 229 | ``` |
| 230 | |
| 231 | ### Umgebungsvariablen |
| 232 | |
| 233 | Keine speziellen Umgebungsvariablen für die grundlegende Nutzung erforderlich. |
| 234 | |
| 235 | Für Azure-Bereitstellungen (Quiz-App): |
| 236 | - `AZURE_STATIC_WEB_APPS_API_TOKEN` (automatisch von Azure gesetzt) |
| 237 | |
| 238 | ## Debugging und Fehlerbehebung |
| 239 | |
| 240 | ### Häufige Probleme |
| 241 | |
| 242 | **Problem:** Erstellung der Conda-Umgebung schlägt fehl |
| 243 | - **Lösung:** Conda zuerst aktualisieren: `conda update conda -y` |
| 244 | - Ausreichend Speicherplatz sicherstellen (50GB empfohlen) |
| 245 | |
| 246 | **Problem:** Jupyter-Kernel nicht gefunden |
| 247 | - **Lösung:** |
| 248 | ```bash |
| 249 | conda activate ai4beg |
| 250 | python -m ipykernel install --user --name ai4beg |
| 251 | ``` |
| 252 | |
| 253 | **Problem:** GPU wird in Notebooks nicht erkannt |
| 254 | - **Lösung:** |
| 255 | - CUDA-Installation überprüfen: `nvidia-smi` |
| 256 | - PyTorch-GPU überprüfen: `python -c "import torch; print(torch.cuda.is_available())"` |
| 257 | - TensorFlow-GPU überprüfen: `python -c "import tensorflow as tf; print(tf.config.list_physical_devices('GPU'))"` |
| 258 | |
| 259 | **Problem:** Quiz-App startet nicht |
| 260 | - **Lösung:** |
| 261 | ```bash |
| 262 | cd etc/quiz-app |
| 263 | rm -rf node_modules package-lock.json |
| 264 | npm install |
| 265 | npm run serve |
| 266 | ``` |
| 267 | |
| 268 | **Problem:** Binder läuft ab oder blockiert Downloads |
| 269 | - **Lösung:** Verwenden Sie GitHub Codespaces oder lokale Einrichtung für besseren Ressourcen-Zugriff |
| 270 | |
| 271 | ### Speicherprobleme |
| 272 | |
| 273 | Einige Lektionen erfordern erheblichen RAM (8GB+ empfohlen): |
| 274 | - Verwenden Sie Cloud-VMs für ressourcenintensive Lektionen |
| 275 | - Schließen Sie andere Anwendungen, wenn Modelle trainiert werden |
| 276 | - Reduzieren Sie die Batch-Größen in Notebooks, wenn der Speicher knapp wird |
| 277 | |
| 278 | ## Zusätzliche Hinweise |
| 279 | |
| 280 | ### Für Kursleiter |
| 281 | |
| 282 | - Siehe `lessons/0-course-setup/for-teachers.md` für Lehranweisungen |
| 283 | - Lektionen sind eigenständig und können in Reihenfolge oder einzeln unterrichtet werden |
| 284 | - Geschätzte Dauer: 12 Wochen mit 2 Lektionen pro Woche |
| 285 | |
| 286 | ### Cloud-Ressourcen |
| 287 | |
| 288 | - **Azure for Students:** Kostenlose Credits für Studierende verfügbar |
| 289 | - **Microsoft Learn:** Ergänzende Lernpfade, die im gesamten Lehrplan verlinkt sind |
| 290 | - **Binder:** Kostenlos, aber mit begrenzten Ressourcen und einigen Netzwerkeinschränkungen |
| 291 | |
| 292 | ### Optionen zur Codeausführung |
| 293 | |
| 294 | 1. **Lokal (empfohlen):** Volle Kontrolle, beste Leistung, GPU-Unterstützung |
| 295 | 2. **GitHub Codespaces:** Cloud-basiertes VS Code, gut für schnellen Zugriff |
| 296 | 3. **Binder:** Browserbasiertes Jupyter, kostenlos, aber begrenzt |
| 297 | 4. **Azure ML Notebooks:** Unternehmensoption mit GPU-Unterstützung |
| 298 | 5. **Google Colab:** Notebooks einzeln hochladen, kostenloser GPU-Tarif verfügbar |
| 299 | |
| 300 | ### Arbeiten mit Notebooks |
| 301 | |
| 302 | - Notebooks sind so konzipiert, dass sie Zelle für Zelle ausgeführt werden können, um zu lernen |
| 303 | - Viele Notebooks laden Datensätze beim ersten Ausführen herunter (kann Zeit in Anspruch nehmen) |
| 304 | - Einige Modelle erfordern GPU für angemessene Trainingszeiten |
| 305 | - Vorgefertigte Modelle werden verwendet, wo möglich, um den Rechenaufwand zu reduzieren |
| 306 | |
| 307 | ### Leistungsüberlegungen |
| 308 | |
| 309 | - Spätere Lektionen zur Computer Vision (CNNs, GANs) profitieren von GPU |
| 310 | - NLP-Transformer-Lektionen können erheblichen RAM erfordern |
| 311 | - Training von Grund auf ist lehrreich, aber zeitaufwendig |
| 312 | - Beispiele für Transfer-Learning minimieren die Trainingszeit |
| 313 | |
| 314 | --- |
| 315 | |
| 316 | **Haftungsausschluss**: |
| 317 | Dieses Dokument wurde mit dem KI-Übersetzungsdienst [Co-op Translator](https://github.com/Azure/co-op-translator) übersetzt. Obwohl wir uns um Genauigkeit bemühen, beachten Sie bitte, dass automatisierte Übersetzungen Fehler oder Ungenauigkeiten enthalten können. Das Originaldokument in seiner ursprünglichen Sprache sollte als maßgebliche Quelle betrachtet werden. Für kritische Informationen wird eine professionelle menschliche Übersetzung empfohlen. Wir übernehmen keine Haftung für Missverständnisse oder Fehlinterpretationen, die sich aus der Nutzung dieser Übersetzung ergeben. |