显存不够时,把部分层放到 CPU/内存能跑起来,但通常更慢。下面用 FAQ 建立正确预期。

什么时候该考虑 offload?

模型权重无法完整放入 GPU,但仍想本机跑通,且能接受速度下降。

offload 后还算本地私有吗?

权重与请求仍在你机器上;隐私取决于进程与网络策略。offload 本身不等于自动更安全。

为什么体感极慢?

CPU 与内存带宽成为瓶颈。优先减少 offload 比例、降低上下文、选量化版。

排错顺序

  1. 是否可换更小量化
  2. 上下文是否过长
  3. 是否有其它进程占显存
  4. 再调 offload 比例

和量化、上下文的取舍

多数时候,先换更合适的量化或更短上下文,比猛上 offload 更划算。offload 适合「必须加载某尺寸模型做偶发任务」;若你要持续对话或长文档,优先评估更小模型是否已够用。

参数怎么理解(概念)

不同框架名称不同,常见思路是指定多少层驻留 GPU。从「刚好能加载」开始,再逐步提高 GPU 驻留,观察是否稳定与是否可接受延迟。

还要看什么

  • 内存是否也被打满(offload 到内存也会挤占系统)
  • 是否同时开了太多会话
  • 磁盘是否在频繁换页(体感会极差)

不要用未经实测的「官方速度倍数」对外承诺;以你机器上的体感与日志为准。

什么时候该放弃 offload

若延迟高到无法交互、或系统内存被挤爆导致其它应用卡死,说明当前机子不适合硬跑该尺寸。此时更务实的路径是:更小模型、云端 API(注意数据策略)、或升级硬件。Offload 是权宜,不是性能优化银弹。

记录你的可复现配置:模型文件名、量化、上下文、框架版本、大致 token/s 体感。方便一个月后比较,而不是凭记忆说「好像更慢了」。

小结

本机跑模型的乐趣在于可控;代价是你要自己当运维。Offload、量化、上下文长度是一组旋钮,按任务调,而不是追求单一参数炫技。把稳定可复现放在第一位,速度放在第二位。

笔记本与台式机的散热差异很大;同一套 offload 配置在不同机器上的体感可能完全不同,别跨设备硬套经验。

补充实践

若你用图形界面封装本地模型,确认界面没有在后台重复加载第二份权重,否则显存与内存会莫名翻倍。

最后提醒:先保证能稳定加载与完成一次推理,再谈优化。把每次失败的报错原文存档,比反复盲调参数更快定位。

相关阅读