AI Infra面试汇总(含回答思路
AI Infra / 数据岗考察:大模型训练 / 推理框架 + 算力调度 + 数据工程 + 性能优化。硬核工程岗。
1、工程 / 部署 / Infra
- vLLM 的核心优化是什么
- 思路:PagedAttention(分页 KV cache) + Continuous batching(动态合批) + 量化 + prefix cache;吞吐比 HF 高数倍。
- 模型量化 / 蒸馏的区别
- 思路:量化: 降精度(FP16→INT8/INT4),结构不变;蒸馏: 教师→学生,结构变了;可叠加。
- 端侧部署的挑战
- 思路:算力/显存/电耗受限;要小模型(SLM 1-7B) + 量化 + 推理引擎(MLC LLM/llama.cpp/ONNX Runtime)。
- 分布式训练的常见策略
- 思路:DDP(数据并行) + Tensor 并行(切矩阵) + Pipeline 并行(切层) + ZeRO(优化器分片);大模型常组合用。
- GPU 显存怎么优化
- 思路:量化 + KV cache 分页 + 梯度检查点 + 混合精度 + ZeRO + offload 到 CPU/NVMe。
- 推理服务的限流和兜底
- 思路:令牌桶限流 + 优先级队列 + 排队 + 降级到小模型/缓存/规则回复。
- 私有化部署的取舍
- 思路:数据安全 vs 维护成本 + 模型迭代速度;金融/政务/医疗强合规必须,中小企用 API 更经济。
- 模型缓存怎么设计
- 思路:输入归一化 hash → 命中直接返回;语义近似可用 embedding 相似度;可降 30-70% 调用成本。
- 推理框架你用过哪些
- 思路:vLLM/TGI/TensorRT-LLM/SGLang/llama.cpp/MLC LLM;按部署场景(云端/边缘)和模型大小选。
- 模型量化(INT8/INT4/FP8)的原理?
- 思路:把权重/激活从 FP16/32 降到 INT/FP8,体积/算力小数倍;精度损失靠校准/QAT 控制。
- 量化后的坑如何规避?
- 思路:校准集要代表性 + 关键层(attention)保留高精度 + 对比量化前后效果 + 不在长上下文盲量化。
- 向量化存储用的是什么方案?
- 思路:Milvus/Qdrant/Pinecone/Weaviate/PGVector,按规模/成本/部署模式选;讲清自己用过的踩坑点。
- 模型接入时如何考虑能力、成本和向量化支持?
- 思路:能力(任务匹配/中文/上下文) + 成本(单价/限流) + 向量化(嵌入接口/维度);按场景做选型矩阵。
2、Token / 上下文 / 推理
- Token 是什么?怎么计费
- 思路:模型最小处理单位(BPE 子词);中文 1 字≈1.3-1.5 token,英文 1 词≈0.7-1。API 按输入+输出 token 计费。
- 上下文窗口的本质是什么
- 思路:模型单次能 attend 的最大 token 数;受位置编码外推能力和算力限制。
- 长上下文模型的注意力稀释问题
- 思路:上下文过长时关键信息被淹没,模型记不住中段(lost-in-the-middle);常达标 60-70% 后体验下降。
- KV cache 的原理和作用
- 思路:缓存历史 K/V 避免重算,把 O(n²) 推理摊销到增量;显存压力大,量化/分页(PagedAttention) 是优化方向。
- 流式输出怎么实现
- 思路:SSE/WebSocket 把 token 边生成边推;服务端 yield 模型输出,前端增量渲染;要处理中断/重连/超时。
- 推理时延怎么优化
- 思路:Continuous batching + KV cache + 量化(INT8/4) + PagedAttention + Speculative decoding + 模型蒸馏。
- Temperature / Top P / Top K 的作用
- 思路:T 控随机性(0 确定/高随机);Top P 截累积概率;Top K 截前 K 个 token。组合用控制创意 vs 稳定。
- 上下文压缩有哪些方法
- 思路:摘要 + LLMLingua token 级压缩 + Rerank 后截断 + Map-Reduce 分段处理。
- 为什么标称上下文用到 60-70% 就开始下降
- 思路:注意力稀释 + 训练时长上下文样本少 + 位置编码外推不稳定。
- 流式返回过程中网络中断、前端重连,后端如何恢复上下文继续输出?
- 思路:用 stream_id 持久化中间状态 + 增量 token 缓存 + 前端断点续传;不可恢复时优雅中断 + 重试。
- 用户点击“停止生成”,后端如何立即终止LLM推理、释放GPU/CPU资源?
- 思路:结合自己项目场景回答,体现你的判断和取舍。
- 多轮对话+流式输出,如何保证消息不乱序、上下文不丢失?
- 思路:单连接 + sequence id;服务端按 session 串行 + 缓存待发送增量;客户端 ack 机制。
- 跨服务流式透传(Java/Go后端+Python模型服务)如何实现?
- 思路:gRPC streaming 或 HTTP/2 SSE 透传 + 协议适配 + 反向代理保持长连接。
- 流式输出场景中,如何实现内容安全实时截断(检测到敏感词立即停流、清理上下文)?
- 思路:边生成边过滤(分类器+关键词),命中立即中断 + 上下文回滚 + 告警。
- 流式返回时,如何精准统计Token消耗(逐段统计、总消耗汇总),适配计费场景?
- 思路:每段 token 累计 + 计费埋点;模型返回 usage 信息或自己用 tokenizer 统计。
- 小程序、APP、PC端对流式输出的兼容性差异如何处理?
- 思路:小程序 SSE 受限 → 用 WebSocket 兜底;统一封装一层流接口。
- 如何解决部分端流式渲染卡顿问题?
- 思路:防止主线程阻塞 + 节流渲染 + 虚拟列表 + 消息分片 + 防 markdown 重复解析。
3、大模型基础 / 架构
- Transformer 的核心组件
- 思路:Self-Attention + FFN + LayerNorm + Residual + Positional Encoding;多头并行 + 残差归一化是关键。
- 自注意力机制详解
- 思路:Q/K/V 三个线性投影,attention=softmax(QK^T/√d)·V;O(n²) 复杂度,多头并行学不同 subspace。
- RoPE 是什么?和绝对位置编码比有什么优势
- 思路:Rotary Position E
剩余60%内容,订阅专栏后可继续查看/也可单篇购买
AIcoding笔试挑战杯福利 文章被收录于专栏
第一届牛客AI Coding笔试挑战被,报名+完赛选手即可获得 内包含以下福利: * 校招投递时间表 * 网申助手插件 * 简历模板包 * 各公司秋招笔试真题 * AI面经题库 * 本地终端部署 AI 教程
