使用 `huggingface-cli` 下载 GGUF 格式模型给 Ollama 运行

3 min read

前提条件:

  1. 安装 huggingface-cli:
    pip install huggingface_hub
    
  2. 了解模型在 Hugging Face Hub 上的位置: 你需要知道模型仓库名称和 GGUF 文件名。GGUF 文件通常以 .gguf 结尾。

步骤:

  1. 登录 Hugging Face (可选但推荐):

    huggingface-cli login
    

    按照提示输入你的 token (在 Hugging Face 网站的 “Settings” -> “Access Tokens” 中创建或找到)。

  2. 使用 huggingface-cli download 命令下载 GGUF 文件:

    huggingface-cli download <repository_id> <filename> --local-dir <destination_directory> --local-dir-use-symlinks False
    

    参数解释:

    • <repository_id>: Hugging Face Hub 上模型的仓库 ID (例如 TheBloke/Llama-3-8B-Instruct-GGUF).
    • <filename>: 你想要下载的 GGUF 文件的确切文件名 (例如 llama-3-8b-instruct.Q4_K_M.gguf).
    • --local-dir <destination_directory>: 你希望将 GGUF 文件保存到的本地目录 (例如 ~/models/llama3).
    • --local-dir-use-symlinks False: 设置为 False 以完整复制文件。

    示例:

    huggingface-cli download TheBloke/Llama-3-8B-Instruct-GGUF llama-3-8b-instruct.Q4_K_M.gguf --local-dir ~/models/llama3 --local-dir-use-symlinks False
    

    查找 GGUF 文件名:

    • 访问模型在 Hugging Face Hub 上的页面。
    • 浏览 “Files and versions” 标签。
    • 找到以 .gguf 结尾的文件并复制其确切名称。
  3. 为 Ollama 创建 Modelfile (如果需要):

    在与 GGUF 文件相同的目录下创建一个名为 Modelfile 的文本文件,并添加内容:

    FROM ./<你的GGUF文件名>.gguf
    

    <你的GGUF文件名>.gguf 替换为实际下载的 GGUF 文件名。

    示例 Modelfile (假设 GGUF 文件是 llama-3-8b-instruct.Q4_K_M.gguf~/models/llama3 目录下):

    FROM ./llama-3-8b-instruct.Q4_K_M.gguf
    
  4. 使用 Ollama 运行模型:

    导航到包含 GGUF 文件和 Modelfile 的目录 (例如 cd ~/models/llama3),然后创建 Ollama 模型:

    ollama create <你的模型名称> -f ./Modelfile
    

    <你的模型名称> 替换为你希望在 Ollama 中使用的模型名称 (例如 llama3-instruct-q4).

    运行模型:

    ollama run <你的模型名称>
    

    例如:

    ollama run llama3-instruct-q4
    

    根据 Ollama 的文档和常见实践,模型名称通常需要满足以下条件:

    • 只能包含小写字母、数字和连字符 (-)。
    • 不能包含大写字母。
    • 不能包含下划线 (_) 或其他特殊字符。
    • 不能为空。

总结:

使用 huggingface-cli download 下载 GGUF 文件,创建 Modelfile 指向该文件,然后使用 ollama createollama run 在 Ollama 中运行模型。请确保文件名和路径正确。

Last updated on 2025-04-19