RIB · English Edition

训练mempool

RIB(中文) · RIB简单设计 · 共识

好,聚焦 L1(Shard 局部 Finality)。你要训练的是:“什么时候把某笔交易/某段因果前沿提升到 L1,以及如何让 L1 更快、更稳、更便宜”。下面给你一个可落地的数据量与训练设计。

1) L1 训练目标到底是什么

L1 的核心是两件事:

  1. 确认概率/确认时间预测
    • p(L1 within X seconds | context)
    • E[T_L1](多久进 L1)
  2. L1 调度策略(Orchestrator)
    • 哪些 tx 先处理/先打包
    • 是否触发 shard commit
    • 是否走私有 relay / 直连 builder
    • 冲突集里押哪条(RBF/双花/替换)

注意:这些都是策略层;L1 是否成立仍由 shard 内确定规则裁决。

2) 你需要多少数据:给你明确门槛

最小可用(MVP:明显好于 fee-only 规则)

稳定可用(Production:能给支付 SLA)

经验上:若你有完整 mempool+网络特征,达到“不错”的 L1 模型,通常 200–500 万笔就能很能打。

3) 但更关键:你要的不是“交易数”,而是“正负样本与长尾覆盖”

L1 里你真正难学的是尾部问题:

这些通常占比不大。为了学得好,你需要:

4) L1 数据怎么收集:最小字段集(必须有)

如果你只收链上确认信息,模型会很弱。L1 必须带 mempool 视角。

Tx 级特征(必须)

Mempool 状态(强烈建议)

网络/传播(建议)

标签(必须)

5) 模型形态:先用哪个最划算

阶段 1(最划算):监督学习 + 校准

上线收益:排序更稳、触发时机更准。

阶段 2(更强):序列模型(Transformer 思想)

输入不是单笔 tx,而是:

6) 你如何定义“不错”(验收指标,给你可量化)

对 L1 来说,最重要的验收不是 AUC,而是体验指标:

7) 一个现实的“数据计划”(你可以照着执行)

如果你现在从零开始,我建议:

  1. 先攒 30 天数据(自然覆盖多种拥堵状态)
  2. 目标达到:
    • 交易:200–500 万
    • 失败/替换样本:≥10 万
  3. 同时做一轮压测/故障注入,补齐长尾

这样训练出来的 L1 模型,通常就能达到“不错”的工程效果。

如果你愿意,我可以下一步把 L1 的“训练与上线”写成一份简洁 spec: