GPT-5 im Test: So prüfen Sie KI‑Modelle mit Tic‑Tac‑Toe – Schritt‑für‑Schritt‑Anleitung
Einleitung
OpenAI hat kürzlich gezeigt, dass das neue Modell GPT‑5 bei einer scheinbar simplen Aufgabe – einem gedrehten Tic‑Tac‑Toe‑Spiel – in Widersprüche gerät. Für kleine und mittelständische Unternehmen (KMU) oder IT‑Interessierte ist das ein gutes Beispiel, wie man KI‑Modelle selbst prüfen kann, bevor man sie im Produktiv‑Umfeld einsetzt.
Ziel dieser Anleitung
- Ein einfaches Tic‑Tac‑Toe‑Board programmieren (Python).
- Ein Prompt‑Template erstellen, das das KI‑Modell auffordert, das Spiel zu spielen.
- Ergebnisse automatisiert auswerten und typische Fehler (z. B. falsche Logik, Bild‑Inkonsistenzen) erkennen.
Voraussetzungen
- Python 3.9 oder neuer installiert.
- Ein API‑Zugang zu einem LLM (z. B. OpenAI‑API‑Key).
- Grundlegende Kenntnisse in der Kommandozeile.
Schritt 1 – Umgebung einrichten
# Erstelle ein virtuelles Umfeld (empfohlen)
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
# Installiere benötigte Pakete
pip install openai tqdm
Schritt 2 – Tic‑Tac‑Toe‑Logik implementieren
import random
def empty_board():
return [" "] * 9
def print_board(b):
rows = [b[i:i+3] for i in range(0,9,3)]
for r in rows:
print("|".join(r))
print("-"*5)
def check_winner(b):
lines = [(0,1,2),(3,4,5),(6,7,8),(0,3,6),(1,4,7),(2,5,8),(0,4,8),(2,4,6)]
for a,b1,c in lines:
if b[a] == b[b1] == b[c] != " ":
return b[a]
return None
Schritt 3 – Prompt für das LLM vorbereiten
Wir formulieren einen klaren Prompt, der das Modell auffordert, den nächsten Zug zu nennen. Wichtig: Der Prompt muss das aktuelle Board eindeutig beschreiben.
def build_prompt(board):
symbols = {" ":"-", "X":"X", "O":"O"}
rows = [" ".join(symbols[cell] for cell in board[i:i+3]) for i in range(0,9,3)]
board_str = "\n".join(rows)
return f"""Das aktuelle Tic‑Tac‑Toe‑Feld (X = Spieler 1, O = Spieler 2):\n{board_str}\n\nDein Zug ist O. Nenne die Feldnummer (1‑9) für den besten Zug, ohne weitere Erklärungen."""
Schritt 4 – API‑Aufruf und Ergebnis auswerten
import openai
import os
openai.api_key = os.getenv("OPENAI_API_KEY")
def ask_gpt(board):
prompt = build_prompt(board)
response = openai.ChatCompletion.create(
model="gpt-5", # oder das aktuelle Modell, z. B. gpt-4o
messages=[{"role": "user", "content": prompt}],
temperature=0,
max_tokens=10,
)
answer = response.choices[0].message.content.strip()
return answer
Schritt 5 – Automatisierter Testlauf
Wir simulieren 10 zufällige Partien und prüfen, ob das Modell illegale Züge oder widersprüchliche Aussagen liefert.
from tqdm import tqdm
def run_test(rounds=10):
errors = []
for _ in tqdm(range(rounds)):
board = empty_board()
# Spieler X (Mensch) macht zufälligen Zug
board[random.choice([i for i, c in enumerate(board) if c == " "])] = "X"
# KI ist an der Reihe
answer = ask_gpt(board)
try:
move = int(answer) - 1
except ValueError:
errors.append((board.copy(), answer, "Kein Zahlenwert"))
continue
if board[move] != " ":
errors.append((board.copy(), answer, "Feld bereits belegt"))
else:
board[move] = "O"
# Optional: Prüfen, ob KI plötzlich ein X setzt – das wäre ein Logikfehler
if "X" in answer:
errors.append((board.copy(), answer, "KI spielt falsches Symbol"))
return errors
if __name__ == "__main__":
errs = run_test(20)
print(f"Gefundene Fehler: {len(errs)}")
for b, a, reason in errs:
print("---")
print_board(b)
print(f"Antwort: {a} – Grund: {reason}")
Fazit
Mit wenigen Zeilen Code können Sie selbst prüfen, ob ein LLM wie GPT‑5 logische Aufgaben korrekt löst. Der Test deckt häufige Schwächen auf – etwa falsche Feldwahl, nicht‑numerische Antworten oder das Ignorieren des geforderten Symbols. So vermeiden Sie unangenehme Überraschungen, wenn Sie KI‑Funktionen in Kunden‑Portalen, Chatbots oder internen Tools einsetzen.
Sie möchten das lieber von Profis umsetzen lassen?
Wir von Schönfelder EDV unterstützen Sie gerne bei der Integration, dem Monitoring und der sicheren Nutzung von KI‑Modellen. Schreiben Sie mir einfach.

