Align official GLM-5.2 configuration semantics - #4802
Conversation
|
Thanks for your contribution! |
risemeup1111
left a comment
There was a problem hiding this comment.
已复查,当前还有一个需要先修复的配置兼容问题,细节见 inline review comment。
| self.rope_interleave = rope_interleave | ||
| self.rotary_interleaved = ( | ||
| False if rotary_interleaved is None else rotary_interleaved | ||
| ) |
There was a problem hiding this comment.
优先级:P1
这里把 GLM-5.2 的 interleave 语义收进了 rotary_interleaved,但官方 config.json 序列化的是 indexer_rope_interleave。按现在的实现,这个值会一直留在一个这里读不到的额外字段里,self.rotary_interleaved 仍然是默认值,后续如果有代码依赖这个新字段就会读错。
处理要求:请针对该评论修复并提交新的 commit。
| self.rope_interleave = rope_interleave | |
| self.rotary_interleaved = ( | |
| False if rotary_interleaved is None else rotary_interleaved | |
| ) | |
| self.indexer_rope_interleave = kwargs.get("indexer_rope_interleave", rotary_interleaved) | |
| self.rotary_interleaved = ( | |
| False if self.indexer_rope_interleave is None else self.indexer_rope_interleave | |
| ) |
PaddleFormers Log Analysis
日志分析报告
失败的测试 case: 根本原因分析: 本 PR(glm52-bit-exact-alignment,PR #4802)新增/修改了 修复建议:
🔄 每次 Re-run 后自动更新 |
PR types
Function optimization
PR changes
Models
Description
范围
仅 PaddleFormers,6 个文件,head
696c6089:expert_tensor_model_parallel_size传递到 PaddleFleet provider,并补上定向回归覆盖本描述对应 PR head
14e8e542(内容 commit696c6089+ 合并 upstreamdevelopb7dd7983,无冲突)。工作区当前 HEAD 是
1854f1c2 style: apply GLM lint formatting,worktree 处于 dirty(存在并发写者,dirty diff 摘要会变化,故此处不引用具体摘要)。不在本 PR 内的:该本地 commit 与2f5cfa03 glm: map expert tensor parallel size、5d4c431d glm-map-official-RoPE-semantics,以及cli/train/sft/workflow.py(结果写出与 stage-1 边界采集修复)、cli/launcher.py、datasets/*、trainer/*中尚未提交的改动。证据
Profile:
minimum_complete/optimizer/ cuda / bfloat16 / TP2 PP2 EP1 ETP1 SP=true world4。results/paddle/env.json记录weights_loaded=true、revisionb4734de4facf877f85769a911abafc5283eab3d9、model_config_sha256 185f93ee…d859a11.811029434204102——experiments/e053-moe-determinism/runs/paddle_det/repeat-{1,2,3}/raw_loss.jsonlresults/paddle/loss.json,含 100 项未四舍五入的losses[];bench loss checker:length_match=true、enough_steps=true、consistent_steps=0、max_diff=1.5865087509155273、bit_exact_required_steps=false——experiments/e055-acceptance-oracle-20260819/checker_run_receipt.jsonhash_match=false,torch 187 vs paddle 182 个 tensorself_attn.core_attention.indexer.*的嵌套层级、layers.N.transformer_layer.*包装前缀、融合的up_gate_proj),只有 5 处是结构性缺失(MTP indexer tensor)——outputs/surveys/glm_52-structure-parity.json、results/paddle/checkpoint/model.safetensors.index.json原描述中「forward loss 12.416634559631348」已撤回:当前没有任何 canonical receipt 能复现。当前跨框架 step-1 一对是
11.821396827697754(torch)与11.811029434204102(paddle)。Gate 状态
本 PR 不推进任何 gate。 全部证据都是
evidenceClass=probe、formalWeight=0:audit_source_freeze.py返回verdict=blocked,在此期间按契约任何 entrypoint receipt 一律 rejected。formal_alignment_steps = 0 / 100。acceptance oracle 的结果 schema 一半两侧已满足,等值一半未满足。被什么阻塞
contract_environment.source-freeze-head-vs-pin—— 解除判据:audit_source_freeze.py返回verdict=passcontract_environment.manifest-missing-format-key—— provenance checker 以UnsupportedRunSchemaError中止,根本无法执行acceptance_oracle.results-schema-and-provenance——dischargeStatus=discharging:schema 已完成,等值未完成contract_environment.mtp-indexer-tensor-inventory—— 182 vs 187 个 tensor未验证
consistent_steps=0/100)results/*/loss.json早于该改动Draft。本 PR 不声称 loss 对齐、checkpoint 对齐或完成。