字节 AI Infra 剪映面经(实习)
见的我这种菜鸡太多了?layernorm为什么这么实现(我写错了啊啊啊,忘了写scale and shift光normalize了,当时还没反应过来还狡辩了一会,面试官也没再追问就是)?什么时候用自旋锁,什么时候用非自旋锁(频繁加锁的用自旋锁,不然用非自旋锁,因为要比较系统调用和用户态空转的代价)?你中间用了einsum,介绍一下einsum,为什么你要用einsum(方便好用,所有人都应该用ei
一面
介绍自己
介绍一下python decorator
用过@torch.jit.trace @torch.jit.script吗(区别是script保持python控制流trace不保持,原理前者采样后者编译)
如果我需要输出特征图,或者获取一个model中命名规律的几个层e.g. l_1 l_2的输入输出,应该怎么做?(用pytorch hook)
你写过一个rust项目,介绍一下rust里的借用机制吧
对于attention is all you need这篇文章,它讲了什么,有什么贡献
为什么要用layernorm,有什么用
norm有哪几种(我以为说的norm变体,回答的说只知道rmsnorm,结果面试官说的是batch norm和layernorm,不过没有太大影响)
batch norm和layernorm有什么区别,为什么cv用batch norm,nlp用layernorm
什么是attention层,QKV分别是什么,为什么这么计算,为什么要除以根号d,不除可不可以
什么是kv cache,为什么需要kv cache
pd分离中,pd复杂度分别是多少,为什么p是计算密集而d是访存密集
GPU的内存hierarchy是什么
什么是flashattention
flashattention的原理是什么
模型怎么捕捉位置信息的(positional encoding,RoPE)
介绍一下positional encoding,为什么这样做有用
长度外推是什么,怎么实现
项目里基座模型用的什么(qwen),qwen模型相对于基础的模型有什么不同(不知道……过,不过后来查了查不是也就norm换rmsnorm和qknorm,norm换位置这种小改进,别的改进就是数据和thinking了啊……)
(一个微调+agent项目)
你负责了什么
怎么清洗的数据
微调用的什么(lora sft+DPO)
DPO和PPO有什么相似和不同
怎么评估的,评估哪些指标
无幻觉率怎么评估
什么是模型的困惑度
用过bitsandbytes和accelerator(hugging face)吗
什么是量化
了解蒸馏吗(小model学大model,别的一点不知道)
量化具体过程是什么
QAT和PTQ有什么区别,QAT具体过程是什么
Per-Channel,Per-Head量化是什么,为什么这么做
(一个推理引擎玩具项目)
为什么用rust
怎么调度模型的(LRU)
说一下YOLO模型的架构(我不知道😭这个是课设我就放这个模型进去凑数的)
不知道YOLO结构怎么做的(知道要实现什么算子,输入输出,但不知道原理)
了不了解图像生成模型(我就上课学过一点点😭)
diffusion模型是什么原理
了不了解VAE模型(我脑抽了说不知道,后来反应过来VAE很基础啊……我在干嘛)
算法
1easy1hard or 1easy2medium,选后面一个
走楼梯
还能不能优化(用的数组,可以换成变量)
后面是两个pytorch,写出大概代码就行,不用运行测试
询问:
deepseek用了MoE,什么是MoE,结构是什么样的
题目:
用线性层实现简单的MoE
询问:
问如何实现Expert并行,我说不知道,平时没写过啊😭(torch.dist,挺难写的……)
题目:
实现transformer block
询问:
layernorm为什么这么实现(我写错了啊啊啊,忘了写scale and shift光normalize了,当时还没反应过来还狡辩了一会,面试官也没再追问就是)
layernorm分母上为什么加一个小常数
你中间用了einsum,介绍一下einsum,为什么你要用einsum(方便好用,所有人都应该用einsum)
为什么要做residual连接,residual连接解决了什么问题
反问:工作内容
二面
介绍自己
输入网址到看到网页,网络中发生了什么。
HTTP协议是什么
HTTPS协议是什么
HTTPS如何保证安全,HTTPS时序图
HTTPS为什么要使用对称密钥加密通信,为什么不一直使用非对称加密
Java中怎么实现并发同步
Java Synchronized关键字是什么,怎么用
synchronized可以加在哪里
静态方法上的synchronized和成员方法上的有什么区别
编程语言中,常用的有哪些锁(互斥锁分为自旋锁和非自旋锁,还有读写锁)
什么时候用自旋锁,什么时候用非自旋锁(频繁加锁的用自旋锁,不然用非自旋锁,因为要比较系统调用和用户态空转的代价)
还有什么同步方式(go语言channel,信号量)
什么是乐观锁和悲观锁
你在哪个项目中用过锁
关系型数据库中,事务特性是什么
你在哪个项目中用过事务
事务隔离级别有哪些,分别解决什么问题
mvcc是什么,怎么实现,用于哪些隔离级别
间隙锁是什么,可以缓解什么问题
你是怎么用RabbitMQ的
RabbitMQ的Exchange是什么
RabbitMQ怎么保证可靠性
RabbitMQ数据传递过程是什么(没答上来😭,忘了真,我以为继续面算法的)
Docker原理是什么
docker是怎么管理资源的(cgroup啊啊啊😭忘了)
(一个微调+agent项目)
你背景主要是LLM的,介绍一下cross attention,self attention,和multihead attention
你这个项目做了什么,落地了吗
详细说一下做了什么
算法:
合并K个升序链表
有更好的解法吗
知道堆吗,可以用堆优化吗(然后就知道最优解了……)
反问:为什么一面算法二面开发,你们到底做什么的
三面
纯介绍项目
代码:
cuda kernel, MxN矩阵reduce成1xN
没写出来拉了改成说思路了,但还是有点拉了,写的warp reduce版本导致写的太慢要考虑太多了,不用warp reduce早写出来了……
然后聊了一堆有的没的(面试官一看就high rank,头发就看出来)
本来以为完了的,结果晚上来hr面,因为临近国庆所以当晚面了
hr面
一般聊天,问题
1 怎么和同事搞好关系
2 有什么兴趣爱好
3 离你学校远你愿意来吗
4 喜欢什么样的mentor
5 个人缺点
6 不喜欢什么样的人
hr说前两个面试官评价是基础知识很好,但是没有t2i t2v模型经验;那第三位估计面评不是特别好,吧(他没问八股纯压力项目,然后我最后一个CUDA没写出来……),或者他那个地位的也可能不太care?见的我这种菜鸡太多了
后来催进度,一面面试官加了电话面,不过非正式。
加面??大概
问的都是很实践的问题,答得很烂,贴一下技术的:
量化后变慢可能是因为什么(硬件不支持???我这么答的反正,没见过别的情况)
LoRA会对模型推理有什么影响(???太宽了不知道啊,weight会变可能会影响点???)
对于自回归模型,onnx怎么加速?(我没用过onnx啊……可以开kvcache/多次regression融合一个;原来和hugging face transformer一样嘛……)
如果在推理过程中,使用nsys发现有e.g.近billion次的device2device 4 bytes 访存,可能是因为什么(张量不是contiguous。view后只动stride,导致逐个的访存不连续,逐个d2d传递;我没做过真答不上来)
优化推理速度的整体思路是什么?
MoE和Expert Parallel是什么?
Deepseek的MoE和Qwen2的MoE有什么区别?(public expert)
更多推荐



所有评论(0)