拓冰建站拓冰建站
首页 / 资讯中心 / 正文

如何加速本地大模型首字延迟:Bonsai-demo -ub 微批参数完整指南(Metal 1024 预填充提速)

如何加速本地大模型首字延迟Bonsai-demo -ub 微批参数完整指南Metal 1024 预填充提速【免费下载链接】Bonsai-demoBonsai Demo项目地址: https://gitcode.com/GitHub_Trending/bo/Bonsai-demoBonsai-demo 让你在一台 Mac 上免费运行 Bonsai 超低比特本地大模型1-bit / 三值量化27B 模型仅 3.5 GB 即可跑视觉 工具调用。本文只讲一个参数-ubprefill 微批处理——在 Apple Silicon 的 Metal 后端上把微批从默认的 512 调到 1024部分场景下能明显加快预填充阶段也就是从你按下回车到看见第一个字的等待时间。什么是预填充Prefill它为什么慢一次回答分两个阶段预填充Prefill模型一次性读完你的全部提示词含多轮对话历史、MCP 工具 schema、图片视觉 token产出第一个 token解码Decode逐字生成后续内容。提示词越长长上下文、上传大图、挂载多个 MCP 工具预填充耗时占比越高。响应里的timings对象可以直接验证prompt_ms就是编码 预填充耗时predicted_per_second是解码速度见 AGENTS.md 的验证说明。-ub 参数预填充微批是什么-ub N是 llama.cpp 的prefill microbatch预填充微批大小参数把长提示词切成每块 N 个 token 的小批次依次送进 GPU。llama.cpp 默认值是512。为什么切小块反而可能更快Metal 上 GPU 每个 kernel 都有启动开销激活缓冲区也随批块大小变化对某些硬件 模型组合512 的块尺寸不能打满 GPU而 1024 恰好匹配算力与带宽的平衡点吞吐就升上去了。为什么特别关注 Metal 平台 1024官方 Agent 指南中对这个参数的原话是-ub N— Prefill microbatch (default 512) —Sometimes faster prefill on Metal at 1024; measureMetal 上 1024 有时预填充更快请先实测见 AGENTS.md 的Knobs that matter表格。要点这是经验性结论而非保证官方明确要求在你的硬件上实测后再下结论同一表格其他行 AGENTS.md收益主要体现在长提示词场景多轮长对话、27B 图片输入单图最多约 4096 个视觉 token、挂载 MCP 工具的新聊天短提示词几百 token 以内通常一个微批就跑完了调不调-ub差异很小。一键启用步骤给启动脚本追加 -ub 1024Bonsai-demo 的独立 llama-server 启动脚本会把尾部参数原样透传给 llama-server.sh末尾的$见 scripts/start_llama_server.sh所以一行命令即可./scripts/start_llama_server.sh -ub 1024也可以和其他常用 flag 组合例如限视觉 token 上限./scripts/start_llama_server.sh --image-max-tokens 1024 -ub 1024Windows PowerShell 用户对应 scripts/start_llama_server.ps1.\scripts\start_llama_server.ps1 -ub 1024⚠️ 注意只有独立 llama-server 启动器支持透传。start_openwebui.sh的尾部参数是转发给 Open WebUI 的-ub在那里不生效——参数透传规则详见 environment_variables.md。如何测量三步验证是否真的更快看 API 响应任意请求如curl http://localhost:8080/props或发起一次补全返回的 JSON 都带timings对象对比prompt_ms即可用 llama-bench仓库自带的预编译二进制里就有llama-benchpp512测试项就是预填充 512 token 的吞吐社区基准用它横向对比控制变量同一模型、同一上下文长度、同一图片只改-ub值各跑一轮再比。社区实测的 Metal 基线数据可作参考硬件模型pp512 预填充 (t/s)来源M4 Pro 48 GBBonsai-8B487metal-m4-pro-48gb-macos.mdM4 Pro 48 GBBonsai-4B888同上M5 Max 48 GBBonsai-27B (1-bit)~796metal-m5-max-48gb-macos.md如果你的-ub 1024让prompt_ms明显下降欢迎按 community-benchmarks/ 下的模板提交结果。常见疑问清单 Q为什么我调了 -ub 1024 反而变慢A微批大小是硬件相关经验值。官方结论就是sometimes faster有时更快。请以自己机器上prompt_ms实测为准不行就回退默认 512。Q短对话有必要开吗A几百 token 的提示词一个微批就处理完几乎无差别长上下文、图片、多轮 工具场景才值得开。QMetal 预填充慢还有别的坑吗A先检查 macOS低电量模式会大幅降频见 AGENTS.md 行为笔记M5 特定 macOS 26 版本若报error compiling source按 README FAQ 加GGML_METAL_TENSOR_DISABLE1保留完整 Metal 速度。Q27B 默认上下文很大会不会吃内存A脚本按内存分档自动选上下文8K~131KFP16 KV 每 token 约 64 KiB极长上下文可搭配BONSAI_KV414-bit KV 缓存详见 KV-CACHE.md。快速上手回顾# 克隆如需从仓库重新获取 git clone https://gitcode.com/GitHub_Trending/bo/Bonsai-demo cd Bonsai-demo ./setup.sh # 一键装依赖 下载 Ternary-Bonsai-27B ./scripts/start_llama_server.sh -ub 1024 # 浏览器打开 http://localhost:8080 一句话总结短提示词不用管-ub长提示词、图片、多轮工具流在 Metal 上试试-ub 1024并用timings.prompt_ms验证收益——Bonsai-demo 的设计就是让所有参数零配置起步、随时透传调优。【免费下载链接】Bonsai-demoBonsai Demo项目地址: https://gitcode.com/GitHub_Trending/bo/Bonsai-demo创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门