CoolFace
Datasetpublic

xfalcon9/Feng-Chat

简体中文 | English Feng-Chat “解答世间万物” Feng-Chat 是一批中文 conversational SFT 数据。单轮问答好做,多轮里的追问、接话、拐弯和突然补一句,才是这批数据真正想留下来的东西。QA 抽取后依次做去重、assistant-only PPL、message-level Guard 和主题分类,最后发布为标准 messages。 整个 pipeline 只负责筛选,不改写峰哥的表达。公开 release 仅保留训练和分析需要的字段,不包含内部 prompt、reasoning、raw response、本地路径或原始来源 ID。 数据概览 指标 最终结果 发布记录 33,468 QA 轮次 40,645 多轮记录 3,952(11.81%) 单条最多轮次 30 伪名化来源分组 729 内容日期范围 2022-01-02 ~ 2026-08-20 assistant loss tokens 4,806,476… See the full description on the dataset page: https://huggingface.co/datasets/xfalcon9/Feng-Chat.

sourceHugging Faceupdated 22d agoView on Hugging Face
2likes249downloads
Dataset Card

简体中文 | English

Feng-Chat

“解答世间万物”

Feng-Chat 是一批中文 conversational SFT 数据。单轮问答好做,多轮里的追问、接话、拐弯和突然补一句,才是这批数据真正想留下来的东西。QA 抽取后依次做去重、assistant-only PPL、message-level Guard 和主题分类,最后发布为标准 messages

整个 pipeline 只负责筛选,不改写峰哥的表达。公开 release 仅保留训练和分析需要的字段,不包含内部 prompt、reasoning、raw response、本地路径或原始来源 ID。

数据概览

指标最终结果
发布记录33,468
QA 轮次40,645
多轮记录3,952(11.81%)
单条最多轮次30
伪名化来源分组729
内容日期范围2022-01-02 ~ 2026-08-20
assistant loss tokens4,806,476
assistant tokens / record中位数 114,p90 299,p99 551,最大 1,957
Guard 结果发布记录与 40,645 个 assistant turns 均为 Safe
主题分类33,468 / 33,468,覆盖率 100%

数据只有 train split。自行划分训练集和评测集时,请按 source_group_id 分组,避免同一来源的相近内容同时进入两边。

处理流程

[image]

44,757 条 PPL-kept records 进入 Guard,最终发布 33,468 条,release rate 为 74.78%。其余 11,289 条未进入公开 split,但不能全部视为 Unsafe

QA 抽取统计:23,671 条 filtered、150 条 incomplete、56 条 failed。741 个输入流中没有 failed stream 或 gap record。这些记录不进入训练数据。

数据结构

每条 Parquet record 包含:

字段类型含义
idstring由规范化 messages 生成的稳定 UUIDv5
source_group_idstringrelease 内匿名分组编号,如 source_000001。只表示样本是否同组,不包含原始 ID、URL 或路径;用于 grouped split
source_datestringYYYY-MM-DD,用于时间分析和可复现切分
messageslist<{role, content}>严格按 user, assistant, ... 交替,以 assistant 结束
num_turnsint16QA 轮次数,等于 len(messages) / 2
assistant_token_countint32参与 PPL 计算的 assistant token 数;数值取决于 scorer tokenizer
ppl_tokenfloat64只在 assistant tokens 上计算的 token-weighted PPL,用于筛选和分析
assistant_refusal_countint16被 Guard 标为 refusal 的 assistant 轮次数;不是风险分数
primary_topicstringQwen3.5-9B 生成的主主题
secondary_topicslist<string>Qwen3.5-9B 生成的相关主题,最多两个
topic_confidencestringhigh / medium / low;不是校准后的概率

字段选择

  • ppl_token 用于本次 release 过滤,也可用于长度和 data selection 分析,因此保留。
  • Qwen3Guard 输出 Safe / Controversial / Unsafe 类别,不是连续分数。公开数据全部为 Safe,因此不保留常量列;模型和 scope 见“指标定义”。
  • assistant_refusal_count 不是常量:3,526 条记录包含 refusal,共 3,682 个 refusal turns,因此保留。
  • IFD 仅用于分析,没有参与最终过滤。人工抽查发现 IFD_token <= 1 会移除部分完整回答,因此不作为公开字段。
  • PPL 分段明细、ppl_sample、Guard raw output、内部 prompt、reasoning、raw response、本地路径、原始来源标识与处理索引全部不公开。

数据分析

下面分别展示主题、token、PPL / IFD 和长度效应。

1. 主题分布

[image]

