Skip to content
imhaojiePublic

About

No description, website, or topics provided.

Resources

Stars

2 stars

Watchers

0 watching

Forks

Latest commit

 

History

38 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🏀 DraftCode · 选秀作战室

结合球员数据、专家预测和赔率信号的 NBA 选秀 Agent

Python LLM Engine AWS

目录

  1. 项目概览
  2. 系统架构
  3. 技术特点
  4. 核心原理
  5. 快速开始
  6. 比赛预测
  7. Agent 一览
  8. AWS 部署
  9. 技术栈
  10. 仓库结构
  11. 数据与复现

项目概览

DraftCode 来自 AWS Summit Shanghai 2026「模拟球探」24h 黑客松。系统为 30 支球队配置选人偏好,通过 1,500 次蒙特卡洛模拟,生成顺位预测及对应概率。

模型综合球员体测与能力数据、多家媒体的 mock draft 和赔率隐含概率,在信号分歧较大时调用 gpt-5.5 分析。预测结果按比赛各顺位的期望得分优化。

输出包括 30 顺位与 7 道里程碑题的答题卡、预测解释、运行记录,以及 AWS SAM 部署定义。

系统架构

DraftCode 系统架构 — 三路信号融合 → 蒙特卡洛 → 答题卡,跑在 AWS Serverless 底座上
数据流 · Mermaid 可编辑版
flowchart TD
    T["🧬 天赋信号<br/>手册速率指标 / 体测"]:::sig
    E["📋 专家信号<br/>多源 mock 共识"]:::sig
    M["💰 资金信号<br/>赔率 de-vig 隐含概率"]:::sig
    T & E & M --> F{"三信号融合 + 两轴背离<br/>gpt-5.5 在分歧处破平局"}
    F --> P["30 GM 偏好函数<br/>w·(天赋+需求+人格+专家+资金)"]
    P --> MC["蒙特卡洛 ×1500<br/>顶部顺位锚定去水赔率"]
    MC --> B["🎯 匈牙利指派<br/>30 顺位 + 边际概率(置信度)"]
    MC --> Q["📐 7 里程碑<br/>与最终板自洽"]
    B & Q --> A["📋 答题卡 answer_card.xlsx"]
    B & Q --> AU["🔍 审计追踪 audit.json/md"]
    classDef sig fill:#141c30,stroke:#f4a93b,color:#eef2fb;
Loading

技术特点

特点 实现
三类信号融合 综合球员数据、专家排名和赔率,分别检测天赋与市场、专家与赔率之间的差异。
球队选人偏好 按顺位、阵容需求、偏好和时间线,为 30 支球队配置 GM Agent。
蒙特卡洛模拟 运行 1,500 次模拟,统计顺位分布,并计算 7 道里程碑题的结果。
情报更新 引入新闻与赔率变化,更新选秀顺序和球队需求后重跑预测。
红队检查与运行记录 检查预测分歧,保存输入数据、模型解释和信号来源。

核心原理

模型调用与模拟分开执行:先用 gpt-5.5 构建球队偏好、分析信号分歧,再由蒙特卡洛引擎复用这些结果,避免每次模拟都调用模型。

赔率 de-vig:把公开赔率转换为隐含概率,再按同一顺位归一化,作为选秀预测的输入。

美式赔率 → 隐含概率:  -X → X/(X+100)   |   +X → 100/(X+100)
去水 de-vig (比例法):  p_i = q_i / Σq_j      (同一顺位市场, 消抽水使 Σp = 1)
跨书共识:             多书同一(顺位, 球员)取均值, 按顺位归一

三处接入引擎:

  1. 偏好叠加 w_money · odds_signal
  2. 蒙特卡洛顶部置信度锚定市场 (1-λ)·softmax + λ·odds(λ 随顺位衰减)
  3. 轴② 背离(专家 mock vs 资金 odds)|gap| ≥ 8 触发 gpt-5.5 裁决

ESPN 与 OddsShark 的比赛数据快照中,顶部专家排名与赔率接近,未触发专家与赔率的分歧分析。缺少赔率输入时,系统使用球员数据与专家预测。

快速开始

make install      # 安装 (uv, 零第三方核心依赖)
make test         # 75 tests
make simulate     # 蒙特卡洛 Draft Twin (样例数据)
完整选秀预测流程(真实 2026 数据,需 gpt-5.5 网关)
# 设置 gpt-5.5 网关 (本地 Codex 反代, 或远程 EC2 网关)
export DRAFTCODE_LLM_BASE_URL=http://<gateway>:8787  DRAFTCODE_LLM_API_KEY=<key>

draftcode ingest  --source data/raw/official --out data/processed --divergence-llm   # ① 官方 107 参选人 + 轴① 背离
draftcode intel   --news-text "<交易新闻>" --apply                                    # ② 实时情报换签
draftcode market  --mock-file CBS=… --mock-file SI=… --apply                          # ③ 专家共识 (mock)
draftcode odds    --odds-file ESPN=… --odds-file OS=… --apply                         # ④ 资金信号 (赔率 de-vig) + 轴② 背离
draftcode warroom --data-dir data/processed --output-dir outputs/llm                  # ⑤ 30 GM 偏好 (gpt-5.5)
draftcode simulate --data-dir data/processed --output outputs/twin.json --draws 1500  # ⑥ 蒙特卡洛 + 赔率锚
draftcode answer  --data-dir data/processed --out outputs/answer_card.xlsx            # ⑦ 答题卡
draftcode audit                                                                       # ⑧ 合并预测+解释+背离+GM+红队 → 证据档

