多模态
llama.cpp 通过 libmtmd 支持多模态输入。目前,有 2 个工具支持此功能:
- llama-mtmd-cli
- llama-server 通过兼容 OpenAI 的
/chat/completionsAPI
目前,我们支持图像和音频输入。音频功能仍处于高度实验阶段,可能存在质量下降的情况。
要启用多模态功能,您可以使用以下 2 种方法之一:
- 使用
-hf选项配合支持的模型(请参阅下方预量化模型列表)- 要在使用
-hf加载模型时禁用多模态功能,请使用--no-mmproj - 要在使用
-hf加载模型时使用自定义的多模态投影文件,请使用--mmproj local_file.gguf
- 要在使用
- 使用
-m model.gguf选项配合--mmproj file.gguf分别指定文本模型和多模态投影器
默认情况下,多模态投影器将被卸载到 GPU 上。要禁用此功能,请添加 --no-mmproj-offload
例如:
# 使用 CLI 的简单用法
llama-mtmd-cli -hf ggml-org/gemma-3-4b-it-GGUF
# 使用服务器的简单用法
llama-server -hf ggml-org/gemma-3-4b-it-GGUF
# 使用本地文件
llama-server -m gemma-3-4b-it-Q4_K_M.gguf --mmproj mmproj-gemma-3-4b-it-Q4_K_M.gguf
# 不使用 GPU 卸载
llama-server -hf ggml-org/gemma-3-4b-it-GGUF --no-mmproj-offload
预量化模型
这些是即用型模型,大多数模型默认使用 Q4_K_M 量化。您可以在 ggml-org 的 Hugging Face 页面找到它们:https://huggingface.co/collections/ggml-org/multimodal-ggufs-68244e01ff1f39e5bebeeedc
请将 (tool_name) 替换为您想要使用的二进制文件名称。例如,llama-mtmd-cli 或 llama-server
注意: 某些模型可能需要较大的上下文窗口,例如:
-c 8192
视觉模型:
# Gemma 3
(tool_name) -hf ggml-org/gemma-3-4b-it-GGUF
(tool_name) -hf ggml-org/gemma-3-12b-it-GGUF
(tool_name) -hf ggml-org/gemma-3-27b-it-GGUF
# SmolVLM
(tool_name) -hf ggml-org/SmolVLM-Instruct-GGUF
(tool_name) -hf ggml-org/SmolVLM-256M-Instruct-GGUF
(tool_name) -hf ggml-org/SmolVLM-500M-Instruct-GGUF
(tool_name) -hf ggml-org/SmolVLM2-2.2B-Instruct-GGUF
(tool_name) -hf ggml-org/SmolVLM2-256M-Video-Instruct-GGUF
(tool_name) -hf ggml-org/SmolVLM2-500M-Video-Instruct-GGUF
# Pixtral 12B
(tool_name) -hf ggml-org/pixtral-12b-GGUF
# Qwen 2 VL
(tool_name) -hf ggml-org/Qwen2-VL-2B-Instruct-GGUF
(tool_name) -hf ggml-org/Qwen2-VL-7B-Instruct-GGUF
# Qwen 2.5 VL
(tool_name) -hf ggml-org/Qwen2.5-VL-3B-Instruct-GGUF
(tool_name) -hf ggml-org/Qwen2.5-VL-7B-Instruct-GGUF
(tool_name) -hf ggml-org/Qwen2.5-VL-32B-Instruct-GGUF
(tool_name) -hf ggml-org/Qwen2.5-VL-72B-Instruct-GGUF
# Mistral Small 3.1 24B (IQ2_M 量化)
(tool_name) -hf ggml-org/Mistral-Small-3.1-24B-Instruct-2503-GGUF
# InternVL 2.5 和 3
(tool_name) -hf ggml-org/InternVL2_5-1B-GGUF
(tool_name) -hf ggml-org/InternVL2_5-4B-GGUF
(tool_name) -hf ggml-org/InternVL3-1B-Instruct-GGUF
(tool_name) -hf ggml-org/InternVL3-2B-Instruct-GGUF
(tool_name) -hf ggml-org/InternVL3-8B-Instruct-GGUF
(tool_name) -hf ggml-org/InternVL3-14B-Instruct-GGUF
# Llama 4 Scout
(tool_name) -hf ggml-org/Llama-4-Scout-17B-16E-Instruct-GGUF
# Moondream2 20250414 版本
(tool_name) -hf ggml-org/moondream2-20250414-GGUF
音频模型:
# Ultravox 0.5
(tool_name) -hf ggml-org/ultravox-v0_5-llama-3_2-1b-GGUF
(tool_name) -hf ggml-org/ultravox-v0_5-llama-3_1-8b-GGUF
# Qwen2-Audio 和 SeaLLM-Audio
# 注意:这些模型没有预量化的 GGUF 版本,因为它们的结果很差
# 参考:https://github.com/ggml-org/llama.cpp/pull/13760
混合模态:
# Qwen2.5 Omni
# 功能:音频输入、视觉输入
(tool_name) -hf ggml-org/Qwen2.5-Omni-3B-GGUF
(tool_name) -hf ggml-org/Qwen2.5-Omni-7B-GGUF