fix(roundtable): rwfx 结构化抽取纯树·单父兜底,根治叙事多对一乱线
rwfx 全链是一棵树:除预期行为↔驱动因素 1:1 外其余皆 1:N,任何节点只有一个父节点、 绝无多对一/多对多/汇聚。但弱模型常把「叙事」连到一片驱动因素 → 汇聚乱线。 - extraction_spec:ChainSpec 加 single_parent 标志(rwfx=True,xdfx 有汇聚=False); helper is_single_parent_chain / chain_level_rank;强化 rwfx ②「叙事只有一个父驱动因素」 + 新增④「全链是树,每个非根节点恰一个 from」 - flow_extract:_collapse_to_single_parent 确定性兜底——纯树业务把每个节点的多父入边 收敛到「紧邻上一层」的单一父节点(只删多余入边、不新增、不动节点),在 final 前执行; 非纯树业务(xdfx)跳过 - dag-types/types:DAG 派活忠实本阶段目标——不擅自加数量上限/精简、不替席位加体例风格、 逐条全部输出、不诱导脱离输入编造(前后台同步) - Tests: tests/test_flow_extract_single_parent.py Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
1 parent
3d75040297
commit
f63a1faf3b
5 files changed
+189
-5
No files matched your search
@@ -392,6 +392,13 @@ export function buildDagStageLeaderTask(args: {
|
||||
lines.push(
|
||||
`【本阶段目标】${goalText}`,
|
||||
"请据此目标为每个席位拆解任务,并要求他们**显式承接上一阶段的产出**来完成本阶段目标。",
|
||||
"⚠️ 派活时**严格忠实于本阶段目标,不要自行新增目标里没有的「数量上限 / 只取最有代表性的 N 组 / 精简归纳成几条」等限制**," +
|
||||
"也不要照搬其它阶段的数量(如上一阶段筛了 3 组,不代表本阶段也只要 3 组);" +
|
||||
"目标没要求筛选 / 限定数量时,就要求席位**按其职责把每一条都完整输出**——" +
|
||||
"若上一阶段有 N 条产出需逐条处理,就让席位**逐条、全部**产出(有多少条就出多少条),绝不替席位归纳 / 合并 / 只取代表性的几条。",
|
||||
"⚠️ 也**不要替席位新增目标 / 席位职责之外的「输出体例 / 风格」要求**(如『写成连贯故事 / 要有场景感 / " +
|
||||
"举具体城市景区为例 / 虚构时间地点情节』等)——派活只需转达本阶段目标 + 上一阶段产物 + 承接关系," +
|
||||
"**让席位严格按它自己的职责设定(SOUL)输出**,且**忠实基于上一阶段的真实产物做分析,不要诱导席位脱离输入去编造 / 虚构事例**。",
|
||||
);
|
||||
}
|
||||
lines.push(
|
||||
|
||||
Reference in new issue
Block a user