ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

BEV 150K Decision Mix是怎么造出来的?4个独立批次与GPT-6 Luna重写过程全解析

BEV 150K Decision Mix是怎么造出来的?4个独立批次与GPT-6 Luna重写过程全解析

【免费下载链接】bev-decision-150K

项目地址:https://ai.gitcode.com/hf_mirrors/avbiswas/bev-decision-150K
点击查看免费下载

BEV 150K Decision Mix(仓库名bev-decision-150K)是一个由 4 个独立构建批次合并而成的15 万行英文有界决策数据集,共包含 296,582 个决策问题,覆盖情感分类、工具路由、金融报表等 17 个领域。其中 20,000 行切片由GPT-6 Luna完成了问题重写与源引文选取,所有标签均保留原始来源支撑。这篇文章带你拆解它的批次构成、三种决策格式和重写过程,帮你在动手使用前先搞清楚这份数据的来历。

🧩 三种决策格式:CHOICE、NOUL、SCORE

BEV 150K 的设计目标是训练"做有界决策"的模型:给定输入状态,模型只需选一个选项、判断一个命题、或打一个有序分数,而不是生成大段自由文本。

每一行数据包含state(输入状态)和questions_json(决策问题集合)两个核心字段,问题分为三种类型:

类型任务目标问题数占比
CHOICE从有界的criteria选项表中选一个 key120,84240.7%
NOUL判断一个 yes/no 命题是否成立118,26539.9%SCORE在有序、带描述的刻度上选一个下标57,47519.4%
总计296,582100%

三者的标注方式各不相同:

  • CHOICE:criteria把稳定的答案 key 映射到选项描述,label就是其中一个 key;
  • NOUL:label是布尔值(true / false);
  • SCORE:criteria是有序锚定等级的列表,label是它的零基下标。

⚠️ 注意:SCORE 的标签是序数目标(ordinal target),既不是校准过的概率,也不是无约束的数值预测。

为什么问题数(296,582)远多于行数(150,000)?因为同一个 state 可以携带多个决策目标,多个问题共享同一条输入状态。

📊 4 个独立批次:50,000 + 19,997 + 50,000 + 30,003

这份混合数据集并非一次性生成,而是由4 个独立构建的批次贡献而成:

批次行数
批次一50,000
批次二19,997
批次三50,000
批次四30,003
合计150,000

大部分标签来自上游标注、记录结果、测试转移、模拟器重放或声明的确定性策略,而非模型凭空生成。

打包时的 169 行调整:一行未增、一行未删

最终发布的切分为:train 125,614 行 / test 24,386 行,且没有验证集(validation split)。

为什么切分数和 4 个批次直接相加有出入?因为打包时有169 行被重新分配:

  • 166 条 Upworthy 行从 test 移到 train;
  • 3 行从 train 移到 test。

移动的唯一目的是:让重复的输入状态和相关的来源组保持在同一侧,避免同一状态在 train / test 两侧"泄漏"。整个过程没有新增或删除任何行,原始的 4 个批次也保持不变。

发布版共包含140,007 个去重后的归一化输入状态;同一个切分内重复出现的状态可以携带不同的决策问题。

✍️ GPT-6 Luna 重写过程:改的是措辞,不是答案

关于数据来源,README 中的 Construction and provenance 章节给出了明确的边界。GPT-6 Luna 的参与分两层:

第一层:20,000 行切片的问题重写

在这 20,000 行中,GPT-6 Luna 做了两件事:

  1. 重写有界决策问题的措辞,让问题表达更自然;
  2. 从现有记录中选取源引文(source quotes),为问题提供文本依据。

关键点:所有有来源支撑的标签都被原样保留——模型只动"问法",不动"答案"。

第二层:更小规模的重写步骤

其他较小的 Luna 步骤包括:

  • 为现有响应选项命名;
  • 生成日期可核验的截止日期类问题(date-checkable deadline questions)。

一条明确的红线:模型没有为本发布撰写任何新的原始来源段落(primary source passages)。

另外需要坦诚的一点:部分上游语料本身就是合成的、模板生成的或模型生成的——所以这不是一个"纯人类撰写 prompt"的集合。

每行数据带有主domain类别,README.md 中的领域表格列出了各上游来源;不过行级来源标识、原始来源下载和生成脚本都不随发布提供。

🌍 17 个领域的覆盖:从情感分析到游戏状态

数据集按"每行一个主领域"统计,实际发布的混合构成如下(节选占比前列的领域):

领域行数占比代表性上游来源
情感、情绪与内容审核25,15616.8%SST-5、GoEmotions、Civil Comments
零售、商品与购物19,88313.3%Online Retail II、Online Shoppers、Recipe Reviews
空间与逻辑推理19,57913.1%SpaRTQA、SpaRP/SpaRTUN、ProofWriter
客服与意图路由12,6568.4%CLINC150、MASSIVE、BANKING77
工具与工作流决策10,2246.8%Taskmaster-1、Glaive Function Calling v2
科学与论文理解9,1336.1%SciCite、SciFact、SciRIFF
金融报表与银行9,0036.0%TAT-QA、UCI Bank Marketing
响应偏好与质量8,6935.8%HelpSteer2、UltraFeedback Binarized
软件工程与代码8,1865.5%SWE-smith-py、MBPP
软件安全7,0004.7%NIST NVD
其余 7 个领域24,16116.0%浏览器交互、标题吸引力排序、阅读理解、合同证据、游戏状态、垃圾短信、感官质量、市政与安全运营

可以看出,数据集的长尾刻意压得比较短:排名靠后的领域(如垃圾短信检测 1,399 行、葡萄酒质量评分 1,300 行)都是"小而精"的补充,保证决策场景足够多样。

📦 文件结构:两个 Parquet 文件与 5 列

整个发布只包含两个数据文件:

  • data/train.parquet —— 125,614 行
  • data/test.parquet —— 24,386 行

每个文件有 5 列:state、questions_json、domain、question_types、question_count,其中 JSON 列存放灵活的 JEV 风格问题对象。

为什么用 Parquet 而不是 JSON?因为异构的嵌套问题对象无法被可靠地推断为单一的 Arrow JSON schema,Parquet 是更稳妥的容器。

加载示例(Hugging Facedatasets):

import json from datasets import load_dataset ds = load_dataset("avbiswas/bev-decision-150K") example = ds["train"][0] state = example["state"] questions = json.loads(example["questions_json"])

⚖️ 使用前的三个注意事项:许可、评测与标签

1)没有"一揽子"许可

这是混合来源发布,Hub 元数据标注为license: unknown,不主张任何统一的宽松许可。再分发或商用前,请逐个核对各领域表格中链接的上游来源及其条款,并对实际用到的每个来源做归属说明。

2)test 切分不是独立基准

test 只是混合体中留出的一部分,而且数据集本身包含多个现有基准家族——如果你要在同样的公开基准上评测,先检查记录与来源家族的重复情况。

3)部分标签的含义比名字更窄

  • 银行"订阅"是观测结果,不是"应该联系该客户"的因果建议;
  • CVSS 基础严重度不是资产专属风险;
  • 游戏分数描述的是即时状态转移,而非长期期望收益;
  • Taskmaster 的服务选择来自标注对话的推导,不是工具执行日志。

此外:部分选择题选项是采样或构造的,答案频率有时被重新平衡过——因此 test 切分和 SCORE 输出都不意味着现实世界校准;部分源判断与 LLM 重写的问题可能存在噪声;自动化的英文过滤也不能保证每条节选都是完美英文。

🚀 快速上手:三步开始使用

  1. 加载数据集:用load_dataset("avbiswas/bev-decision-150K")读取 train / test 两个切分;
  2. 解析问题:json.loads(row["questions_json"])得到问题对象,按CHOICE/NOUL/SCORE类型分别处理标签;
  3. 按领域采样:利用domain与question_types两列做分层抽样,验证模型在决策任务上的表现。

小结

BEV 150K Decision Mix 的构建思路可以概括为一句话:4 个独立批次贡献 150,000 行有界决策数据,标签尽量保留上游来源,GPT-6 Luna 只负责重写问题措辞和选取源引文,不改动答案、不新造来源。如果你需要一个覆盖多领域、格式统一(CHOICE / NOUL / SCORE)、以 Parquet 交付的决策训练混合集,它可以是一个不错的起点——只需留意它的许可边界和"test 非独立基准"这一属性即可。

【免费下载链接】bev-decision-150K

项目地址:https://ai.gitcode.com/hf_mirrors/avbiswas/bev-decision-150K
点击查看免费下载
上一篇:OBS多平台直播终极解决方案:obs-multi-rtmp插件完整指南
下一篇:5分钟快速美化VLC播放器:VeLoCity皮肤终极指南

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进