Claude With Amazon Bedrock
← Alle Lektionen
Lektion 18Claude With Amazon Bedrock

Code based grading

Zusammenfassung (Audio)

Keine Audio-Zusammenfassung für diese Lektion.

Studiennotizen

📝 Lernnotizen: Implementierung eines Code-Prüfers (Code Grader)

🎯 Ziel des Code-Prüfers

  • Überprüfung des Modellausgangs, um sicherzustellen, dass er nur reinen Code (Python, JSON oder RegEx) liefert, ohne Erklärungen.
  • Validierung der Syntax des erzeugten Codes.

🛠️ Funktionsweise der Syntaxvalidierung

  • Hilfsfunktionen: Es werden drei Funktionen definiert: validateJSON, validatePython und validateRegEx.
  • Validierungsprozess:
  • Der Code wird versucht, als JSON geparst, als Python Abstract Syntax Tree (AST) geladen oder als regulärer Ausdruck kompiliert.
  • Erfolg: Bei erfolgreichem Parsen/Kompilieren wird ein voller Score von 10 vergeben.
  • Fehler: Bei einem Parsing-Fehler wird ein Score von 0 vergeben.

💾 Daten und Testfälle

  • Format-Schlüssel: Der Testdatensatz muss einen format-Schlüssel enthalten, der den erwarteten Output-Typ angibt (z. B. "Python", "JSON", "RegEx").
  • Automatisierung: Dieser Schlüssel wird idealerweise über das Prompt-Design des Datensatzgenerators hinzugefügt, um große Testmengen zu erstellen.

⚙️ Implementierungsschritte

  • Hinzufügen der Validierungsfunktionen: Implementierung von validateJSON, validatePython und validateRegEx.
  • Aktualisierung des Datensatzes: Hinzufügen des format-Schlüssels zu den Testfällen.
  • Prompt-Optimierung (Prompt Engineering):
  • Der Prompt wird angepasst, um das Modell strikt auf die Ausgabe von Python, JSON oder RegEx zu beschränken.
  • Anweisungen verhindern jegliche Kommentare oder Erklärungen.
  • Verwendung eines assistant message und eines stop sequence (z. B. drei Backticks) zur Steuerung des Ausgabeformats.
  • Score-Zusammenführung:
  • Der finale Score wird als Durchschnitt aus dem model score und dem syntax score berechnet.
  • Formel: Score → (Model Score + Syntax Score) / 2.

💡 Fazit

  • Der Code-Prüfer stellt sicher, dass die Modelle nicht nur die Aufgabe lösen, sondern auch das korrekte Format und die Syntax einhalten.
  • Die kontinuierliche Optimierung des Prompts ist entscheidend für die Verbesserung der Gesamtbewertung.

Takeaways

  • Der Code-Prüfer stellt sicher, dass der Modellausgang reiner Code (Python, JSON, RegEx) ist und die Syntax korrekt ist.
  • Die Validierung erfolgt durch spezifische Funktionen (z. B. JSON-Parser, Python AST), die bei erfolgreichem Parsen einen Score von 10 vergeben.
  • Testdatensätze müssen einen format-Schlüssel enthalten, der den erwarteten Output-Typ definiert.
  • Die Prompt-Optimierung ist entscheidend, um das Modell strikt auf Code zu beschränken und jegliche Erklärungen zu verhindern.
  • Der finale Score wird als Durchschnitt aus dem Model Score und dem Syntax Score berechnet.
Lernkarten 8 Karten
Frage
zum Aufdecken klicken · ←/→
Antwort
zum Zurückdrehen klicken
Nach Anki exportieren (.tsv) ↓
Wissensüberprüfung 0 Fragen

No quiz for this lesson yet.