LLMs 千面郎君
介绍:本项目是作者们根据个人面试和经验总结出的 大模型(LLMs)面试准备的学习笔记与资料,该资料目前包含 大模型(LLMs)各领域的 面试题积累。
GitHub· 地址:https://github.com/km1994/LLMs_interview_notes
LLMs 千面郎君 面试交流群 (注:人满 可 添加 小编wx:yzyykm666 加群!)
大模型(LLMs)基础面
- 目前 主流的开源模型体系 有哪些?
- prefix LM 和 causal LM 区别是什么?
- 涌现能力是啥原因?
- 大模型LLM的架构介绍?
大模型(LLMs)进阶面
- LLMs 复读机问题
- 什么是 LLMs 复读机问题?
- 为什么会出现 LLMs 复读机问题?
- 如何缓解 LLMs 复读机问题?
- llama 系列问题
- llama 输入句子长度理论上可以无限长吗?
- 什么情况用Bert模型,什么情况用LLaMA、ChatGLM类大模型,咋选?
- 各个专业领域是否需要各自的大模型来服务?
- 如何让大模型处理更长的文本?
大模型(LLMs)微调面
- 如果想要在某个模型基础上做全参数微调,究竟需要多少显存?
- 为什么SFT之后感觉LLM傻了?
- SFT 指令微调数据 如何构建?
- 领域模型Continue PreTrain 数据选取?
- 领域数据训练后,通用能力往往会有所下降,如何缓解模型遗忘通用能力?
- 领域模型Continue PreTrain ,如何 让模型在预训练过程中就学习到更多的知识?
- 进行SFT操作的时候,基座模型选用Chat还是Base?
- 领域模型微调 指令&数据输入格式 要求?
- 领域模型微调 领域评测集 构建?
- 领域模型词表扩增是不是有必要的?
- 如何训练自己的大模型?
- 训练中文大模型有啥经验?
- 指令微调的好处?
- 预训练和微调哪个阶段注入知识的?
- 想让模型学习某个领域或行业的知识,是应该预训练还是应该微调?
- 多轮对话任务如何微调模型?
- 微调后的模型出现能力劣化,灾难性遗忘是怎么回事?
- 微调模型需要多大显存?
- 大模型LLM进行SFT操作的时候在学习什么?
- 预训练和SFT操作有什么不同
- 样本量规模增大,训练出现OOM错
- 大模型LLM进行SFT 如何对样本进行优化?
- 模型参数迭代实验
大模型(LLMs)langchain 面
大模型(LLMs)langchain 面
- 什么是 LangChain?
- LangChain 包含哪些 核心概念?
- LangChain 中 Components and Chains 是什么?
- LangChain 中 Prompt Templates and Values 是什么?
- LangChain 中 Example Selectors 是什么?
- LangChain 中 Output Parsers 是什么?
- LangChain 中 Indexes and Retrievers 是什么?
- LangChain 中 Chat Message History 是什么?
- LangChain 中 Agents and Toolkits 是什么?
- 什么是 LangChain Agent?
- 如何使用 LangChain ?
- LangChain 支持哪些功能?
- 什么是 LangChain model?
- LangChain 包含哪些特点?
- LangChain 如何使用?
- LangChain 如何调用 LLMs 生成回复?
- LangChain 如何修改 提示模板?
- LangChain 如何链接多个组件处理一个特定的下游任务?
- LangChain 如何Embedding & vector store?
- LangChain 存在哪些问题及方法方案?
- LangChain 低效的令牌使用问题
- LangChain 文档的问题
- LangChain 太多概念容易混淆,过多的“辅助”函数问题
- LangChain 行为不一致并且隐藏细节问题
- LangChain 缺乏标准的可互操作数据类型问题
- LangChain 替代方案?
基于LLM+向量库的文档对话 经验面
- 基于LLM+向量库的文档对话 基础面
- LLMs 存在模型幻觉问题,请问如何处理?
- 基于LLM+向量库的文档对话 思路是怎么样?
- 基于LLM+向量库的文档对话 核心技术是什么?
- 基于LLM+向量库的文档对话 prompt 模板 如何构建?
- 基于LLM+向量库的文档对话 优化面
- 痛点1:文档切分粒度不好把控,既担心噪声太多又担心语义信息丢失
- 痛点2:在基于垂直领域 表现不佳
- 痛点3:langchain 内置 问答分句效果不佳问题
- 痛点4:如何 尽可能召回与query相关的Document 问题
- 痛点5:如何让LLM基于query和context得到高质量的response
- 基于LLM+向量库的文档对话 工程示例面
- 本地知识库问答系统(Langchain-chatGLM)
- 避坑记录
- 本地知识库问答系统(Langchain-chatGLM)
大模型(LLMs)参数高效微调(PEFT) 面
大模型(LLMs)参数高效微调(PEFT) 面
-
微调方法是啥?如何微调?
-
为什么需要 PEFT?
-
介绍一下 PEFT?
-
PEFT 有什么优点?
-
微调方法批处理大小模式GPU显存速度?
-
Peft 和 全量微调区别?
-
多种不同的高效微调方法对比
-
当前高效微调技术存在的一些问题
-
高效微调技术最佳实践
-
PEFT 存在问题?
-
能不能总结一下各种参数高效微调方法?
配器微调(Adapter-tuning)篇
-
一、为什么 需要 适配器微调(Adapter-tuning)?
-
二、适配器微调(Adapter-tuning)思路?
-
三、 适配器微调(Adapter-tuning)特点是什么?
-
四、AdapterFusion 思路 是什么?
-
五、AdapterDrop 思路 是什么?
-
六、AdapterDrop 特点 是什么?
-
七、MAM Adapter 思路 是什么?
-
八、MAM Adapter 特点 是什么?
提示学习(Prompting)
-
一、为什么需要 提示学习(Prompting)?
-
二、什么是 提示学习(Prompting)?
-
三、提示学习(Prompting) 有什么优点?
-
四、提示学习(Prompting)有哪些方法,能不能稍微介绍一下它们间?
- 4.1 前缀微调(Prefix-tining)篇
- 4.1.1 为什么需要 前缀微调(Prefix-tining)?
- 4.1.2 前缀微调(Prefix-tining)思路是什么?
- 4.1.3 前缀微调(Prefix-tining)的优点是什么?
- 4.1.4 前缀微调(Prefix-tining)的缺点是什么?
- 4.2 指示微调(Prompt-tuning)篇
- 4.2.1 为什么需要 指示微调(Prompt-tuning)?
- 4.2.2 指示微调(Prompt-tuning)思路是什么?
- 4.2.3 指示微调(Prompt-tuning)优点是什么?
- 4.2.4 指示微调(Prompt-tuning)缺点是什么?
- 4.2.5 指示微调(Prompt-tuning)与 Prefix-tuning 区别 是什么?
- 4.2.6 指示微调(Prompt-tuning)与 fine-tuning 区别 是什么?
- 4.3 P-tuning 篇
- 4.3.1 为什么需要 P-tuning?
- 4.3.2 P-tuning 思路是什么?
- 4.3.3 P-tuning 优点是什么?
- 4.3.4 P-tuning 缺点是什么?
- 4.4 P-tuning v2 篇
- 4.4.1 为什么需要 P-tuning v2?
- 4.4.2 P-tuning v2 思路是什么?
- 4.4.3 P-tuning v2 优点是什么?
- 4.4.4 P-tuning v2 缺点是什么?
- 4.1 前缀微调(Prefix-tining)篇
LoRA 系列篇
-
一、LoRA篇
- 1.1 什么是 LoRA?
- 1.2 LoRA 的思路是什么?
- 1.3 LoRA 的特点是什么?
-
二、QLoRA篇
- 2.1 QLoRA 的思路是怎么样的?
- 2.2 QLoRA 的特点是什么?
-
三、AdaLoRA篇
- 3.1 AdaLoRA 的思路是怎么样的?
-
四、LoRA权重是否可以合入原模型?
-
五、ChatGLM-6B LoRA后的权重多大?
-
六、LoRA 微调优点是什么?
-
七、LoRA微调方法为啥能加速训练?
-
八、如何在已有LoRA模型上继续训练?
大模型(LLMs)推理面
- 为什么大模型推理时显存涨的那么多还一直占着?
- 大模型在gpu和cpu上推理速度如何?
- 推理速度上,int8和fp16比起来怎么样?
- 大模型有推理能力吗?
- 大模型生成时的参数怎么设置?
- 有哪些省内存的大语言模型训练/微调/推理方法?
- 如何让大模型输出合规化
- 应用模式变更
大模型(LLMs)评测面
- 大模型怎么评测?
- 大模型的honest原则是如何实现的?模型如何判断回答的知识是训练过的已知的知识,怎么训练这种能力?
大模型(LLMs)强化学习面
- 奖励模型需要和基础模型一致吗?
- RLHF 在实践过程中存在哪些不足?
- 如何解决 人工产生的偏好数据集成本较高,很难量产问题?
- 如何解决三个阶段的训练(SFT->RM->PPO)过程较长,更新迭代较慢问题?
- 如何解决 PPO 的训练过程同时存在4个模型(2训练,2推理),对计算资源的要求较高 问题?
大模型(LLMs)软硬件配置面
- 建议的软件环境是什么?
大模型(LLMs)训练集面
- SFT(有监督微调)的数据集格式?
- RM(奖励模型)的数据格式?
- PPO(强化学习)的数据格式?
- 找数据集哪里找?
- 微调需要多少条数据?
- 有哪些大模型的训练集?
- 进行领域大模型预训练应用哪些数据集比较好?
大模型(LLMs)显存问题面
- 大模型大概有多大,模型文件有多大?
- 能否用4 * v100 32G训练vicuna 65b?
- 如果就是想要试试65b模型,但是显存不多怎么办?
- nB模型推理需要多少显存?
- nB模型训练需要多少显存?
- 如何 估算模型所需的RAM?
- 如何评估你的显卡利用率?
- 测试你的显卡利用率 实现细节篇
- 如何查看多机训练时的网速?
- 如何查看服务器上的多卡之间的NVLINK topo?
- 如何查看服务器上显卡的具体型号?
- 如何查看训练时的flops?(也就是每秒的计算量)
- 如何查看对deepspeed的环境配置是否正确?
- tf32格式有多长?
- 哪里看各类显卡算力比较?
- (torch profiler)如何查看自己的训练中通信开销?
大模型(LLMs)分布式训练面
-
理论篇
- 想要训练1个LLM,如果只想用1张显卡,那么对显卡的要求是什么?
- 如果有N张显存足够大的显卡,怎么加速训练?
- 如果显卡的显存不够装下一个完整的模型呢?
- PP推理时,是一个串行的过程,1个GPU计算,其他空闲,有没有其他方式?
- 3种并行方式可以叠加吗?
- Colossal-AI 有1D/2D/2.5D/3D,是什么情况?
- 除了3D并行有没有其他方式大规模训练?
- 有了ZeRO系列,为什么还需要3D并行?
- 平民适不适合玩3D并行?
- 平民适不适合直接上多机多卡的ZeRO3(万兆网)?
-
实践篇
- 假如有超多的8卡A100节点(DGX A100),如何应用3D并行策略?
- 如果想构这样一个大规模并行训练系统,训练框架如何选?
- 训练框架如何选?
-
并行化策略选择篇
-
问题篇
- 推理速度验证
- 并行化训练加速
- deepspeed 训练过程,报找不主机
- 为什么 多机训练效率不如单机?
- 多机训练不通,DeepSPeed配置问题
大模型(LLMs)agent 面
- 如何给LLM注入领域知识?
- 如果想要快速体验各种模型,该怎么办?