33,468 条 final records 中,互联网平台、主播与网络文化 占 23.70%,情感、人际、家庭与心理 占 13.85%,日常生活与个人经历 占 12.66%;Top 3 合计 50.21%。21 个主主题均有覆盖,98.24% 的分类为 high confidence,6.87% 的记录带次主题。

主播与网络文化相关内容占比最高。

2. Token 分布

[image]

Guard 后 33,468 条记录共有 4,806,476 个 assistant loss tokens。中位数 114,p90 / p95 / p99 分别为 299 / 375 / 551,最大值 1,957。最长的 10% 记录包含 28.60% token,最长 5% 包含 17.04%。

3. PPL 与 IFD

[image]

这张图使用去重后的 45,671 条候选数据,只对 assistant loss tokens 计算。尾部为显示效果做 winsorization,过滤仍使用未裁剪的 token-based 分数。IFD 仅用于分析,不参与最终过滤。

4. 长度效应

[image]

在同一批 45,671 条 pre-Guard 数据上,PPL 与 IFD 都随 assistant token 长度呈现明显变化。这里仅报告相关关系。按单一分数过滤也会改变长度分布。

数据对比

三个项目的处理目标不同,下面只比较公开 schema、数据规模和是否保留多轮表达。

Dataset公开形式Feng-Chat 的区别
`xieyongfeng/fengge_chat`640 条,instruction/input/output 单轮格式33,468 条 messages,其中 3,952 条为多轮记录
`hzb29/Zhoulifeng-Streaming-Dataset`Card 报告约 3 万条 SFT 数据;采用 LLM 重写和意图规范化,并提供 CoT 子集不统一改写为标准 instruction,尽量保留原始用词、转折、追问和接话节奏
Feng-Chat33,468 条 / 40,645 轮,多轮 messages,附 PPL 和主题字段重点还原峰哥原本的语气和互动方式;PPL 与 Guard 只负责筛选

指标定义

PPL 与 IFD 均只在 assistant 内容及其结束 token 上计算 loss;user 内容和 assistant role prefix 不计 loss。长样本分段后,每个 assistant loss token 只计一次。

  • PPL scorer:Qwen/Qwen3-4B-Base
  • PPL filter:token aggregation,区间 [23.81926792, 1361.631086],即去重分布的 p01–p99。
  • IFD:conditional assistant NLL / direct-answer assistant NLL;仅用于内部分析。
  • Guard:Qwen/Qwen3Guard-Gen-4B,scope 为 assistant_response with conversation prefix
  • Topic:Qwen3.5-9B

Guard 会读取当前回答之前的对话,但判定对象是 assistant response。该结果不代表 user message 不含 PII,也不代表数据绝对安全。

使用方法

python
from datasets import load_dataset

dataset = load_dataset("xfalcon9/Feng-Chat", split="train")

sample = dataset[0]
for message in sample["messages"]:
    print(message["role"], message["content"])

使用范围

适合:

  • 峰哥原始语气、用词与多轮互动节奏的 SFT / style modeling;
  • 中文口语化 conversational SFT;
  • PPL、长度、主题与 refusal-aware data selection;
  • 不同参数规模模型的同数据版本对照实验。

不适合:

  • 当事实百科、权威引文或医疗/法律/投资建议库;
  • 冒充真实人物,或宣称模型输出代表本人当前观点;
  • 不做额外安全评估就直接面向公众部署;
  • 用 record-level random split 做容易来源泄漏的评测。

使用声明

本数据集仅用于学术研究、AI 数据处理、模型训练与评测。项目与峰哥本人无任何官方关联;数据中的观点不代表本人当前观点,也不代表项目维护者立场。数据和模型输出不得冒充本人发言、作为真实引文或用于违法及侵害他人权益的活动。

数据按“现状”提供,不保证准确性、完整性、安全性或适用于任何特定目的。使用者应自行遵守适用法律、平台规则及第三方权利,并独立承担因使用、训练、发布或部署产生的全部责任;在适用法律允许的最大范围内,项目维护者不对由此产生的任何直接或间接损失、争议或责任负责。

如相关权利人认为内容不应收录,请通过本仓库 Community 联系并提供具体 record id;核实后将及时更正或删除。

发布文件

Release 包含:

  • data/train-*.parquet
  • 本 Dataset Card 的中英版本、流程图与四张统计图。

Citation

bibtex
@misc{fengchat2026,
  title        = {Feng-Chat: Chinese Multi-turn Conversations in Feng-ge's Original Voice},
  author       = {xfalcon9},
  year         = {2026},
  howpublished = {Hugging Face dataset},
  url          = {https://huggingface.co/datasets/xfalcon9/Feng-Chat}
}

Feng-Chat 想学的是峰哥怎么说,不负责证明峰哥永远说得对。语气可以 train,世间万物标准答案目前还没有公开 checkpoint。