你好,Ollama朋友们👋,
回溯到去年这个时候,llama.cpp已经支持了使用草稿模型参数进行推测性解码。这可以极大地加速推理。我想知道是否有可能让你考虑为llama.cpp的--model-draft
参数添加这个选项?
它通过在较大的模型前面加载一个较小的模型(具有相同的分词器/家族)来工作。我知道在使用exllamav2时,你可以获得100%-200%的速度提升(认真的!),最好的部分是——没有质量损失。
例如,你可能有:
- 主模型:Qwen 72b Q4_K_M
- 草稿模型:Qwen 0.5b Q4_K_M
结果将是主Qwen 72b模型的内存使用量加上微小的0.5b草稿模型,但大约是仅加载主模型时的4倍标记/秒。
最近我一直在使用exllamav2而不是Ollama来实现这个功能(以及4位K/V缓存#5091),性能真的令人惊叹。
可以传递给llama.cpp服务器的参数有:
--model-draft
(必需)-用途与现有的--model
相同,用于加载普通模型。--draft
(可选,但建议提供)--p-split
(可选,但建议提供)
还有以下内容,但我认为99%的时间里默认设置可能就足够了:
--threads-draft
--threads-batch-draft
https://github.com/ggerganov/llama.cpp/blob/master/examples/server/README.md?plain=1#L37
1条答案
按热度按时间2cmtqfgy1#
我刚刚找到了这个旧问题,虽然已经相当过时了,但似乎与此相关 - #1292