Calix-L/DanKS
Calix-L/DanKS has 831 GitHub stars and 35 forks. Star changes are not measured yet. Last checked 2026-11-12 18:07 UTC. Last push 2026-10-31.
RL‑Empowered Small‑Scale Competitive Guandan Agent
实测星标增长
- 24小时
- 正在收集历史
- 7天
- 正在收集历史
- 15天
- 正在收集历史
- 1个月
- 正在收集历史
各周期内的星标净变化,周期相互重叠,并非每日新增。缺失的测量保持空白。星标代表关注度,不代表软件质量。
README.zh-CN.md
原文English | 简体中文
DanKS:SOTA 级掼蛋智能体
完整开放三代技术路线
PPO 策略学习 · V3Pro 决策增强 · 两代 KSPlay GuanDan Service
在线体验 ↗ · 技术架构 · 网页服务 · 数据集 · 快速开始 · 研究主页
不只选好这一手,更为后续每一步布局。
掼蛋不只是比牌大小。你需要与队友配合,在看不见其他人手牌的情况下争夺牌权,并为后续出牌保留空间。现在最省的一张牌,可能拆掉最有价值的组合;一次不出,也可能把主动权交给队友。
DanKS 让决策关注整副手牌的未来。 由 Kingsoft AI Product Center(金山 AI 产品中心) 发起,DanKS 将结构化召回与 PPO 策略学习结合,并把两代开源网页对战服务带进同一个仓库。你可以研究智能体、训练自己的策略、打造自己的牌桌,也可以直接坐下来,和它打一局。
在线体验
坐下,出牌,挑战 DanKS。无需安装。
你与一位 AI 队友合作,迎战两位 AI 对手。浏览器即可游玩,支持中文与英文界面。
观看简短对局预览
DanKS 如何思考
保留有价值的选择,再学习什么时候使用它。

- 理解当前局面。 编码自己的手牌、公开出牌历史、合法动作和队伍上下文。
- 看到出牌之后。 对候选动作分析剩余手牌,判断它保留了哪些组合与后续机会。
- 从少而精的候选中决策。 Actor-Critic 联合评估状态、候选动作与剩牌结构。
- 从后续结果中学习。 PPO 与 GAE 将当前选择和之后的得失联系起来。
召回负责找到有价值的选项,策略网络负责判断哪个选项适合当下。
三代演进,一条主线
| AI 版本 | 核心能力 | 阅读入口 |
|---|---|---|
| V1 | 结构化召回与 NumPy 候选选择器 | 召回排序 |
| V2 | 扩展候选生成与 ONNX 选择器 | 动作生成 |
| V3 | 记忆感知神经策略、队伍信念特征与 PPO 学习 | 策略网络 · PPO 训练 |
| V3Pro | V3 推理增强:配牌保护、等价出牌规则与验证式残局搜索 | 策略入口 · 接入指南 |
V3Pro 以独立的 DanKSPro 包扩展 V3,不替换原网络,也不要求重新训练。残局增强覆盖通过准入检查、全桌总剩牌不超过 16 张的局面;11–16 张时还要求暗牌分配数不超过 128。
KSPlay GuanDan Service
有了 AI,还要有一张好用的牌桌。现在,牌桌也开源了。
两代 Service 均包含浏览器前端、房间后端、掼蛋裁判、完整源码理牌模块,以及标准外部 AI 接口。
- Service V1 —— 经典牌桌。 保留原版 CardKS 体验,提供简洁的开发起点。
- Service V2 —— 全新牌桌。 固定比例的桌面与手机横屏布局、模块化交互,以及改进的会话恢复。
查看 Service V1 → · 查看 Service V2 →
Service 的 V1、V2 指网页平台版本,与 AI 网络代数独立。两代服务均可通过示例规则机器人本地运行,也可以按 HTTP AI 接口接入自己的模型。训练权重与私有 AI 部署环境不随仓库分发。
从这里开始二开
| 你想做什么 | 从哪里开始 |
|---|---|
| 改牌桌布局或选牌交互 | V2 前端 |
| 扩展房间、牌局流程或实时消息 | V2 后端 |
| 调整理牌算法 | Go 理牌源码 |
| 接入新 AI | AI 请求与返回协议 |
| 找到对应的修改模块 | Service 二开指南 |
人类掼蛋数据
从完整牌局中研究决策,而不只是孤立的一手牌。
CardKS 维护的公开 KSCB 掼蛋数据集包含 899 场完整升级赛、10,218 个小局、840,194 个决策点。每个小局保留按顺序排列的事件,便于研究人类决策、队友配合与手牌结构的变化。
datasets/ 提供原始数据链接、下载方法与读取示例,数据继续由 CardKS 维护,不在 DanKS 重复存放。这些是牌局记录,而非预先编码好的 PPO 输入。
快速开始
跑起自己的网页牌桌
准备 Python 3.12 与 Go 1.23+。以下以 POSIX shell 为例:
git clone https://github.com/Calix-L/DanKS.git
cd DanKS/services/v2
python3.12 -m venv .venv
source .venv/bin/activate
python -m pip install -r requirements.txt
python scripts/build_arranger.py
python run.py
打开 http://127.0.0.1:8000/solo,创建牌桌并点击准备。其余座位由三个示例机器人填充;按 Ctrl+C 停止服务。
Windows PowerShell 使用 py -3.12 -m venv .venv 创建环境、.venv\Scripts\Activate.ps1 激活。要体验经典牌桌,将目录换成 services/v1 即可。
跑通 AI 代码
在独立的 Python 3.11+ 环境中,从仓库根目录运行:
python3.11 -m venv .venv-ai
source .venv-ai/bin/activate
python -m pip install -e . -e versions/v3 -e versions/v3pro
python -m pip install torch==2.8.0
python examples/retrieval_quickstart.py --version v3
python examples/v3_model_smoke.py
python examples/v3pro_smoke.py
示例使用合成输入验证召回、网络推理与 V3Pro 接入,模型冒烟示例使用随机初始化权重。CPU/CUDA/NPU 环境、V1/V2 安装和 PPO learner 命令见开发指南。Linux/macOS 可在 V3 环境运行 danks-build-native,启用可选 C++ 召回加速。
仓库结构
DanKS/
├── versions/ # AI:V1、V2、V3 与 V3Pro 扩展
├── services/
│ ├── v1/ # KSPlay GuanDan Service · 经典牌桌
│ └── v2/ # KSPlay GuanDan Service · 全新牌桌
├── guandan/engine/ # AI 侧共享掼蛋规则引擎
├── examples/ # 引擎、召回、网络与 PPO 可运行示例
├── datasets/ # 公开掼蛋数据入口与读取指南
├── assets/ # 品牌、对局预览与架构插图
└── .github/ # 贡献指南、开发指南与 CI
两代 Service 均可独立运行,各自保留规则与理牌模块。AI 各代仍为独立安装包,请为不同代数分别创建环境。
一起把它做得更好
训练一个新智能体,打造一张更好的牌桌,探索组队博弈的下一个想法。
欢迎算法、UI、跨平台适配与文档方面的贡献。参与方式见贡献指南,也可以直接提交 Issue。
项目仓库: GitHub · AtomGit 国内镜像
研究主页: CardKS
开源许可: Apache-2.0 · 许可与商标说明