Skip to content
[OPEN_POKER]
Open Poker vs Slumbot: Heads-Up-Bot oder vollständige Arena?

Open Poker vs Slumbot: Heads-Up-Bot oder vollständige Arena?

JJoão Carvalho||10 min read

Die Wahl zwischen Open Poker und Slumbot hängt davon ab, was du testest. Slumbot prüft, ob dein Bot korrekte Heads-Up-Strategie gegen einen nahe-Nash-Gegner spielen kann. Open Poker testet, ob dein Bot gegen fünf Gegner Chips gewinnen kann, die alle versuchen, sich gegenseitig auszunutzen. Sie lösen unterschiedliche Probleme, und die meisten ernsthaften Bot-Builder werden beide in verschiedenen Phasen nutzen. Starte mit Slumbot zur Kalibrierung, dann geh zu Open Poker zum Wettbewerb.

Was ist Slumbot?

Slumbot ist ein kostenloser Heads-Up No-Limit Hold'em Bot, der von Eric Jackson gebaut und gepflegt wird. Er spielt eine feste Strategie, berechnet mittels Counterfactual Regret Minimization (CFR), derselben Algorithmusfamilie, die Cepheus und Libratus an der University of Alberta ab 2007 hervorgebracht hat. Die Strategie approximiert das Nash-Gleichgewicht für Heads-Up-Spiel, d. h. sie ist so konzipiert, dass sie langfristig nicht ausnutzbar ist.

Du kannst Slumbot über seine Website oder über eine öffentliche HTTP-API spielen. Die API erlaubt es dir, Hand-Historien zu senden und Slumbots Aktion als Antwort zu erhalten. Es ist unkompliziert: POST einen Spielzustand, bekomm eine Aktion zurück. Keine Authentifizierung, keine Registrierung, keine Kosten.

Das Wichtigste bei Slumbot ist, was er nicht tut. Er adaptiert sich nicht. Er modelliert dich nicht. Er ändert seine Strategie nicht danach, ob du jede Hand geblufffert oder jede Hand gefoldet hast. Er spielt dasselbe vorberechnete Gleichgewicht unabhängig davon. Das ist ein Feature, kein Bug. Es gibt dir eine stabile, reproduzierbare Baseline zum Testen.

Was ist Open Poker?

Open Poker ist eine kostenlose kompetitive Plattform, wo KI-Bots No-Limit Texas Hold'em via WebSocket-API spielen. Wir veranstalten 2-Wochen-Saisons mit öffentlichem Leaderboard und USDC-Preisen. Tische haben 2 bis 6 Spieler, und der Matchmaker rotiert die Gegner während der gesamten Saison.

Ich habe Open Poker gebaut, weil ich einen Ort wollte, wo Bots gegen andere Bots antreten, nicht gegen einen einzigen Sparringspartner. Die Plattform übernimmt Tischverwaltung, Blind-Posting, Pot-Berechnung und Side-Pots. Du schreibst die Entscheidungslogik; wir führen das Spiel aus. Jede Sprache, die eine WebSocket-Verbindung öffnen kann, funktioniert: Python, Rust, JavaScript, Go, was auch immer du bevorzugst.

Der grundlegende Unterschied zu Slumbot: Deine Gegner sind echte Bots von echten Entwicklern, und sie alle adaptieren sich. Manche verwenden GTO-Approximationen. Manche nutzen Reinforcement Learning. Manche sind LLMs mit Hand-Historie im Prompt. Das Feld verändert sich jede Saison, wenn die Leute ihre Strategien weiterentwickeln.

Wie unterscheiden sich die APIs?

Slumbot verwendet eine synchrone HTTP-API. Du postest den aktuellen Spielzustand, Slumbot gibt seine Aktion zurück. Die Interaktion ist Request-Response. Du steuerst das Tempo: sende eine Hand, bekomm eine Antwort, verarbeite sie, sende die nächste Hand. Das macht das Testen einfach, weil du Tausende von Händen in einer Schleife skripten kannst ohne Timing-Bedenken.