在浏览器中打开 web/draft_room.html 查看作战室。页面依次展示球员数据、市场信号、融合结果和终榜;加上 ?demo=1 可自动演示。

比赛预测

以下为比赛期间的预测节选,完整 30 顺位见 outputs/answer_card.xlsx。

# 球队 球员
1 Washington Wizards AJ 迪班萨
2 Utah Jazz 达林 彼得森
3 Memphis Grizzlies 卡梅隆 布泽尔
4 Chicago Bulls 凯莱布 威尔逊
5 Los Angeles Clippers 基顿 瓦格勒
6 Brooklyn Nets 迈克尔 布朗
7 Sacramento Kings 达柳斯 阿卡夫
13 Milwaukee Bucks ⟵ 字母哥交易 小拉巴伦 菲隆

7 道里程碑题

题 答案
Q1 长臂展 (4–14 顺位) 2 人
Q2 助跑弹跳前 3 入首轮 1 人
Q3 首轮中锋总数 2 个
Q4 首个中锋落点 第 10 顺位
Q5 国际球员总数 5 人
Q6 贡献最多机构 密歇根大学
Q7 手掌长度前 5 入首轮 2 人

Agent 一览

Agent 命令 职责 产物
官方归一化 ingest 107 参选人 + 体测/手册 + 轴① 背离 (gpt-5.5) prospects.csv
实时情报 intel 根据新闻更新持签球队和阵容需求 draft_order.csv
专家市场 market 多源 mock → 共识 (中英文名匹配) mock_signals.csv
资金赔率 odds 赔率 → de-vig 隐含概率 + 轴② 背离 odds_signals.csv
30 GM 作战室 warroom 30 队人格偏好 + 解释 + 红队 (LLM-once) outputs/llm/*.json
蒙特卡洛孪生 simulate 1500 次采样 + 赔率锚 + 匈牙利指派 twin.json
答题卡 / 审计 answer / audit 提交卡 + 可复现证据档 answer_card.xlsx · audit.md

外部内容由抓取工具或人工导入;引擎处理结构化数据并保存运行记录。

AWS 部署

infra/template.yaml 用 AWS SAM 定义采集、存储、并行模拟和结果查询所需的资源。

架构映射 / Scenario Swarm / 部署命令
层 服务
采集(容器) EventBridge + Fargate(headless 爬虫,含赔率)+ ECR
存储 S3 (KMS) · DynamoDB 台账 (KMS)
编排 / 模拟 Step Functions Distributed Map(1000+ 蒙特卡洛并行)
计算 Lambda 容器镜像
输出 API Gateway + Lambda
安全 KMS CMK · Secrets Manager · 最小权限 IAM · Bedrock Guardrails(条件)
IaC AWS SAM (infra/template.yaml,sam validate --lint 通过)

Scenario Swarm(Distributed Map 并行蒙特卡洛):

PrepareRun → N 个分片 payload → Distributed Map (action=simulate_shard)
  → 各分片写 runs/<run_id>/shards/<i>.json → Aggregate 合并 → twin.json + DynamoDB

每分片独立随机流 seed + shard_index * 1000003;单分片(index 0)与本地 run() 逐字节等价。

部署:

make sam-deploy STACK_NAME=draftcode AWS_REGION=us-east-1 DATA_S3_PREFIX=processed
make upload-data S3_BUCKET=<bucket> DATA_S3_PREFIX=processed
aws stepfunctions start-execution --state-machine-arn <PredictionWorkflowArn> --region us-east-1

技术栈

  • 语言 / 工具:Python 3.11 · uv · Typer / Rich CLI
  • 依赖:核心引擎零第三方依赖(openpyxl 仅在 official / answer 层)
  • LLM:gpt-5.5,通过 OpenAI 兼容网关调用
  • 算法:赔率 de-vig · softmax 温度采样 · 蒙特卡洛 · 匈牙利指派 · 置信度加权融合

仓库结构

展开
src/draftcode/
  official.py     官方数据归一化 + 轴① 背离        odds.py        赔率聚合 Agent (de-vig)
  intel.py        实时情报 Agent                  market.py      专家共识 Agent
  divergence.py   gpt-5.5 两轴背离裁决            preference.py  三信号偏好函数
  simulate.py     蒙特卡洛 Draft Twin (+赔率锚)    warroom.py     30 GM 编排
  answer.py       答题卡 writer                  audit.py       可审计追踪合并器
  llm_client.py   gpt-5.5 客户端                 cli.py         命令行入口
infra/template.yaml         AWS SAM 蓝图
web/draft_room.html         六幕渐进式作战室前端 (自包含单文件, ?demo=1 演示)
scripts/build_frontend.py   前端数据生成器 (twin + audit → 刷新数据块)
design.md · spec.md         前端设计稿 / 技术规格
docs/architecture.{png,svg} 系统架构图
docs/                       架构 / 创新策略 / AWS 计分 / Agent 设计

数据与复现

  • 球员池按官方 107 人参选名单建立。
  • 新闻、专家预测和赔率按各自的数据快照记录。
  • 模拟概率反映当前输入与假设下的选人分布。
  • 模型输出可能随运行变化,复现比赛提交时请使用当次缓存与数据快照。

About

No description, website, or topics provided.

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages