Spaces:
Sleeping
Sleeping
| title: Diamond CSGO AI Player | |
| emoji: 🎮 | |
| colorFrom: green | |
| colorTo: blue | |
| sdk: docker | |
| pinned: false | |
| app_file: app.py | |
| # Diamond CSGO AI Player 🎮 | |
| A web-based demo of the Diamond AI agent playing Counter-Strike: Global Offensive using diffusion models and reinforcement learning. | |
| ## Features | |
| - **Real-time Keyboard Input**: Use standard WASD controls and other keys to interact | |
| - **AI Agent**: Pre-trained agent using diffusion-based world models | |
| - **Web Interface**: No installation required, play directly in your browser | |
| - **Live Visualization**: See the AI's perspective and actions in real-time | |
| ## Controls | |
| ### Movement | |
| - **W** - Move Forward | |
| - **A** - Move Left | |
| - **S** - Move Back | |
| - **D** - Move Right | |
| - **Space** - Jump | |
| - **Ctrl** - Crouch | |
| - **Shift** - Walk | |
| ### Actions | |
| - **1, 2, 3** - Switch Weapons | |
| - **R** - Reload | |
| - **Arrow Keys** - Camera Movement | |
| - **Left/Right Click** - Primary/Secondary Fire | |
| ### Game Controls | |
| - **M** - Switch between Human/AI control | |
| - **Enter** - Reset Environment | |
| ## How to Play | |
| 1. Click on the game canvas to focus it | |
| 2. Use keyboard controls to play | |
| 3. The AI agent will respond to your inputs in real-time | |
| 4. Switch to AI mode to watch the agent play autonomously | |
| ## Technical Details | |
| This demo uses: | |
| - **FastAPI + WebSocket** for real-time communication | |
| - **PyTorch** for AI model inference | |
| - **Diffusion Models** for next-frame prediction | |
| - **World Model Environment** for simulation | |
| The agent was trained using the Diamond framework, which combines: | |
| - Diffusion-based world models | |
| - Actor-critic reinforcement learning | |
| - Multi-step planning and imagination | |
| ## Model Information | |
| The AI agent uses several neural networks: | |
| - **Denoiser**: Diffusion model for generating next observations | |
| - **Upsampler**: High-resolution image generation | |
| - **Reward/End Model**: Predicting game outcomes | |
| - **Actor-Critic**: Action selection and value estimation | |
| ## Citation | |
| This work is based on the Diamond framework. If you use this code, please cite: | |
| ```bibtex | |
| @article{diamond2024, | |
| title={Diamond: Diffusion for World Modeling}, | |
| author={[Authors]}, | |
| journal={[Journal]}, | |
| year={2024} | |
| } | |
| ``` | |
| ## License | |
| See LICENSE file for details. | |