Files
LehrerApp/docs/Kompetenzkatalog-KI-Prompt.md
admin 8495e1b8d0 KI-gestützte Planungsunterstützung (4.5.9) + Kompetenzkatalog-Import (8.1.2)
KI-Unterstützung: neuer Einstellungen-Tab (Anmeldung, Guthaben) und Button im
Planungs-Tab, der Einheiten+Stunden als JSON an ein neues PHP-Backend (ai-backend/)
sendet und die Antwort als prüfbare Vorschlagsliste zurückbringt. Provider-Aufruf,
Guthabenverwaltung und Abrechnung nach echten Token-Kosten laufen serverseitig, der
Desktop-Client sieht nie einen LLM-API-Key. Zentral abgesichert: eine von der KI
zurückgegebene Stunden-Id, die zu keiner echten Lesson der Einheit passt, wird nie
als Update übernommen, sondern immer als neue Stunde behandelt.

Kompetenzkatalog-Import (8.1.2): JSON-Export/Import für Kompetenzkataloge.
2026-08-16 01:31:14 +02:00

180 lines
6.8 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Kompetenzkatalog mit KI erstellen
Diese Datei erklärt das JSON-Format für Kompetenzkataloge in der LehrerApp
und enthält einen fertigen Prompt, den du in eine KI (z.B. Claude, ChatGPT)
einfügen kannst.
---
## JSON-Format
```json
{
"subject": "Chemie",
"gradeLevel": 10,
"domains": [
{
"name": "Erkenntnisgewinnung",
"code": "EG",
"competencies": [
{ "code": "EG1", "description": "Hypothesen zu chemischen Phänomenen formulieren und überprüfen" },
{ "code": "EG2", "description": "Experimente zielgerichtet planen und sicher durchführen" },
{ "code": "EG3", "description": "Messdaten systematisch erfassen, auswerten und interpretieren" }
]
},
{
"name": "Kommunikation",
"code": "K",
"competencies": [
{ "code": "K1", "description": "Sachverhalte unter Verwendung der Fachsprache beschreiben" },
{ "code": "K2", "description": "Ergebnisse adressatengerecht präsentieren" }
]
}
]
}
```
### Feldübersicht
| Feld | Typ | Bedeutung |
|------|-----|-----------|
| `subject` | String | Name des Fachs muss mit dem in der App angelegten Fach übereinstimmen |
| `gradeLevel` | Zahl | Klassenstufe (113) |
| `domains[].name` | String | Name des Kompetenzbereichs (z.B. „Erkenntnisgewinnung") |
| `domains[].code` | String | Kürzel für den Bereich (z.B. „EG") wird in der App angezeigt |
| `competencies[].code` | String | Kürzel der einzelnen Kompetenz (z.B. „EG1") |
| `competencies[].description` | String | Beschreibung der Kompetenz als vollständiger Satz |
### Hinweise
- `code` darf leer sein (`""`), ist aber für die spätere Zuordnung hilfreich
- Die Reihenfolge der Bereiche und Kompetenzen im JSON wird beibehalten
- Vor dem Import zeigt die App neue, unveränderte und widersprüchliche Einträge an
- Standardmäßig wird der Katalog **zusammengeführt**; bei Konflikten bleibt zunächst die
vorhandene Fassung ausgewählt und kann einzeln durch die importierte Fassung ersetzt werden
- Das vollständige Ersetzen des Katalogs ist weiterhin möglich, muss aber ausdrücklich bestätigt werden
- Mehrere Klassenstufen = mehrere JSON-Dateien
---
## Fertiger KI-Prompt
Kopiere den folgenden Text in eine KI deiner Wahl und passe die
markierten Stellen an:
---
> **Prompt:**
>
> Erstelle einen Kompetenzkatalog für das Fach **[FACH]**, Klassenstufe **[STUFE]**,
> basierend auf dem Bildungsplan Baden-Württemberg (alternativ: Lehrplan [BUNDESLAND]).
>
> Gib das Ergebnis als valides JSON in genau diesem Format aus kein Fließtext davor oder danach:
>
> ```json
> {
> "subject": "[FACH]",
> "gradeLevel": [STUFE],
> "domains": [
> {
> "name": "Bereichsname",
> "code": "XX",
> "competencies": [
> { "code": "XX1", "description": "Kompetenz als vollständiger Satz im Schüler-Infinitiv" }
> ]
> }
> ]
> }
> ```
>
> Anforderungen:
> - Verwende die prozessbezogenen Kompetenzbereiche des Bildungsplans als `domains`
> (z.B. für Naturwissenschaften: Erkenntnisgewinnung, Kommunikation, Bewertung,
> ggf. fachspezifische Inhaltsbereiche)
> - Pro Bereich 48 konkrete, beobachtbare Kompetenzen
> - Beschreibungen im Schüler-Infinitiv: „... formulieren", „... auswerten", „... beurteilen"
> - Codes: Bereichskürzel + laufende Nummer (EG1, EG2, K1, K2, ...)
> - Keine Duplikate, keine Leerzeilen im JSON, UTF-8
---
## Beispiele pro Fach
### Naturwissenschaften (Chemie, Physik, Biologie)
Typische Bereiche nach Bildungsplan BW:
- **EG** Erkenntnisgewinnung
- **K** Kommunikation
- **B** Bewertung
- **FW** Fachwissen (inhaltliche Kompetenzen, ggf. nach Themenfeld aufgeteilt)
### Mathematik
- **L** Leitideen (Zahl, Messen, Raum & Form, Funktionaler Zusammenhang, Daten & Zufall)
- **PK** Prozessbezogene Kompetenzen (Modellieren, Problemlösen, Argumentieren, ...)
### Sprachen (Deutsch, Englisch, ...)
- Kompetenzbereiche nach GER (A1C2) oder nach Lehrplan:
Sprechen, Schreiben, Lesen, Hören, Sprachmittlung, Sprachbewusstsein
---
## Workflow
1. Fach in der App unter **Einstellungen → Fächer** anlegen (falls noch nicht vorhanden)
2. KI-Prompt mit Fach und Klassenstufe anpassen und ausführen
3. JSON aus der KI-Antwort kopieren und in eine `.json`-Datei speichern
4. In der App: **Einstellungen → Kompetenzkataloge** → Fach + Klassenstufe wählen → **Import JSON**
5. Vorschau und mögliche Konflikte prüfen; in der Regel **Zusammenführen (empfohlen)** wählen
6. Nach dem Import erscheinen die Bereiche und Kompetenzen sofort in der Übersicht
---
## Vollständiges Beispiel: Chemie Klasse 10
```json
{
"subject": "Chemie",
"gradeLevel": 10,
"domains": [
{
"name": "Erkenntnisgewinnung",
"code": "EG",
"competencies": [
{ "code": "EG1", "description": "Beobachtungen von Erklärungen unterscheiden und Hypothesen ableiten" },
{ "code": "EG2", "description": "Experimente unter Einhaltung der Sicherheitsvorschriften planen und durchführen" },
{ "code": "EG3", "description": "Messdaten tabellarisch erfassen und grafisch darstellen" },
{ "code": "EG4", "description": "Ergebnisse mit der Ausgangsfragestellung verknüpfen und Schlussfolgerungen formulieren" },
{ "code": "EG5", "description": "Modelle zur Erklärung chemischer Phänomene nutzen und deren Grenzen benennen" }
]
},
{
"name": "Kommunikation",
"code": "K",
"competencies": [
{ "code": "K1", "description": "Fachbegriffe situationsgerecht und korrekt verwenden" },
{ "code": "K2", "description": "Chemische Gleichungen lesen, beschreiben und erläutern" },
{ "code": "K3", "description": "Arbeitsergebnisse strukturiert und verständlich präsentieren" },
{ "code": "K4", "description": "Quellen fachgerecht zitieren und Informationen kritisch bewerten" }
]
},
{
"name": "Bewertung",
"code": "B",
"competencies": [
{ "code": "B1", "description": "Chancen und Risiken chemischer Produkte und Verfahren abwägen" },
{ "code": "B2", "description": "Eigene Urteile zu chemisch-gesellschaftlichen Fragen begründet vertreten" },
{ "code": "B3", "description": "Perspektivwechsel einnehmen und unterschiedliche Interessen berücksichtigen" }
]
},
{
"name": "Fachwissen",
"code": "FW",
"competencies": [
{ "code": "FW1", "description": "Säure-Base-Reaktionen mit dem Protonenübertragungskonzept erklären" },
{ "code": "FW2", "description": "Den pH-Wert berechnen und messtechnisch bestimmen" },
{ "code": "FW3", "description": "Redoxreaktionen als Elektronenübertragungsreaktionen beschreiben" },
{ "code": "FW4", "description": "Organische Verbindungen anhand funktioneller Gruppen einordnen" }
]
}
]
}
```