DeepPoker R1 - A Texas Hold'em poker game engine with FastAPI WebSocket server and AI agent framework
Project description
DeepPoker
DeepPoker R1 - A Texas Hold'em poker game engine with FastAPI WebSocket server and AI agent framework.
Features
- Pure Python game core logic (no external poker dependencies)
- FastAPI + WebSocket server architecture
- AI Agent interface for LLM RL integration
- Complete Texas Hold'em rules implementation
Installation
pip install deeppoker
Or with uv:
uv add deeppoker
Quick Start
from deeppoker import Card, Deck, Player, TexasHoldemGame
# Create players
players = [Player(f"Player {i}", chips=1000) for i in range(4)]
# Create and start a game
game = TexasHoldemGame(players, small_blind=10, big_blind=20)
game.start_hand()
Development
Clone the repository and install development dependencies:
git clone https://github.com/ziyigogogo/deeppoker.git
cd deeppoker
uv sync --all-extras
Run tests:
uv run pytest
Start the server:
uv run deeppoker
API Reference
Core Classes
Card- Represents a playing cardDeck- A deck of 52 cardsPlayer- A poker player with chipsTexasHoldemGame- Main game engineHandRank- Hand ranking enumerationevaluate_hand- Hand evaluation function
Agents
BaseAgent- Abstract base class for AI agentsRandomAgent- Random action agent for testing
License
MIT License - see LICENSE for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file deeppoker-0.1.0.tar.gz.
File metadata
- Download URL: deeppoker-0.1.0.tar.gz
- Upload date:
- Size: 28.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
138d42358685c812ed68f48885de9b185ffaf83156386f0712443eb3123071c0
|
|
| MD5 |
9072ec5dbba7fb49319fb681aa82a9f9
|
|
| BLAKE2b-256 |
1e5286d0976ed32675e67695814c0b8dcd479cf2ace08d9fe93b4ca00b4b5f6a
|
File details
Details for the file deeppoker-0.1.0-py3-none-any.whl.
File metadata
- Download URL: deeppoker-0.1.0-py3-none-any.whl
- Upload date:
- Size: 35.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ace65587eb9103ecbd436edd7752547ed245f31aabe128d55b39eb6b94257878
|
|
| MD5 |
d1655ed82b0b3963f0d38c15e3fc8405
|
|
| BLAKE2b-256 |
525945d244fc5e18e708370b4d3b2f8f930c88bb5bec69ec249d3acd0c83b282
|