一、AIGC 图像生成1.mmdit架构中如何控制多模态融合 MMDit的优势2.vae的训练原理我理解主要答最大化证据下界的过程中可以做到同时优化重构损失和KL散度。具体的可以去看vae的几个总结博客3.FLux1 Kontext与Flux1 FIll模型架构以及区别Flux-Kontext的位置编码和Flux-Fill的区别在时间维度上有什么区别空间维度上有没有区别4.FLux Fill的模型结构输入维度具体的shape怎么拼接的为什么要先双流后单流5.SD的cfg和FLux中有什么区别D 的 CFG 是推理时双分支差值引导为 SDE 扩散设计支持负面提示Flux 的 guidance 不是原版 CFG是训练内置的流模型蒸馏引导单前向、无 uncond 分支适合 ODE 修正流取值范围小不能照搬 SD 的 CFG 调参习惯。6.蒸馏如何进行蒸馏后的模型如何进行后训练7.扩散模型如何进行语义注入为什么这样做未来发展趋势语义注入就是在扩散每一步去噪中把语言 / 布局 / 参考等语义信息编码通过 AdaLN、交叉注意力、Token 拼接等方式调制图像潜特征约束采样分布核心目的打通语言语义空间与视觉潜空间实现可控生成。未来会走向时序感知、LLM 增强、双流深度融合、早期语义对齐解决组合生成与空间绑定的老问题。8.VQ-VAE的损失函数、训练过程9.VQ-VAE中的codebook中的code有的被使用的概率很低这个是怎么解决的实际上叫码本坍塌可以网上搜一下可以调整承诺损失的权重用kmeans聚类初始化码本记录困惑度及时停止10.flux中两个文本编码器(clip和T5)的作用怎么注入到输入过程的11.为什么使用Lora微调为什么不用Controlnet我们当前目标是学习特定角色 / 画风 / 物体的语义特征不是做空间结构约束所以选 LoRA不用 ControlNet。 也可以理解成当前模型的分布跟我们的分布存在不一致所以需要微调一下。12.Diffusion预测x0和预测噪声有什么区别可以去看之前总结的博客Diffusion预测噪声和直接预测生图-CSDN博客13.如果路径复杂度取决于源分布和目标分布的差异这两个分布之间的差异该怎么衡量感觉这个问题不太清晰如果硬要衡量两个分布的差异的话可以通过 KL散度等方式来衡量14.为什么文本控制图像生成的这种 cross attention是图像做 Q文本做 KV? 可以反过来吗可以反过来文本 Q图像 KV但不是文生图的主 cross attn反过来一般用在图生文 / CLIP 文本编码器侧文生图选择图像 Q、文本 KV 是任务目标决定的。一、为什么文生图是图像做 Q文本做 KV先回忆 cross-attention 的直观含义Query我当前 token要去查询什么信息Key/Value可供被查询的知识库文生图的目标每一块图像区域image token去文本描述里找到对应的语义用文本语义来约束自己生成。图像 token 是 “提问者 Q图像的每一个 patch/token代表画面里一块空间区域。它要问我这块区域应该是什么东西对应文本里哪个词所以图像 token 作为 Q逐个去和文本的 K 计算相似度得到注意力权重图像 patch 和哪个文字词匹配度高就更多取用这个词对应的 V 信息。文本 token 是 “知识库 KV文本描述是全局条件是固定的参考信息。 K 代表文本词的检索标签V 是这个词携带的语义特征。 所有图像 patch 共享同一套文本 KV用文本语义去调制图像特征实现文本控制图像生成。 一句话理解图像每个位置查询文本拿文本的语义来塑造自己这正好就是文生图的需求。、反过来文本 Q图像 KV会发生什么也就是\(Attention(Q_{text}, K_{img}, V_{img})\)Q 是文本 token77 个KV 是图像 patch几百上千分数矩阵 \([N_{text}, N_{img}]\)输出长度等于文本 token 数量输出是文本特征不是图像特征任务含义变成每个文字词去图像里面查询对应的视觉区域。 ✅ 这个结构能用但用途完全变了适合看图说话image caption、VQA、CLIP 文本端检索图像、图到文本的跨模态对齐。 ❌不适合作为文生图主 cross attn 网络需要输出图像序列如果你把 cross attn 反过来输出是文本长度的特征无法直接接图像 UNet/DiT还要额外映射违背网络设计目标。三、补充不是硬性数学限制是任务流选择数学上 cross attention Q/KV 可以任意搭配没有语法禁止。限制来自你想要输出哪一种模态序列想要输出图像特征序列 → Q 必须是图像 token想要输出文本特征序列 → Q 必须是文本 token15.手撕flow matching# 极简版白板手撕 class VNet(nn.Module): def __init__(self, dim): super().__init__() self.mlp nn.Sequential(nn.Linear(dim1,128),nn.SiLU(),nn.Linear(128,dim)) def forward(self, x,t): return self.mlp(torch.cat([x,t],-1)) def train_step(model, x1): x0 torch.randn_like(x1) t torch.rand((x1.shape[0],1)) xt (1-t)*x1 t*x0 v_pred model(xt,t) loss ((v_pred - (x1-x0))**2).mean() return loss torch.no_grad() def sample(model, B,D,steps10): x torch.randn(B,D) ts torch.linspace(0,1,steps) for i in range(steps-1): dt ts[i1]-ts[i] v model(x, torch.full((B,1), ts[i])) x v*dt return x16.了解LLM Judge吗如何证明LLM Judge的评估是有效的如何排除其固有bias或随机性如何没有明确的评分rubric和经过验证的benchmark仅仅增加大模型评分是否真的能说明评测结果准确17.DiT中的位置编码是怎么做的DiT中时间步如何嵌入模型能否具体解释AdaLN如何使用时间步embedding调节网络特征18.为什么要做latant diffusion?为什么不直接在像素空间做diffusion? 在潜空间生成相比像素空间有哪些优势19. 有没有可能这次评估和下次评估结果 差距比较大20. 为什么要做dpo dpo效果如何21.为什么不直接跳过dpo sft之后直接grpo冷启动训练22. ddpm和传统的判别式模型有什么区别判别式模型学的是「映射函数」DDPM 是生成模型学的是「数据分布」靠逐步去噪采样生成新样本1. 目标不一样✅ 传统判别式模型分类、检测、语义分割输入原始图像 x直接预测标签 / 属性 y学习 \(P(y|x)\)任务理解图像输出语义标签训练目标最小化预测和真值标签的误差交叉熵、MSE 等输出类别概率、bbox、分割 mask不会生成全新图片✅ DDPMDenoising Diffusion Probabilistic Model扩散生成模型学习原始数据的分布 \(P(x)\)不依赖标签也能生成图像条件 DDPM 才会用到标签训练目标预测噪声在加噪图上还原高斯噪声采样阶段从纯随机高斯噪声一步步反向去噪生成全新图像输出完整图像样本23. flux和qwen2511架构24. qwen image edit和FLux结构的异同25. pred的noise groud truth是如何得到的极简伪代码# z0: VAE编码后的干净latent t random.randint(0, T) eps_gt torch.randn_like(z0) # 这就是noise ground truth alpha_bar alpha_bars[t] zt sqrt(alpha_bar) * z0 sqrt(1 - alpha_bar) * eps_gt eps_pred unet(zt, t, text_emb) loss mse(eps_pred, eps_gt)26. DiT使用的是BN还是LN为什么 BN在训练和推理时有什么区别DiTDiffusion Transformer全部用 LayerNormLN没有 BatchNormBN包括 AdaLN-Zero 本质也是 LN 的变体。为什么 DiT 选 LN 而不是 BNTransformer 原生偏好 LN原始 ViT、GPT 系列都是 LN。LN 对单个样本做归一化对一个样本内部所有 token 的特征做均值方差归一化不依赖 batch 内其他样本。 Diffusion 训练时 batch 里样本是独立噪声图像没有理由用 batch 统计量而且生成推理时 batch 可以很小甚至batch_size1。BN 强依赖 batch 统计BN 是对同一批次同一个通道维度求均值 / 方差。训练时如果 batch 很小batch 统计量噪声极大训练不稳定推理单图生成bs1时batch 维度失效效果会崩。 DiT 做图像生成推理经常单图采样BN 天生不适合。条件注入适配AdaLN-ZeroDiT 的 AdaLN-Zero LN 用时间步 / 类别条件去预测 LN 的scale, shift还额外输出 zero-init 的缩放系数。 把扩散模型的时间条件、类别条件直接融合进归一化层这个范式只能基于 LN 实现BN 很难做这种逐样本动态 affine。BN 在训练 vs 推理的区别训练阶段的均值方差时从当前这个batch的数据实时计算的同时维护全局滑动均值 / 方差running mean/var用动量缓慢更新保存全局统计量。而推理阶段的不用当前batch的均值方差而是加载包存好的running mean/var二、AIGC 视频生成1.wan模型相关1.1 首尾帧信息如何注入网络在不同的去噪step中也会持续替换首位帧吗还是只在初始化时替换1.2 Wan2.1的VAE是什么结构1.3 这个VAE在W、H、T三个维度上分别怎么压缩1.4 时间维做四倍压缩也就是四帧压成一个latent首尾帧只有一帧应该如何处理更准确的说单独一帧给定的条件帧是怎么编码成latent的1.5 输入条件如何注入模型1.6 CLIP image embedding和谁做cross-attention1.7 CLIP是最终pooled embedding还是中间token sequence1.8 cross-attention是只有第一层注入还是每层都注入1.9 文本条件和图像条件是不是decoupled cross-attention1.10 DiT是对每一帧单独做扩散还是对整个视频级扩散VAE是帧级解码还是视频级解码1.11 DiT的输出是什么 去噪多少步1.12 wan2.2和wan2.1在模型架构上有什么区别讲一下wan2.2的moe1.13 如何训练VAE? 如果给你一个VAE模型config文件里面的miu和sigma缺失了应该怎么办1.14 首尾帧视频生成模型具体是什么结构1.15 模型的attention在时间维度上是怎么做的2.了解视频蒸馏吗3.现在的视频生成模型框架如何去做长视频的生成 这种框架是如何支持不同长度的视频序列的生成的有一种讲解思路可以分vae和dit两个角度解答3d时空vae类似于帧级解码本身可以支持无限长视频decodingdit是一次diffusion生成过长视频有显存等开销压力生成长视频可以考虑做rolling diffusion4.如果想要生成更长的视频或者视频首尾帧差异比较大的场景用现在的视频基座模型游什么比较好的解决中间帧偏移误差累积这种问题好像有一个思路是请吟唱xx-forcing?5.三、RL1.DPO、PPO、GRPO的核心区别和适用场景是什么SFT、PPO、GRPO、DPO的Loss2.选择PPO、GRPO等后训练算法时需要考虑哪些训练成本和任务特征。3.为什么选择GRPO而不是PPOGRPO相对PPO的性能怎么样为什么现在大家都用GRPO了4.RL训练时熵坍缩怎么办5.GRPO的token credit assignment比PPO更好吗6.在sft基础上进行了dpo后得到的模型的推理效果反而不如只进行sft微调之后的模型猜想最大的可能就是因为原来的训练集在sft的基础上效果已经非常好能挖掘到的错误样本就非常少所以大部分的错误都需要构造可是构造的rejected和真实出现的rejected的场景相不相似以及是否是一个“有用”的rejected和chosen区别“大不大”都很难有一个量化的标准去判断。有一种讲解试试DPO的改进算法检查 rejected 分布看看是否有squeeze effect检查 chosen vs SFT 输出质量用 LLM-as-judge 或人工评估看 chosen 是否真的比 SFT 模型的 native 输出更好。看 chosen/rejected reward 的变化趋势训练过程中如果 chosen 和 rejected 的 reward 同时下降但 margin 在增大说明模型在作弊——通过同时压低两边来减小 loss而不是真正提升 chosen 质量。7.接着dpo训练时发现 chosen和reject的reward 同时上升或者同时下降margin没拉开会怎么处理有人只回答出可能是数据问题要清洗数据后面面试官解答说当时他们通过增加一个sft loss项训练解决8.什么时候应该使用SFT、在线蒸馏(OPD)和GRPO?9.SFT和OPD的适用场景有什么区别10.OPD能否代替SFT RL的完整训练流程11.如果Student是8BTeacher是更强的API模型是否尝试过OPD?12. GRPO:12.1 GRPO的奖励机制并可以用Pytorch写一个简化版的12.2 GRPO的伪代码 然后再用Pytorch写一个简化版的GRPO Loss12.3 GRPO的组内优势怎么计算12.4 怎么把组内优势广播到每个token12.5 Token-Level Loss如何构造 另外在图像生成上没有Token-Level Loss的话有什么相应的loss吗12.6Importance Sampling Ratio怎么计算12.7 GRPO这个方法自身有什么缺陷训练的时候是否有发现过又有哪些变体解决了相应问题12.8 GRPO奖励设计12.9 SFT和GRPO在处理分类问题的时候的区别在处理分类问题时GRPO的优势在哪里12.10 什么任务适合DPO什么任务适合GRPO12.11 对于小样本问题为什么用grpo可以把准确率提高这么多12.12 PPO和GRPO分别属于On-Policy还是Off-Policy为什么12.13 GRPO采样时怎么做的 相对优势怎么理解12.14 grpo不同模型架构上训练的差异(dense和moe)12.15 为什么grpo中要显式加入KL散度13.DPO13.1 在sft基础上进行了dpo后得到的模型的推理效果反而不如只进行sft微调之后的模型见问题613.2 DPO公式是什么13.3 从公式侧解释为什么能够让模型通过chosen和reject作优化13.4 DPO中的β有什么用13.5 是否了解KTO13.6 DPO的优缺点是什么13.7 off-policy一定比on-policy差吗13.8 chosen和reject分别如何生成由哪个模型生成新模型偏离原模型太多怎么办13.9 SFT和DPO数据是否有重叠 DPO的偏好数据一般如何构造 人工标注成本大概多少14. PPO14.1 在PPO中为什么clip之后仍然需要min操作 clip和min的作用是什么14.2 ppo的value model怎么做的 和actor model输出区别15. 在什么情况下应该优先考虑在线蒸馏而不是强化学习16. RL训练稳定吗训飞过没有17. OPD和传统的知识蒸馏方法有什么区别优缺点是什么你认为什么时候使用呢 OPD训练怎么调的参18. 介绍GSPO和DAPO19. 如果SFT的指标仍然在缓慢上涨怎么判断应该继续补充数据还是转向RL20.SFT和RL分别更适合解决什么类型的问题21.