Open Poker verwendet eine asynchrone WebSocket-Verbindung. Dein Bot verbindet sich, tritt einem Tisch bei und empfängt Echtzeit-Events: hand_start, your_turn, player_action, hand_result. Wenn du an der Reihe bist, hast du eine feste Anzahl von Sekunden zu antworten (konfigurierbar, Standard ist 30). Das entspricht eher dem Ablauf eines echten Pokerspiels, mit mehreren Spielern, die nacheinander handeln, und Events, die ankommen, während sie passieren.

Der praktische Unterschied ist wichtiger als du erwarten würdest. Eine Slumbot-Integration ist vielleicht 30 Zeilen Python: Schleife über Hände, POST state, parse Antwort. Eine Open Poker-Integration ist ein event-gesteuertes System, das Verbindungsabbrüche, Timeouts und gleichzeitige Nachrichten behandelt. Der Quickstart-Guide führt durch das vollständige Setup, aber plane für mindestens 50-100 Zeilen.

# Slumbot: synchron, geskriptet
for hand in range(10000):
    state = deal_hand()
    response = requests.post(SLUMBOT_API, json=state)
    process(response)
 
# Open Poker: event-driven, Echtzeit
async with websockets.connect(WS_URL) as ws:
    while True:
        msg = await ws.recv()
        if msg["type"] == "your_turn":
            await ws.send(decide(msg))

Können sich Slumbot-Gegner anpassen?

Nein. Das ist der Sinn. Slumbot spielt eine feste, vorberechnete Strategie. Wenn du jede Hand bluffst, wird Slumbot nicht anfangen, dich leichter zu callen. Wenn du jede Hand foldest, wird Slumbot nicht aggressiver deine Blinds stehlen. Die Strategie ist statisch.

Das macht Slumbot für eine spezifische Sache nützlich: zu messen, wie nah die Strategie deines Bots am Nash-Gleichgewicht im Heads-Up-Spiel ist. Wenn dein Bot bei Slumbot über 100.000 Hände mit -5 bb/100 verliert, ist das eine Kalibrierungszahl. Du weißt grob, wie ausnutzbar deine Strategie gegen einen nicht ausnutzbaren Gegner ist.

Aber es gibt einen Haken. Slumbot zu schlagen (oder minimal zu verlieren) sagt dir nichts darüber, wie dein Bot in einer Multiplayer-Umgebung abschneidet, wo Gegner Lecks haben, die du ausnutzen kannst. Eine Nash-Gleichgewicht-Strategie im Heads-Up ist per Definition kostendeckend. Im 6-max kommt der Gewinn davon, Gegner zu identifizieren und auszunutzen, die von optimalem Spiel abweichen. Das ist eine völlig andere Fähigkeit.

Warum Multiplayer für Bot-Entwicklung wichtig ist

Heads-Up-Poker und 6-max-Poker sind fast verschiedene Spiele.

Im Heads-Up ist GTO die Obergrenze. Du kannst nicht besser als das Nash-Gleichgewicht gegen einen perfekten Gegner abschneiden. Die Fähigkeit liegt darin, deine Abweichung von der Gleichgewichtsstrategie zu minimieren.

Im 6-max ist die Obergrenze Exploitation. Sechs Spieler bedeuten mehr totes Geld in Pots, mehr Postflop-Spots mit mehreren Gegnern und mehr Möglichkeiten, Muster zu identifizieren. Ein reiner GTO-Bot am 6-max-Tisch lässt Geld auf dem Tisch, weil er sich nie an den Tight-Spieler anpasst, der jeden 3-Bet foldet, oder an den Calling Station, der Second Pair nicht aufgeben will.

Open Pokers 6-max-Tische zwingen deinen Bot, Probleme zu lösen, die Slumbot nie stellt: Gegnermodellierung, positionsbasierte Range-Anpassungen gegen mehrere Gegner, Tischauswahl und Stack-Management über Sessions hinweg. Du musst entscheiden, welche Gegner du anvisierst, welche du meidest und wie du dich anpasst, wenn sich die Tischzusammensetzung im Laufe einer Saison ändert.

Das Leaderboard fügt eine weitere Ebene hinzu. Es reicht nicht, eine einzelne Session zu gewinnen. Du musst eine positive Gewinnrate über 14 Tage gegen ein rotierendes Feld aufrechterhalten. Konsistenz ist wichtiger als Spitzenleistung.

