PromptQuorumPromptQuorum

如何将 Ollama 模型转换为 MLX 格式

快速回答

您无法直接将 Ollama 模型转换为 MLX 格式。请改为从 Hugging Face 下载原始 GGUF 或 SafeTensors 权重,然后使用 mlx-lm convert 进行转换。对于大多数流行模型(Llama 3、Qwen、Mistral),Hugging Face 的 mlx-community 组织下已有预转换的 MLX 版本。

  • 无法直接转换 Ollama 模型——模型格式不同
  • 大多数流行模型的预转换 MLX 版本可在 huggingface.co/mlx-community 获取
  • 自行转换:从 Hugging Face 下载,然后运行 mlx_lm.convert

更新于: 2026-05

Tool Comparisons

关键要点

  • Ollama 将模型以其自有内部格式存储在 ~/.ollama/models 中——无法直接将这些文件导入 MLX
  • Hugging Face 的 mlx-community 组织提供了 Llama 3、Qwen、Mistral、Phi、Gemma 等众多模型的预转换 MLX 版本——转换前请先在那里查找
  • 如果不存在预转换版本,请从 Hugging Face 下载原始 SafeTensors 权重,然后运行 mlx_lm.convert——量化会在转换过程中自动应用

第一步:查找预转换的 MLX 模型

在转换任何内容之前,请先访问 huggingface.co/mlx-community。该社区维护了数百个已为 MLX 转换和量化的模型。按模型名称搜索——如果那里已有该模型,安装只需一条命令,无需转换。

如果预转换版本存在,直接使用 mlx-lm 运行该模型:

pip install mlx-lm
mlx_lm.generate --model mlx-community/Meta-Llama-3-8B-4bit --prompt "Hello"

第二步:自行转换模型(如无预转换版本)

如果您想要的模型不在 mlx-community 中,请从模型作者的 Hugging Face 仓库(而非 mlx-community)下载原始 SafeTensors 权重,然后运行转换器。-q 标志会在转换过程中应用 4 位量化:

转换时间约为 2–10 分钟,具体取决于模型大小。输出是一个包含 .safetensors 分片的目录,以及与 MLX 兼容的分词器配置。

pip install mlx-lm
mlx_lm.convert --hf-path original-org/model-name --mlx-path ./converted-model -q

关于 MLX 模型转换的快速解答

我可以从 Ollama 导出模型并导入 MLX 吗?
不可以。Ollama 将模型以其自有内部格式存储在 ~/.ollama/models 中。该格式无法被 mlx-lm 直接读取。您需要来自 Hugging Face 的原始 SafeTensors 或 GGUF 权重作为转换来源。
mlx-lm 支持 GGUF 文件作为转换输入吗?
截至 2026 年初,mlx-lm.convert 主要针对 SafeTensors(标准的 Hugging Face 格式)。如果您只有 GGUF 文件,请先使用 GGUF 到 SafeTensors 的转换工具,或在模型的 Hugging Face 页面上查找原始 SafeTensors 权重。
哪些模型有预转换的 MLX 版本?
mlx-community 组织涵盖了大多数主要模型:Llama 3、Qwen 2.5、Mistral、Phi-3/4、Gemma 2 以及许多微调版本。4 位和 8 位量化版本通常均可获得。访问 huggingface.co/mlx-community 并按模型系列名称搜索。
转换为 MLX 时应使用哪种量化方式?
对于 16 GB 统一内存上的大多数 7B–14B 模型,请使用 4 位量化(-q 标志的默认值)。对于 7B 模型,这会生成约 4 GB 的模型,在 M1/M2/M3/M4 芯片上运行良好。仅在拥有 32 GB 或以上内存且需要更高输出质量时才使用 8 位量化。