大家好,我是超哥。今天给大家分享 Bonsai2 9B 超轻量多模态 AI 大模型的本地部署教程!它最大的亮点就是模型体积极小,同时支持多模态视觉理解和 MTP 推理加速技术,并支持最高 262K 超长上下文,兼顾轻量化部署与长文本处理能力。今天我们将使用 llama.cpp 在本地部署这个模型,并接入 Hermes Agent,实现工具调用等 Agent 功能。下面我们开始教程!

博主电脑环境
显卡:NVIDIA RTX 4080 SUPER(16GB)
CPU:AMD R9 7900X 12-Core Processor(12核)
内存:64GB DDR5(3600 MHz)
一、Bonsai2 9B 大模型下载
Hugging Face模型下载地址:https://huggingface.co/prism-ml/Ternary-Bonsai-2-9B-gguf
夸克网盘模型下载地址:https://pan.quark.cn/s/1369ae1d6daa?pwd=a68E
电脑配置模型选择推荐:
| 模型版本 | 文件大小 | 适用显存 | 推荐说明 |
|---|---|---|---|
| PTQ1_0 | 2.00 GB | 4GB 及以上 | 超低体积版本,适合优先考虑模型大小的用户 |
| PQ2_0 | 2.42 GB | 4GB 及以上 | 轻量压缩版本,适合低资源本地部署 |
| Q2_0 | 2.56 GB | 4GB 及以上 | 常规量化版本,可用于对比不同量化格式的效果 |
| PQ2_0-MTP-Q8_0 | 2.68 GB | 4GB 及以上 | 集成 MTP 相关组件,适合测试推测解码加速效果 |
| DFlash2-Q8_0 | 1.57 GB | 4GB 及以上 | DFlash2 相关模型文件,需按对应方法配置运行,不能直接当作普通主模型使用 |
| mmproj-Q8_0 | 624 MB | 视主模型而定 | Q8_0 视觉投影模块,用于支持多模态图片理解 |
| mmproj-BF16 | 922 MB | 视主模型而定 | BF16 视觉投影模块,用于支持多模态图片理解 |
二、下载并配置专属 llama.cpp
1、下载专属 llama.cpp
Github项目下载地址:https://github.com/PrismML-Eng/llama.cpp/releases
夸克网盘项目下载地址:https://pan.quark.cn/s/5cd83ec9d4f1?pwd=DAup

2、Bonsai2 9B 接入 llama.cpp
把下载到的大模型放到 llama.ccp 程序的根目录下的 models 目录里(需自行创建目录)
3、配置启动脚本
llama.ccp 程序的根目录创建启动脚本,命名成:启动.bat
@echo off chcp 65001 >nul title Ternary-Bonsai-2-9B-MTP-Q8_0 - llama.cpp cd /d "%~dp0" echo. echo ======================================== echo XChaoGe.Com echo llama.cpp Local AI Server echo ======================================== echo. echo Model: Ternary-Bonsai-2-9B echo. llama-server.exe ^ -m "models\模型名" ^ --mmproj "models\Ternary-Bonsai-2-9B-mmproj-BF16.gguf" ^ --host 127.0.0.1 ^ --port 8085 ^ -c 65536 ^ -ngl 99 ^ --fit on ^ -fa on ^ --jinja ^ --reasoning off ^ --parallel 1 ^ --alias Ternary-Bonsai-2-9B ^ --temp 0.7 ^ --top-k 20 ^ --top-p 0.8 ^ --min-p 0 ^ --repeat-penalty 1.0 ^ --presence-penalty 1.5 ^ --repeat-last-n 64 ^ --spec-type draft-mtp ^ --spec-draft-n-max 2 ^ --spec-draft-n-min 0 ^ --spec-draft-p-min 0 ^ -n 65536 pause
注意:如果不使用MTP加速的量化模型版本,去掉下面四个参数:
--spec-type draft-mtp ^
--spec-draft-n-max 2 ^
--spec-draft-n-min 0 ^
--spec-draft-p-min 0 ^
访问控制面板 URL:
参数说明:
| 参数 | 设置 | 说明 |
|---|---|---|
| -m | 模型文件名 | 指定 Bonsai 2 9B 主模型,采用 PQ2_0 量化及 MTP Q8_0 版本 |
| --mmproj | 多模态文件名 | 加载多模态投影模块,启用图片识别与理解能力 |
| --host | 127.0.0.1 | 仅允许本机访问服务 |
| --port | 8085 | 设置 llama.cpp 服务端口,可通过浏览器访问本地 Web 界面 |
| -c | 65536 | 默认上下文长度为 65536 Token,最大262144上下文 |
| -ngl | 99 | 尽可能将模型层卸载到 GPU,利用显卡加速推理 |
| --fit | on | 自动调整模型加载参数,尽可能适配可用显存和内存 |
| -fa | on | 启用 Flash Attention,优化注意力计算效率和显存使用 |
| --jinja | 开启 | 启用 Jinja 聊天模板处理 |
| --reasoning | off | 关闭推理输出模式;具体效果取决于当前 llama.cpp 版本及模型模板 |
| --parallel | 1 | 设置并行处理槽位为 1,优先用于单会话推理 |
| --alias | Ternary-Bonsai-2-9B | 设置 API 中显示的模型名称 |
| --temp | 0.7 | 控制生成内容的随机性,数值越高通常生成结果越有变化 |
| --top-k | 20 | 每一步采样时限制候选 Token 数量 |
| --top-p | 0.8 | 通过累计概率限制候选 Token 的采样范围 |
| --min-p | 0 | 设置最小概率采样阈值为 0,不额外过滤候选 Token |
| --repeat-penalty | 1.0 | 重复惩罚系数为 1.0,不额外惩罚重复内容 |
| --presence-penalty | 1.5 | 对已经出现过的 Token 施加存在惩罚,降低重复话题或内容的概率 |
| --repeat-last-n | 64 | 在最近 64 个 Token 范围内检查重复内容 |
| --spec-type | draft-mtp | 启用 MTP 推测解码模式 |
| --spec-draft-n-max | 2 | 设置每轮推测解码最多预测 2 个候选 Token |
| --spec-draft-n-min | 0 | 设置每轮推测解码的最少候选 Token 数量为 0 |
| --spec-draft-p-min | 0 | 设置推测解码的最小概率阈值为 0 |
| -n | 65536 | 输出token数量,与 -c 参数值保持一致即可 |
三、接入 Hermes Agent
Hermes Agent 下载地址:https://hermes-agent.nousresearch.com/

OpenAI api 参数:
API 秘钥: 随便填一个
Base URL:http://127.0.0.1:8085/v1