Makroprogramm zum Schachspielen in YouTube-Kommentaren
(github.com/ai1023dev)Ich habe einen automatischen Schach-Bot gebaut, bei dem die kollektive Intelligenz der Abonnenten über YouTube-Kommentare gegen eine Schach-KI (Stockfish) antritt.
Der Bot sammelt alle 10 Minuten die Antworten auf einen angehefteten Kommentar und filtert aus den zuletzt geschriebenen Kommentaren nur die Züge heraus, die in der SAN-Schachnotation (Standard Algebraic Notation) verfasst sind. Als Zug des Spielers wählt er dann den Zug mit den meisten Likes aus.
Zum Beispiel bedeutet e4, dass der Bauer vor dem König zwei Felder nach vorn zieht, und Nf3, dass der Springer auf das Feld f3 zieht.
Wenn man in den Kommentaren Eingaben wie [e4] oder [Nf3] mit eckigen Klammern schreibt, erkennt der Bot sie automatisch. Da mehrere Personen gleichzeitig Vorschläge machen und an der Abstimmung teilnehmen können, wird die „kollektive Intelligenz“ auf natürliche Weise zu einem einzelnen Spieler, der gegen die KI antritt.
Der ausgewählte Zug wird mithilfe der Python-Chess-Bibliothek zunächst darauf geprüft, ob er auf dem aktuellen Brett tatsächlich ein legaler Zug ist. Falsche Notation oder Züge, die in der aktuellen Stellung nicht möglich sind, werden automatisch ausgeschlossen. Wird ein gültiger Zug gefunden, wird er an die Stockfish-Schach-Engine übergeben, damit die Antwort der KI berechnet wird.
Sobald die KI gezogen hat, rendert der Bot das aktuelle Schachbrett als Emoji-Darstellung und aktualisiert den angehefteten Kommentar automatisch. Dabei werden auch der gerade übernommene Zug, die Antwort der KI und der aktuelle Spielverlauf angezeigt.
Ist die Partie beendet, werden Sieg, Niederlage oder Remis fortlaufend in einer JSON-Datei gespeichert. Anschließend wird das Schachbrett zurückgesetzt und automatisch die nächste Partie gestartet.
Für die Umsetzung wurden das YouTube Data API zum Abrufen von Kommentaren, OAuth 2.0 zum Bearbeiten des angehefteten Kommentars, Python Chess für die Schachregeln und das Parsen der SAN-Notation sowie Stockfish für die Berechnung der KI-Züge verwendet.
Zusätzlich wurde ein Scheduler implementiert, der alle 10 Minuten automatisch läuft. Dadurch genügt es, den Server gestartet zu lassen, und der gesamte Ablauf – Kommentarprüfung, Übernahme des Abstimmungsergebnisses, KI-Zug und Kommentar-Update – wiederholt sich automatisch.
Eine Teilnahme ist allein über YouTube-Kommentare möglich, ganz ohne separate Website oder App. Je mehr Zuschauer mitmachen, desto vielfältiger werden die vorgeschlagenen Strategien und desto lebhafter wird auch der Abstimmungswettbewerb.
Noch keine Kommentare.