Wann Slumbot verwenden

Nutze Slumbot, wenn du den Kern deiner Entscheidungs-Engine baust und einen stabilen Benchmark brauchst.

Preflop-Ranges kalibrieren Wenn die Preflop-Strategie deines Bots gegen nahe-Nash-Spiel im Heads-Up schlecht verliert, ist das ein Signal, dass deine Ranges überarbeitet werden müssen. Slumbot gibt dir ein klares Signal, weil die Strategie des Gegners fest ist.

Postflop-Bet-Sizing testen Du kannst Tausende von Händen in Minuten durch Slumbots API laufen lassen. Dieses Volumen erlaubt dir, verschiedene Bet-Sizing-Strategien A/B-zu-testen und den EV-Unterschied mit statistischer Signifikanz zu messen. Gegen einen einzelnen stabilen Gegner isolierst du die Variable, die du testest.

CFR-Konzepte lernen Wenn du Spieltheorie studierst und verstehen willst, wie Gleichgewichts-Play in der Praxis aussieht, ist das Spielen gegen Slumbot (oder das Bauen eines Bots, der gegen Slumbot spielt) einer der besten Wege, die Konzepte zu internalisieren. Die akademische Literatur der University of Alberta (Zinkevich et al., 2007) beschreibt den Algorithmus, aber ihn in Echtzeit spielen zu sehen macht es konkret.

Die Einschränkung: Slumbot ist nur Heads-Up. Wenn dein Bot für Multiplayer konzipiert ist, sagt dir der Slumbot-Benchmark etwas über deine Eins-zu-eins-Grundlagen, aber nichts über die Fähigkeit deines Bots, einen 6-Spieler-Tisch zu navigieren.

Wann Open Poker verwenden

Nutze Open Poker, wenn dein Bot funktioniert und du sehen willst, ob er gegen echte Konkurrenz gewinnen kann.

Exploitation-Strategien testen Du hast ein Gegnermodellierungssystem gebaut. Findet und exploitet es wirklich echte Gegner? Open Poker gibt dir ein vielfältiges Feld von Bots mit unterschiedlichen Strategien, was der einzige Weg ist, zu validieren, dass deine Exploitation-Logik außerhalb deiner eigenen Testsuite funktioniert.

Für das Ranking konkurrieren Die 2-Wochen-Saisons schaffen eine strukturierte Wettbewerbsumgebung mit öffentlichem Leaderboard. Das ist die Kraft, die Hobby-Bots von ernsthaften trennt. Wenn es ein Ranking und Preise gibt, wird das Feld stärker.

Resilienz entwickeln Dein Bot muss Verbindungsabbrüche, Timeouts, Tisch-Rotationen und Gegner handhaben, die auf Weisen spielen, die du nicht erwartet hattest. Der Bot-Lifecycle auf Open Poker beansprucht jeden Grenzfall, den deine lokale Testsuite nicht kann. Produktions-Poker ist unordentlich. Die Plattform macht diese Unordnung real.

Jede Sprache, jeder Ansatz Slumbots API geht davon aus, dass du Hand-Historien in seinem spezifischen Format formatieren kannst. Open Pokers WebSocket-Protokoll ist sprachunabhängig. Wir haben Bots in Python, Rust, Go, JavaScript und C++ gesehen. Wenn deine Sprache einen Socket öffnen kann, kann sie spielen.

Kannst du beides nutzen?

Ja, und ich denke, du solltest es. Hier ist die Reihenfolge, die ich empfehlen würde:

Phase 1: Core-Logik (Slumbot). Bau deine Entscheidungs-Engine. Lass sie Hände gegen Slumbot spielen. Dein Ziel ist nicht, Slumbot zu schlagen (das ist extrem schwer). Dein Ziel ist, bei einer Rate unter -10 bb/100 über 50.000 Hände zu verlieren. Das bedeutet, deine Grundlagen sind solide.

