
llamafile 如何把 GGUF 权重和 .args 参数打包成自定义单文件可执行【免费下载链接】llamafileDistribute and run LLMs with a single file.项目地址: https://gitcode.com/GitHub_Trending/ll/llamafile如果你已经有一个 GGUF 格式的模型权重希望它不依赖外部文件就能在别人的机器上直接运行llamafile 提供了官方支持的打包方式用zipalign工具把 llamafile 可执行文件、GGUF 权重和一份.args默认参数文件捆绑成一个自包含的单文件可执行程序。打包用的容器格式是 APEActually Portable Executable它把 ZIP 作为附加数据的容器。完成后的产物是一个.llamafile文件拷走即可运行不需要再单独放模型。本文以文档中的实际示例Qwen3-0.6B 文本模型为主路径讲清打包步骤、.args文件写法、打包结果的验证方式以及分发时的注意事项。准备工作拿到 llamafile 可执行文件和 zipalign 工具打包需要两样东西llamafile 可执行文件从 llamafile 的 releases 页下载预编译版本或者按 source_installation.md 的说明从源码编译。zipalign 工具llamafile 用它把文件捆绑进可执行文件。zipalign 作为 git submodule 随 llamafile 一起构建如果你已经编译过 llamafile可执行文件就在o//third_party/zipalign目录下单独构建它只需执行make o//third_party/zipalign注意这里的 zipalign不是Android 平台的 zipalign 工具两者无关。另外准备GGUF 格式的模型权重文档示例使用的是 Qwen3-0.6B 的 Q8_0 量化版从 Hugging Face 的 GGUF 模型库搜索下载文件名Qwen3-0.6B-Q8_0.gguf。如果你已有其他应用如 Ollama、LM Studio下载到本地的 GGUF 模型也可以直接复用。编写 .args 默认参数文件.args文件指定 llamafile 启动时的默认参数。规则来自 creating_llamafiles.md一个参数占一行模型名-m是唯一必填项其余参数均可选凡是引用打进 llamafile 内部的文件路径必须加/zip/前缀文件末尾的...是一个特殊标记运行时会被用户额外传入的命令行参数替换这样打包出来的 llamafile 仍允许调用者覆盖默认参数。文档示例中用于 Qwen3-0.6B 的.args内容如下其余参数是该模型建议的采样参数可按需增删-m /zip/Qwen3-0.6B-Q8_0.gguf -fa on --temp 0.6 --top-k 20 --top-p 0.95 --min-p 0 --presence-penalty 1.5 -c 40960 -n 32768 --no-context-shift --no-mmap ...执行打包把 llamafile 可执行文件复制为目标文件然后用zipalign依次嵌入权重文件和.args文件cp o//llamafile/llamafile Qwen3-0.6B-Q8.llamafile o//third_party/zipalign/zipalign -j0 \ Qwen3-0.6B-Q8.llamafile \ Qwen3-0.6B-Q8_0.gguf \ .args ./Qwen3-0.6B-Q8.llamafilezipalign的第一个参数是被嵌入的目标文件也就是复制出来的 llamafile后面依次是要嵌入的文件。嵌入完成后./Qwen3-0.6B-Q8.llamafile就是一个自包含的可执行程序运行时会自动加载内嵌的模型权重并应用.args中的默认参数。在 macOS、Linux、BSD 上首次运行前需要先给文件加执行权限与运行预构建 llamafile 相同chmod x Qwen3-0.6B-Q8.llamafileWindows 用户则需要在文件名末尾加上.exe后缀才能执行。验证打包结果有两种验证方式检查嵌入内容llamafile 本质上支持用 ZIP 工具查看执行unzip -vl Qwen3-0.6B-Q8.llamafile即可列出打包进可执行文件的数据Windows 上可把文件改名为.zip后用 ZIP 工具查看。列表中出现Qwen3-0.6B-Q8_0.gguf和.args说明嵌入成功。直接运行按上面的命令启动后llamafile 会进入 TUI 聊天界面并开始加载 Qwen 模型——文档中把这一步描述为你刚刚做出了一个可以分享给朋友的 LLM 可执行程序。如果希望以 HTTP 服务形式运行而不是 TUI加--server参数即可./Qwen3-0.6B-Q8.llamafile --server可选分支打包多模态模型并直接起服务同一个流程也适用于多模态模型区别只是.args里多加一个--mmproj指向视觉投影权重并把--server写进.args这样双击运行就自动起 Web 服务。文档以 llava v1.6 mistral 7b 为例.args内容-m /zip/llava-v1.6-mistral-7b.Q8_0.gguf --mmproj /zip/mmproj-model-f16.gguf --server --host 0.0.0.0 -ngl 9999 --no-mmap ...然后同时嵌入主权重、视觉投影权重和参数文件cp o//llamafile/llamafile llava.llamafile o//third_party/zipalign/zipalign -j0 \ llava.llamafile \ llava-v1.6-mistral-7b.Q8_0.gguf \ mmproj-model-f16.gguf \ .args ./llava.llamafile分发与限制标注来源版本文档建议把自建 llamafile 发布到 Hugging Face 分享时在提交信息中注明构建所用的 llamafile git 修订号或发布版本号方便他人核验可执行部分的来源如果你修改过 llama.cpp 或 Cosmopolitan 源码Apache 2.0 许可证要求你说明改动内容——一种做法是用zipalign把一份说明改动的内容嵌入 llamafile 本身。Windows 4GB 限制Windows 对可执行文件大小有 4GB 上限权重较大时打包产物可能超限而无法在 Windows 上运行。文档给出的替代路径是外部权重模式只下载不带权重的 llamafile 软件本体运行时用-m 权重文件指向外部 GGUF详见 quickstart.md 的 Using llamafile with external weights 一节。更多可用的 llamafile 命令行参数即可以写进.args的选项参考 cli_arguments.md构建细节可进一步查阅 source_installation.md。【免费下载链接】llamafileDistribute and run LLMs with a single file.项目地址: https://gitcode.com/GitHub_Trending/ll/llamafile创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考