推理、部署与算力面试题图文讲义2485 字

大模型推理相关面试题

·全库 143 / 611

《大模型推理相关面试题》共 6 页、0.2 万字,通篇围绕 推理、GPU、微调、LoRA 展开,归在「推理、部署与算力」这一层。

覆盖推理GPU微调LoRA显存向量

适合要把模型跑起来,还得跑得起的人

目录骨架(3 节)
  1. tion. We only train A and B.
  2. 4. 大模型有推理能力吗?
  3. Figure 1: Our reparametriza-

原 PDF 已逐页还原成图,共 6 页,这里先放前 3 页。右侧文字由 OCR 按版面重排,可能有个别错字,以图为准;点图可全屏放大。

本讲义目录 · 3 页
  1. 01大模型(LLMS)推理面
  2. 02在询问 ChatGPT 互联网上并不…
  3. 036.1 如何估算模型所需的 RAM?
011 / 3
第 1 页
第 1 页

大模型(LLMS)推理面

  • 大模型(LLMS)推理面
  • 1.为什么大模型推理时显存涨的那么多还一直占着?
  • 2.大模型在 gpu 和 cpu 上推理速度如何?
  • 3.推理速度上,int8 和 fp16 比起来怎么样?
  • 4. 大模型有推理能力吗?
  • 5. 大模型生成时的参数怎么设置?
  • 6. 有哪些省内存的大语言模型训练/微调/推理方法?
  • 6.1 如何估算模型所需的 RAM?
  • 6.2 Fp16-mixed precision
  • 6.3 Int8-bitsandbytes
  • 6.4 LORA
  • 6.5 Gradient Checkpointing
  • 6.6 Torch FSDP+CPU offload
  • 7. 如何让大模型输出合规化

•9.模型输出的分布比较稀疏,怎么处理?

1.为什么大模型推理时显存涨的那么多还一直占着?

  1. 首先,序列太长了,有很多 Q/KN; 2.其次,因为是逐个预测 next token,每次要缓存 KNV 加速解码。
  1. 大模型在 gpu 和 cpu 上推理速度如何?
  • 7B 量级下:
  • cpu 推理速度约 10token/s;
  • 单卡 A6000 和 8 核 AMD 的推理速度通常为 10:1。

3.推理速度上,int8 和 fp16 比起来怎么样?

根据实践经验,int8 模式一般推理会明显变慢(huggingface 的实现)

4. 大模型有推理能力吗?

大模型有推理能力。有下面 2 个方面的体现: ChatGPT 拥有 in-context correction 的能力,即如果说错了,给出矫正,ChatGPT 能“听懂“错在哪儿了,并向正确 的方向修正。in-context correction 要比 in-context learning 难了太多,描述越详细清楚,ChatGPT 回答得越好。 要知道,越详细的描述,在预训练的文本里越难匹配到的。

022 / 3
第 2 页
第 2 页

在询问 ChatGPT 互联网上并不…

在询问 ChatGPT 互联网上并不存在内容的时候,能给出较好答案(如用 ChatGPT 学建模);ChatGPT 能通过信 息猜你心中的想法;你可以制定一个全新的游戏规则让 ChatGPT 和你玩,ChatGPT 可以理解。

5.大模型生成时的参数怎么设置?

生成模型预测调参建议: 建议去调整下 top_p, num_beams, repetition_renalty, temperature, do_sample=True; 数据生成有重复,调高 repetition_renalty; 生成任务表达单一的,样本也不多的,可适当调低 temperature,生成的样子跟训练集的比较像;如果要复现训 练集的效果,temperature=0.01 即可。 以上是经验参数,具体调参根据任务而定,不是固定的。 •参数解释:

#Moderately increase the probability threshold of nucleus sampling to increase the quantity of candidate tokens and increase generation diversity.

temperature=l.0, #The previous low temperature parameter could lead to a severe polarization in the probability distribution of generated words, which degenerates the generation strategy into greedy decoding.

do_sample=True, #do_sample parameter is set to False by default. After setting to True, the generation methods turn into beam-search multinomial sampling decoding strategy.

no_repeat_ngram_size=6, #Configure the probability of the next repeating n-gram to 0, to ensure that there are no n-grams appearing twice. This setting is an empirical preliminary exploration.

repetition_penalty=1.8, #For words that have appeared before, in the subsequent prediction process, we reduce the probability of their reoccurrence by introducing the repetition penalty parameter. This setting is an empirical preliminary exploration.

6.有哪些省内存的大语言模型训练/微调/推理方法?

  • 动机:大模型(LLMs)现在是 NLP 领域的最主流方法之一,但是大模型的训练/微调/推理需要的内存也越来 越多。 举例来说,即使 RTX 3090 有着 24GB 的 RAM,是除了 A100 之外显存最大的显卡。但使用一块 RTX 3090 依 然无法 fp32 精度训练最小号的 LLaMA-6B。
  • Memory-Efficient 的 LLMs 的训练/微调/推理方法
033 / 3
第 3 页
第 3 页

6.1 如何估算模型所需的 RAM?

• fp16

  • int8
  • LORA
  • Gradient checkpointing
  • Torch FSDP
  • CPU offloading

6.1 如何估算模型所需的 RAM?

  • 首先,我们需要了解如何根据参数量估计模型大致所需的 RAM,这在实践中有很重要的参考意义。我们需要通 过估算设置 batch_size,设置模型精度,选择微调方法和参数分布方法等。 接下来,我们用 LLaMA-6B 模型力例估算其大致需要的内存。 首先考虑精度对所需内存的影响:
  • fp32 精度,一个参数需要 32 bits, 4 bytes.
  • fp16 精度,一个参数需要 16 bits, 2 bytes.
  • int8 精度,一个参数需要 8 bits, 1 byte. 其次,考虑模型需要的 RAM 大致分三个部分:
  • 模型参数
  • 模型参数:等于参数量*每个参数所需内存。
  • 对于 fp32,LLaMA-6B 需要 6B*4 bytes = 24GB 内存
  • 对于 int8,LLaMA-6B 需要 6B*1 byte =6GB
  • 梯度:同上,等于参数量*每个梯度参数所需内存。
  • 优化器参数:不同的优化器所储存的参数量不同。 对于常用的 AdamW 来说,需要储存两倍的模型参数(用来储存一阶和二阶 momentum)。
  • fp32 的 LLaMA-6B,AdamW 需要 6B*8 bytes = 48 GB
  • int8 的 LLaMA-6B,AdamW 需要 6B*2 bytes = 12 GB

除此之外,CUDA kernel 也会占据一些 RAM,大概 1.3GB 左右,查看方式如下。

print_gpu_utilization ()

GPU memory occupied: 1343 MB 综上,int8 精度的 LLaMA-6B 模型部分大致需要 6GB+6GB+12GB+1.3GB =25.3GB 左右。 再根据 LLaMA 的架构(hidden_size = 4096, intermediate_size =11008, num_hidden_layers = 32, context_length = 2048)计算中间变量内存。

每个 instance 需要:

所以一张 A100 (80GB RAM)大概可以在 int8 精度;batch_size = 50 的设定下进行全参数训练。 查看消费级显卡的内存和算力: 2023 GPU Benchmark and Graphics Card Comparison Chart: https://www.gpucheck.com/gpu-benchmark- graphics-card-comparison-chart

6.2 Fp16-mixed precision

资料里没有你的场景?

把你手上的数据和想解决的那个环节发上来,我们按具体情况回,不复述方法论。

发布需求