synthetic-pre1930-sft
收藏资源简介:
该数据集是一个用于监督微调(SFT)的合成数据集,名为“Synthetic Pre-1930 SFT”,包含约450,517条指令/回答对。其核心设计是:每一条助手回答均逐字摘录自1930年以前的公共领域文本,从而从结构上避免回答中出现时代错误(即不包含1930年后的词汇、事实或表达)。问题/指令则由DeepSeek模型根据原文生成,采用符合时代风格的教科书式问句。数据来源为jbduran/think-dataset,该语料库包含扫描并OCR处理的美国公共领域书籍(出版于约1930年前),并附有国会图书馆主题分类和元数据(年份、标题、作者等)。构建过程包括:从语料库中抽取自包含的段落(120-800词),过滤OCR垃圾,分类为不同任务类型,然后由生成模型逐字提取答案并撰写问题。数据集分为10个任务配置(route),每个配置对应独立的子集,开发者可根据需要混合使用:multiturn_qa(147,110行,多轮对话)、knowledge_qa(67,897行,事实问答)、opinion_qa(45,940行,观点问答)、composition_qa(43,689行,按需生成特定文体)、narrative_grounded(41,523行,叙述真实事件)、narrative_fiction(33,836行,讲述故事)、reasoning_qa(25,558行,逐步推理)、how_to_qa(18,202行,解释方法)、verse_qa(17,721行,创作诗歌)、stem_reasoning(9,041行,定量/物理推理)。所有配置均采用JSONL格式,每个分片2000行。单轮问答的样本包含字段:doc_index(溯源索引)、category(内容级主题)、book_category(书籍元数据主题)、year(出版年份)、prose_score(散文质量分数,stem_reasoning使用stem_signal替代)、question(问题)、answer(答案)。多轮对话配置使用conversations字段,包含交替的用户和助手角色消息。该数据集旨在训练一个使用1930年前语言风格、不包含现代知识的语言模型,适用于SFT/指令微调。使用者应注意:问题端由模型生成,可能存在时代错误;原始文本含有OCR噪声;不同配置间可能存在重叠(如knowledge_qa与multiturn_qa共享部分源文本);文本内容反映1930年前作者的偏见和错误,这在时代模型中是有意为之,但消费者需知晓。当前数据集为原始未过滤版本,作者建议在训练前进行质量过滤和时代错误筛选。
This dataset is a synthetic dataset for supervised fine-tuning (SFT), named Synthetic Pre-1930 SFT, containing approximately 450,517 instruction/answer pairs. Its core design is that each assistant response is verbatim extracted from pre-1930 public domain texts, structurally avoiding anachronisms (i.e., no post-1930 vocabulary, facts, or expressions). Questions/instructions are generated by the DeepSeek model based on the original text, using textbook-style questions that match the eras style. The data source is jbduran/think-dataset, a corpus of scanned and OCR-processed American public domain books (published around 1930 or earlier), with Library of Congress subject classifications and metadata (year, title, author, etc.). The construction process includes: extracting self-contained paragraphs (120-800 words) from the corpus, filtering OCR garbage, classifying into different task types, then having a generative model extract answers verbatim and write questions. The dataset is divided into 10 task configurations (routes), each corresponding to an independent subset, which developers can mix as needed: multiturn_qa (147,110 rows, multi-turn dialogue), knowledge_qa (67,897 rows, factual Q&A), opinion_qa (45,940 rows, opinion Q&A), composition_qa (43,689 rows, generating specific text types on demand), narrative_grounded (41,523 rows, narrating real events), narrative_fiction (33,836 rows, telling stories), reasoning_qa (25,558 rows, step-by-step reasoning), how_to_qa (18,202 rows, explaining methods), verse_qa (17,721 rows, composing poetry), stem_reasoning (9,041 rows, quantitative/physical reasoning). All configurations are in JSONL format, each shard containing 2000 rows. Single-turn Q&A samples include fields: doc_index (traceability index), category (content-level topic), book_category (book metadata topic), year (publication year), prose_score (prose quality score, replaced by stem_signal for stem_reasoning), question, answer. Multi-turn dialogue configuration uses the conversations field, containing alternating user and assistant role messages. The dataset is intended to train a language model that uses pre-1930 language style and contains no modern knowledge, suitable for SFT/instruction fine-tuning. Users should note: questions are generated by the model and may contain anachronisms; original texts have OCR noise; there may be overlap between different configurations (e.g., knowledge_qa and multiturn_qa share some source texts); the text content reflects biases and errors of pre-1930 authors, which is intentional for an era-appropriate model, but consumers should be aware. The current dataset is a raw unfiltered version; the authors recommend quality filtering and anachronism screening before training.
数据集概述
Synthetic Pre-1930 SFT 是一个用于监督微调(SFT)的合成数据集,旨在训练语言模型以1930年以前的风格进行对话、推理和写作,避免现代知识或措辞的泄漏。数据集包含 450,517 个指令/回复对,组织为 十个任务子集,每个子集对应不同的训练重点。
核心设计
- 答案来源:每个助手的答案都是逐字引用自1930年以前的公开领域文本(扫描书籍),仅允许对原文进行选择、排序和轻度清理,确保答案在时代性上是安全的——答案中的词句、事实和表达方式不会包含该时期之后的内容。
- 问题生成:问题和指令由模型(DeepSeek
deepseek-chat)以时期学校教材的语域生成,但这一部分是现代措辞可能引入的唯一来源,目前正在开发时代性过滤技术。
数据构建流程
- 采集:从源语料库
jbduran/think-dataset中提取120–800词的完整段落,过滤低质量文本和OCR错误。 - 分类:模型对每个段落进行多标签分类,匹配到适合的任务子集。
- 生成(抽取式):生成模型从段落中逐字抽取答案,并生成对应的时期风格问题;验证答案必须是原文的子字符串,否则丢弃。
任务子集与行数
| 路由 | 行数 | 训练目标 |
|---|---|---|
| multiturn_qa | 147,110 | 多轮对话的连贯性(2–5轮相关交流) |
| knowledge_qa | 67,897 | 事实性知识的直接陈述 |
| opinion_qa | 45,940 | 表达并支撑观点 |
| composition_qa | 43,689 | 按要求生成特定文体(信函、演讲、祷文等) |
| narrative_grounded | 41,523 | 复述真实历史事件 |
| narrative_fiction | 33,836 | 讲述虚构故事(明确区分虚构角色) |
| reasoning_qa | 25,558 | 逐步推理(前提→结论) |
| how_to_qa | 18,202 | 解释操作方法或流程 |
| verse_qa | 17,721 | 创作诗歌 |
| stem_reasoning | 9,041 | 定量/物理推理(数学公式已修复) |
| 总计 | 450,517 | — |
规模与参数
- 总行数:450,517
- 总Token数:约 85M(一次完整遍历,含聊天模板开销;范围约80–95M)
- 每行平均字符数:因路由而异(如multiturn_qa约826字符,stem_reasoning约996字符)
数据结构
- 格式:JSONL分片文件,每个分片2,000行(最后一个分片包含余数)。
- 单轮路由字段:
doc_index,category,book_category,year,prose_score(或stem_signal),question,answer。 - 多轮路由字段:
doc_index,category,year,prose_score,conversations(角色交替的用户/助手消息列表)。 - 来源追溯:
doc_index对应源语料库的原文标识;book_category来自源书元数据;原文段落不包含在数据集中。
使用建议与限制
- 预期用途:用于训练具有前1930年语言风格和世界观的模型,确保回答不包含1930年之后的事实或措辞。
- 日期标注:
year字段保留自机构书籍数据,但可能不准确,存在时代误用风险。 - 使用前过滤:数据集是原始生成分片,问题部分需要额外的时代性/质量过滤。
- OCR噪声:源文本来自扫描,尽管已过滤严重错误,仍可能留有少量噪声。
- 数据重叠:
knowledge_qa和multiturn_qa共享部分来源;如需无重叠集合,需按doc_index去重。 - 时代偏见:文本反映了前1930年作者的假设、偏见和错误,这是时期模型的有意设计,但使用者需注意。
许可
- 源文本:美国公开领域(约1930年前)。
- 元数据许可:
cc-by-4.0,但README标注为占位符,实际许可证应由使用者根据生成的问答结构自定。





