一、多模态1.是否了解多模态对齐方法2.是否了解现在多模态大模型的架构3.说一下常见的大模型的架构比如qwen-vl3.1 qwen-vl的动态分辨率是怎么实现的位置编码是怎么做的3.2 图像的token长度由什么参数来控制3.3 采样编码方式和3有什么不同编辑 文章3.4 qwen3-vl里面的interleaved RoPE介绍一下4.如何判断模型的推理是否真的依赖视觉信息5.原图和扰动图的Token KL散度如何计算6.视觉依赖分数具体怎么定义为什么能反映视觉依赖7.幻觉惩罚来自最终答案还是中间推理过程8.最新的qwen的VLM模型是否知晓其多模态部分能力如何实现有哪些变化对比之前的VLM模型9.CLIP9.1 CLIP原理9.2 文本和图像encoder都是什么9.3 正负样本对怎么区分9.4 编码后图像和文本维度不一致怎么解决9.5 loss函数怎么计算需要能手撕9.6 是否了解其他向量化模型siglip有什么优化10. 图文对齐质量如何评估图文检索排序中跨模态相似度如何计算11. 多模态RAG流程图片怎么切怎么embedding? 怎么检索12. 多模态幻觉模型看图说错是否有遇到过如何缓解13.视频理解抽帧的间隔是多少 时序信息怎么保留14.多模态embedding存储和索引图片向量和文本向量放一起还是分开15.是否了解intern-vl架构16. 多模态模型产生幻觉的主要原因是什么17. 除了重新生成之外还有哪些技术手段可以降低模型幻觉18. 改了一个vit如何多阶段训练 需要用多少数据19. 训练的时候vit、对齐层、LLM部分学习率一般如何设置二、大模型通用知识1.如何评估准确率构造golden set还是使用大模型Judge2.SFT中全参数微调、LoRA和QLoRA的区别3.LoRA更适合在哪些场景使用3.1 LoRA的秩怎么调3.2 LoRA通常加在Transformer的线性层中具体什么位置 游什么不同的作用3.3 一般rank alpha dropout都设置为多少为什么这样设置4.基于线上case反向调优会不会变成持续打补丁5.模型提升是事后验证还是训练前已有预判6.多分类的backbone最后接什么用什么损失函数7.手撕交叉熵和softmax8.adam的计算公式 原理是什么9.大模型中softmax 前为了做 mask会把有些 mask 位置设置为负无穷那请问 softmax 后再把这些位置重置为 0可以吗10.attention相关10.1 为什么要除以根号dk除以dk行不行10.2 讲解mha10.3 为什么最后output还需要做一个矩阵乘法10.4 时间复杂度是多少 空间复杂度是多少10.5 为什么要有softmax为什么不用Sigmoid来计算概率或者注意力全重11.RoPE11.1 了解rope吗Rope的原理是什么为什么要使用rope RoPE具体是怎么计算的能否举一个具体的例子ROPE对频率游什么要求不同维度上的频率是怎么设置的11.2 2d rope是什么和1d rope的区别是什么12. model train和model eval的区别。 dropout在训练和测试时的选择。 梯度经过frozen 层时是否保留如果不想保留梯度只要反向的数值怎么设置model.train () 和 model.eval () 的区别PyTorch本质只是切换某些层的行为模式不改变权重不控制梯度是否计算model.train()训练模式Dropout 层启用随机把一部分神经元置 0防止过拟合BatchNorm 用当前 batch 的均值、方差做归一化同时更新 running_mean /running_var梯度默认可计算取决于requires_grad不是 train 模式控制model.eval()评估 / 推理模式Dropout 层关闭所有神经元都参与前向不随机丢弃BatchNorm 使用训练阶段保存好的全局 running_mean /running_var不再更新统计量不会关闭 autogradeval 不代表自动禁用梯度评估省显存 / 提速要手动加with torch.no_grad()一句话总结train/eval控制 Dropout、BN 这类有状态层的计算逻辑梯度开关由 tensor.requires_grad 和 torch.no_grad () 控制。2. dropout 在训练和测试时的选择训练model.train ()开启 dropout随机 mask 一部分神经元输出强迫网络不依赖少数节点降低过拟合。注意pytorch dropout 默认是rescale 模式训练时对保留的神经元输出乘上 \(\frac{1}{1-p}\)这样测试时直接关掉 dropout输出量级不用手动缩放。测试 / 推理model.eval ()关闭 dropout全部神经元参与计算保证结果稳定、确定性不能随机丢弃。坑点不要自己在 eval 阶段手动加 dropouteval 模式下 Dropout 层内部会直接 return 原输入。3. frozen 层梯度梯度经过 frozen 层时是否保留只想拿到反向数值不保留梯度怎么设置① frozen 层是什么param.requires_grad False前向正常计算反向传播时不会计算该层参数自身的梯度param.grad 不会更新✅但是流经这个 frozen 层的输入梯度依然会继续向前回传举例子A (requires_gradTrue) → FrozenB (requires_gradFalse) → C (loss) loss.backward ()B 的权重没有 gradA 的梯度正常计算因为梯度流过 B 的输入。 frozen 只是冻结参数的梯度不阻断数据流上的梯度传递。② 如果不想保留计算图、只想要反向梯度数值节省显存不保存计算图分两种场景面试常考区分torch.no_grad()前向过程就不构建计算图不能执行 backward适合纯推理不能用来求梯度。torch.backends.cudnn.enabled不是这个场景正确方案retain_graphFalse默认就是 False如果你只需要跑一次 backward 拿到梯度之后不需要再次反向loss.backward(retain_graphFalse)backward 完成后自动销毁计算图释放显存只保留参数的 grad 数值不能再次.backward ()。13. 如何判断一个 Bad Case 是数据问题、模型能力问题还是生成策略问题14. 继续增加 SFT 数据带来的收益越来越小时你会怎么考虑下一阶段的优化方向15. 什么情况下你会认为仅靠 SFT 已经比较难继续提升需要引入强化学习16. 如果模型能够按照要求输出但是出现了灾难性遗忘你会怎么处理17. BF16和FP16的区别是什么 什么适合该用哪个呢18. 为什么要先调Prompt然后sft然后grpo这样的顺序能否Prompt调完之后直接GRPO或者Prompt之后grpo然后再sft19. SFT和GRPO分别解决啦哪些问题20. FSDP和DDP区别对哪些作分片 Megatron以及并行策略21. KVcache的空间复杂度是多少22.如何估算一个7B模型在batch1 seq_len2048下的显存占用 另外要再看一下对于生图类大模型dit架构的时候显存占用怎么算(不止单独看模型和训练占用还要考虑中间隐藏层和batch或者叫seq_len的情况)三、agent相关(暂时不太涉及很多agent所以这里面经总结也很简单)1.Skillsmcp和rag的区别2.llm实现function call的底层原理四、HR面1.主要研究方向是做什么的是刚读研就开始做了吗还是火了开始做的2.大模型火了之后还有coding练习吗3.实习/工作的难点和解决方案4.未来想做点什么5.其他面试和offer进展如何6.offer选择的优先级