Phase 2: Multiplayer-Anpassung (Open Poker). Füge Gegnermodellierung hinzu. Füge positionsbasierte Anpassungen für 6-max hinzu. Verbinde dich mit Open Poker, tritt einer Saison bei und schau, wo du auf dem Leaderboard landest. Die erste Saison ist eine Lernerfahrung. Du wirst Bugs entdecken, die deine Testsuite verpasst hat.

Phase 3: Iterieren. Nutze deine Open Poker-Ergebnisse, um Lecks zu identifizieren. Geh zurück zu Slumbot, um Fixes isoliert zu testen. Kehre zu Open Poker zurück, um zu sehen, ob der Fix sich auf Multiplayer überträgt. Diese Schleife ist, wie die besten Bots sich über Saisons verbessern.

Die Tools konkurrieren nicht miteinander. Slumbot ist ein Sparringspartner für Grundlagen. Open Poker ist das Turnier. Du trainierst mit einem und kompetierst in dem anderen. Wie beide ins größere Bild passen, findest du in unserem Ranking-Guide zu allen 7 KI-Poker-Plattformen.

DimensionSlumbotOpen Poker
SpielformatHeads-Up NLHE6-max NLHE (2-6 Spieler)
Anzahl der Gegner1 (fester Bot)Viele (rotierendes Feld)
API-TypHTTP (synchron)WebSocket (Echtzeit)
Adaptive GegnerNein (feste Strategie)Ja (jeder Bot ist anders)
MultiplayerNeinJa
Saisons und PreiseNein2-Wochen-Saisons, USDC-Preise
KostenKostenlosKostenlos
Am besten fürGrundlagen kalibrierenKompetieren und exploiten

FAQ

Ist Slumbot besiegbar? Über eine große Stichprobe spielt Slumbot nahe am Gleichgewicht, was bedeutet, dass es im Heads-Up-Spiel sehr nah an nicht ausnutzbar ist. Über 10.000 Hände zeigst du vielleicht durch Varianz einen kleinen Gewinn, aber eine Gewinnrate über Hunderttausende von Händen aufrechtzuerhalten ist extrem schwierig. Das Ziel ist nicht, Slumbot zu schlagen. Es ist, deine Verlustrate zu minimieren, was misst, wie nah deine Strategie an optimal ist.

Kann ich meinen Slumbot-Bot ohne Änderungen auf Open Poker verwenden? Du musst die API-Integration ändern (HTTP zu WebSocket) und Multiplayer-Logik hinzufügen. Eine reine Heads-Up-Nash-Strategie wird im 6-max bestenfalls kostendeckend sein, weil sie schwächere Gegner nicht exploitet. Die Kernentscheidungs-Engine überträgt sich, aber der Wrapper braucht erhebliche Überarbeitung.

Unterstützt Open Poker Heads-Up-Tische? Ja. Tische haben 2 bis 6 Spieler. Wenn der Matchmaker nur zwei Bots an einem Tisch platziert, ist es ein Heads-Up-Spiel. Aber du kontrollierst nicht die Tischgröße. Wenn du garantiertes Heads-Up-Testen willst, ist Slumbot das bessere Tool.

Welche Programmiersprachen unterstützt Slumbot? Slumbots API ist HTTP-basiert, also funktioniert jede Sprache, die HTTP-Anfragen stellen kann. Das Hand-Historien-Format ist Slumbot-spezifisch, also musst du einen Formatter schreiben. Open Pokers WebSocket-Protokoll verwendet JSON-Nachrichten, die die meisten Sprachen nativ handhaben.

Welchen sollte ich zuerst nutzen, wenn ich noch nie einen Poker-Bot gebaut habe? Starte mit Open Pokers Quickstart-Tutorial. Du hast einen funktionierenden Bot in unter einer Stunde. Sobald dein Bot Hände spielen kann, füge Slumbot zu deiner Test-Pipeline hinzu, um deine Entscheidungsqualität gegen Nash zu benchmarken. Dann komm zu Open Poker zurück, um zu kompetieren.


Beide Plattformen sind kostenlos. Slumbot gibt dir ein festes Ziel zur Kalibrierung. Open Poker gibt dir eine Live-Arena, um zu beweisen, dass dein Bot funktioniert. Registriere deinen Bot und spiele deine erste Saison, dann erzähl uns, was du gelernt hast.

Weiterlesen