📑 本页目录(点开跳转)
17c · 按岗位补深度,不把所有名词当必修
⏱ 按目标选一条 | 先完成共同项目,再做专项证据
🎯 一句话
求职所需的“深”取决于你负责哪一层。 应用开发要交付可靠系统,检索算法要解释数据与排序,模型训练和推理岗位还需要独立的实验与资源测量。
🔗 共同基线:企业知识助手。本页是岗位分流与扩展验收书,下面未附实现的实验均是待完成任务,不算参考项目已验证的能力。先用目标 JD 的职责与年限筛选,不用一个岗位的要求代替整个市场。
一、把 JD 翻译成能展示的产出
| 岗位方向 | 共同能力之外的重点 | 一份可核对的作品 |
|---|---|---|
| 大模型应用 / 后端 | Python、异步、API、SQL、鉴权、队列、缓存、测试与部署 | 从请求到业务副作用的 trace、故障恢复与容量报告 |
| RAG / 搜索算法 | 分词、检索标注、embedding、排序、ANN、难负例 | 逐题对照、分组指标、召回—延迟实验与训练消融 |
| Agent / 平台 | 工具协议、编排、状态、预算、隔离、评测平台 | 目标宿主联调、跨进程恢复、权限与重复执行负例 |
| SFT / 对齐 / 模型算法 | PyTorch、Transformer、优化、数据、LoRA 与训练评估 | 可复跑训练配置、曲线、保留集、退化与合并验证 |
| 推理 / 基础设施 | 显存、KV cache、批处理、量化、调度、服务可观测 | 固定负载下吞吐、TTFT/TPOT/p99、质量与成本对照 |
| 文档 / 多模态应用 | OCR、版面、图表、图文检索、页级引用 | 各版面类型的提取错误集、定位与检索生成评测 |
框架名是实现工具,不代替 Python 异步取消、事务隔离、HTTP 超时、索引和复杂度等基础。遇到陌生要求,先定位它属于数据、模型、服务还是业务边界,再安排补课。
二、Text-to-SQL:能生成 SQL 只完成了开头
从关系数据库与结构化输出接入。准备三张带关联的虚构业务表、字段说明、主外键与指标定义;题目包含同名客户、退款、NULL、时区与“一客多单”。
| 环节 | 具体问题 | 实验与验收 |
|---|---|---|
| schema linking | “收入”是含税、退款前还是净额 | 定义指标口径,列出选择哪些表列的依据 |
| 值与实体映射 | 用户说简称、大小写或同名对象 | 参数化绑定值;不拼用户文本进 SQL |
| 查询生成 | 多表 JOIN 放大金额、时间边界错 | 构造重复行、NULL 与月末跨时区反例 |
| 安全执行 | 只写 SELECT 仍可能访问敏感表或调用危险函数 | 只读受限数据库角色、表列白名单、AST 校验、超时、行数/扫描预算 |
| 租户隔离 | 模型忘记 tenant 条件 | 数据库 RLS/受限视图兜底,应用身份不能自由设租户 |
| 结果解释 | 单位、空结果、聚合分母被误读 | 答案附口径与查询结果;空结果不等于“业务不存在” |
AST 校验和正则都不能代替数据库权限;“只允许 SELECT”也不自动限制所有函数、CTE、系统表与高代价计算。禁止对生产库试未知生成语句,先用隔离只读快照验证。
评测比较执行结果的语义等价,不强制 SQL 字符串完全相同。改变测试数据以识别碰巧相等的错误 SQL;记录超时、越权与拒答,不能只统计成功执行率。工具修复最多几轮、每轮读取多少 schema,都要有预算。
三、LoRA / SFT:证明学到任务,而不是背下样本
路线:微调与 LoRA → 数据清洗 → 小规模训练 → 保留集与业务对照。共同知识助手的事实更新先交给 RAG;稳定输出风格、格式或行为模式才值得设计 SFT 对照。
| 实验变量 | 观察什么 | 常见误判 |
|---|---|---|
| 数据去重、划分 | 按来源/用户/时间隔离,检查近重复 | 改写题跨训练与测试导致虚高 |
| chat template、label mask | 模板与推理一致,只对目标响应算损失 | 把用户输入也训练成答案,EOS 与停词错误 |
| rank、alpha、target modules | 参数量、显存、保留集收益 | rank 越高越好;忽略目标模块差异 |
| LR、batch、累积、warmup、epoch | train/validation loss、梯度与业务分数 | 训练 loss 下降就叫效果提升 |
| packing、长度、截断 | 完整样本占比、跨样本边界 | 重要答案在训练时已经被截掉 |
| BF16 / FP16 / 低比特训练 | 数值稳定、NaN、吞吐、内存 | 量化训练与量化部署混为一谈 |
| adapter 合并与加载 | 合并前后固定样例结果 | tokenizer 或 base revision 不一致 |
先跑极小批次证明样本、mask 与 loss 正常,再估算一次完整实验成本。记录 seed、数据哈希、模型 revision、硬件、有效 batch 与训练步数。发生 OOM,区分模型参数、优化器、激活和序列长度,按目标减少 micro-batch、长度或启用检查点;梯度累积只改变有效 batch,不消除单样本本身的内存需求。
交付至少比较原模型、提示优化、RAG、微调的任务表现与退化;通用问答、工具参数、安全约束与拒答都需回归。没有训练环境和实际运行记录时,这一分支仍是方案,不能写“完成微调”。
四、推理服务:吞吐和用户等待不是同一个目标
固定模型与输入/输出长度分布,分别测试单请求、目标并发和过载。记录 TTFT(首 token 时间)、TPOT(后续每 token 时间)、端到端延迟、吞吐、排队、失败率、显存与费用;流式“很快出现第一个字”不能掩盖最终完成很慢。
| 调优方向 | 机制与代价 | 需要保留的对照 |
|---|---|---|
| continuous batching | 提高设备利用,排队策略影响尾延迟 | 不同到达率、长短请求混合 |
| KV cache 与最大上下文 | 长输入/并发占用缓存 | 预填充与解码分开,观察抢占与回收 |
| prefix cache | 共用前缀减少重复计算 | 冷热分开,租户隔离与敏感缓存处理 |
| 量化 | 权重/缓存变小,可能损失质量 | 同任务质量、吞吐、硬件算子支持 |
| tensor/pipeline parallel | 大模型跨卡,通信有代价 | 通信拓扑、批量大小、单请求延迟 |
| speculative decoding | 草稿模型提议、主模型验证 | 接受率、任务长度与额外显存 |
| admission control | 过载前限制进入 | 429、Retry-After、配额与取消传播 |
服务升级需要模型、tokenizer、chat template、采样、工具 schema 与量化配置一起版本化。回滚测试保留模型请求样本与安全断言;故障时可降级成只返回检索依据、排队或人工处理,不能让备用模型跳过业务权限。
五、多模态、图检索与记忆按场景扩展
多模态文档从多模态章节开始。测试文字、图片、表格、跨页关系与页坐标;比较 OCR 文本检索与图文模型,对图表单位和视觉引用逐页核对。语音还要测噪声、说话人、延迟与敏感录音保留;视频需要时间段定位,不能只引用整个文件。
GraphRAG适用于需要跨实体关系与全局归纳的任务假设。先用同一题集证明普通检索漏在哪,再测实体抽取、消歧、关系方向、来源与时间、社区摘要、增量更新和删除传播。图边同样有来源与权限,不能把受限事实压成公共摘要。报告构图成本、查询成本与增益,不能只展示漂亮关系图。
Agent 记忆接记忆章节。区分用户明确偏好、临时任务状态与检索知识;写入带来源、时间、作用域和置信度。测试矛盾更新、TTL、用户撤销、跨用户读取与恶意记忆注入。记忆不是无限追加聊天记录;删除要覆盖索引、缓存与恢复后副本。
多 Agent接协作章节。先验证单体基线,然后比较专业分工、共享/隔离上下文和裁决策略;测并发冲突、环路、任务重复领取、预算放大与失败成员退出。任务成功与约束合规分别计分。
🛑 现在可以停:选一个与目标 JD 对应的专项,把表里的实验做成真实记录。其余保留为按需入口。
✅ 检查点
- SQL 能执行、训练 loss 下降、吞吐变高,分别还缺什么证据?
- 新增 GraphRAG 或多 Agent 前,应先证明什么?
展开答案
- SQL 要验证语义、权限与成本;训练要验证保留集和退化;吞吐要同时验证用户延迟、错误率与答案质量。
- 现有简单基线的具体失败类别,以及新结构在同任务、同预算口径下的可测增益。
按职责选深度;每个专项都要有对照、负例和资源口径;完成计划不等于完成实验。
🔗 接下来去哪
➡️ 随时查:附录 C · 全链路故障排查。