@MiaAI_lab:如果你在寻找一个简单的启动/停止脚本来运行你的 Qwen3.6 27B/35B,可以看看这个。它针对速度进行了优化……
摘要
MiaAI-Lab 提供了一个简单的 Bash 启动/停止脚本,用于通过 llama-server 运行 Qwen3.6 27B/35B GGUF 模型,针对速度和编码性能进行了优化。
查看缓存全文
缓存时间: 2026/06/28 22:16
如果你正在寻找一个简单的启动/停止脚本来运行你的 Qwen3.6 27B/35B 模型,可以看看这个。它针对速度和编码性能进行了优化。
只需在启动脚本中替换 GGUF 文件名即可。
https://t.co/gE3DAACokJ
MiaAI-Lab/DGX_Spark_Qwen_3.6_27b_35b_GGUF_start_script
来源:https://github.com/MiaAI-Lab/DGX_Spark_Qwen_3.6_27b_35b_GGUF_start_script
llama-server 启动器
Bash 脚本,用于启动和停止来自 llama.cpp (https://github.com/ggml-org/llama.cpp) 的 llama-server (https://github.com/ggml-org/llama.cpp),运行本目录下的本地 GGUF 模型。
它处理二进制文件检测,防止重复实例,等待服务器健康就绪,并在关闭终端后保持后台运行。
特性
- 自动检测
llama-server二进制文件(PATH、附近的build/bin路径,或本地llama-server软链接/二进制文件) - 可选的
LLAMA_SERVER_PATHS环境变量覆盖自定义搜索路径 - PID 文件管理,清理过期进程
- 健康检查轮询(
/health端点),直到准备就绪 - 通过
nohup实现持久化日志和后台执行 - 在
start.sh顶部简单设置 GGUF 文件 - 兼容 OpenAI 的 API(
/v1端点) - 配套的
stop.sh脚本用于优雅关闭
要求
- Linux
bashcurl- 包含
llama-server二进制文件的已编译llama.cpp构建 - 足够的 RAM / VRAM 来运行你的模型和上下文窗口
快速开始
# 1. 给脚本添加可执行权限
chmod +x start.sh stop.sh
# 2. 将你的 .gguf 模型放在脚本旁边,或者更新 start.sh 顶部的 GGUF_FILE 变量
# 3. 启动服务器
./start.sh
当显示 “llama-server is ready” 时,你就可以使用兼容 OpenAI 的端点:
http://localhost:8000/v1
停止服务器
./stop.sh
这会优雅地停止正在运行的服务器,等待干净关闭,并删除 PID 文件。如果 PID 文件丢失或过期,它会回退到查找在端口 8000 上运行此模型的匹配 llama-server 进程。
配置
GGUF 文件
在 start.sh 顶部设置模型文件:
GGUF_FILE="${GGUF_FILE:-Qwen3.6-35B-A3B-UD-Q8_K_XL.gguf}"
相对路径会根据 start.sh 所在的目录解析。
你也可以在不修改文件的情况下,为单次运行覆盖模型名:
GGUF_FILE=other-model.gguf ./start.sh
旧的 MODEL 覆盖变量仍然有效,并且优先级高于 GGUF_FILE:
MODEL=llama-3.1-70b-Q4_K_M.gguf ./start.sh
其他设置
| 设置项 | 默认值 | 修改方式 |
|---|---|---|
LLAMA_SERVER_BIN | 自动检测 | 设置环境变量 |
LLAMA_SERVER_PATHS | 自动检测的搜索列表 | 设置冒号分隔的路径 |
HOST | 0.0.0.0 | 编辑 start.sh |
PORT | 8000 | 编辑 start.sh |
PID_FILE | .llama-server.pid | 编辑 start.sh / stop.sh |
LOG_FILE | .llama-server.log | 编辑 start.sh |
示例:
LLAMA_SERVER_BIN=~/llama.cpp/build/bin/llama-server ./start.sh
如果你想提供自定义的搜索列表而不是单个显式二进制文件,可以设置 LLAMA_SERVER_PATHS 为冒号分隔的列表:
LLAMA_SERVER_PATHS="$HOME/llama.cpp/build/bin/llama-server:$HOME/bin/llama-server:/opt/llama/bin/llama-server" ./start.sh
要更改端口,编辑 start.sh 中的这行:
PORT="8000"
自定义服务器参数
所有 llama-server 参数都在 start.sh 内定义(在 nohup 行附近)。你可能想修改的常见选项:
--ctx-size--temperature、--top-p、--top-k- 推测解码设置(
--spec-type、--spec-draft-*) --chat-template-kwargs
直接编辑脚本然后重启即可。
工作原理
start.sh 执行以下操作:
- 检查是否已有健康的实例在运行,如果是则提前退出
- 清理过期的 PID 文件 / 进程
- 使用
nohup在后台启动llama-server - 每 5 秒轮询
http://127.0.0.1:8000/health直到准备就绪 - 打印就绪消息和 OpenAI 基础 URL
stop.sh 执行以下操作:
- 从
.llama-server.pid读取 PID - 如果 PID 文件丢失、无效或过期,则回退到查找匹配的
llama-server进程 - 发送
SIGTERM进行优雅关闭 - 最多等待 15 秒
- 仅在必要时使用
SIGKILL强制终止 - 清理 PID 文件
脚本创建的文件:
.llama-server.log- 服务器输出日志.llama-server.pid- 进程 ID 文件
推荐的目录布局
./
├── llama-server
├── start.sh
├── stop.sh
├── Qwen3.6-35B-A3B-UD-Q8_K_XL.gguf
└── README.md
llama-server 可以是二进制文件,也可以是指向你 llama.cpp 构建的软链接。脚本会首先检查 LLAMA_SERVER_PATHS(如果设置),然后检查 PATH、./build/bin/llama-server、../build/bin/llama-server、../../build/bin/llama-server,以及脚本附近的本地 llama-server 路径。它还会检查几个常见的主目录位置。
故障排除
“error: llama-server not found”
显式设置完整路径:
LLAMA_SERVER_BIN=/path/to/llama-server ./start.sh
服务器启动但从未变为 “ready”
查看日志:
tail -n 100 .llama-server.log
常见原因:内存不足、你的 llama.cpp 构建不支持某些参数、或模型加载失败。
端口已被占用
修改 start.sh 中的 PORT,然后重新启动服务器。
默认端口是 8000。
兼容性
- 需要支持
start.sh中使用的参数的llama-server构建 - 应该在安装了
bash和curl的现代 Linux 发行版上工作
许可证
MIT
专为使用 llama.cpp 便捷提供本地 LLM 服务而制作。
相似文章
Qwen3.6 27b / llama.cpp / opencode 最佳配置
社区讨论帖,分享在多 GPU 环境下运行 27B Qwen3.6 GGUF 模型、支持 100K-512K 长上下文的 llama.cpp 优化启动命令。
@ggerganov:llama-server -hf ggml-org/Qwen3.6-27B-GGUF --spec-default
Georgi Gerganov 分享了一条一行命令,用 llama-server 以默认投机解码设置启动量化版 27B Qwen3.6 模型。
本地运行 Qwen3.6-35B-A3B 作为编码 Agent:我的完整部署与可用配置
一份详尽指南,教你如何在 Apple Silicon 上通过 llama.cpp 本地运行 350 亿参数 Qwen3.6 模型,并驱动 pi 编码 Agent,附带优化后的启动参数与采样配置。
@_lewtun: 你现在可以在笔记本上免费全天候运行 AI 研究员了!使用 llama.cpp 和 4-bi…
本文重点介绍了如何在本地笔记本上使用 llama.cpp 和 Unsloth 4-bit 量化免费运行 Qwen3-35B-A3B。
Qwen 3.6 27B:本地开发的理想之选
Qwen 3.6 27B 被赞誉为强大的本地 AI 模型,在通用智能方面超越预期,适用于代码生成等实际任务,并能通过 llama.cpp 轻松运行。