@malikwas1f: Ornith-1.0-35B:一个Qwen3.6-35B-A3B的编码微调版本,在真实编码上略优于基础模型(aider 15/30 vs 13)——完整262K…
摘要
宣布Ornith-1.0-35B,一个Qwen3.6-35B-A3B的编码微调版本,在aider基准测试上略优于基础模型。同时推广用于在RTX 3090上运行LLM的club-3090仓库。
查看缓存全文
缓存时间: 2026/06/26 10:10
🧠 Ornith-1.0-35B:基于 Qwen3.6-35B-A3B 的编码微调模型,在真实编码任务上略胜基础模型(aider 15/30 vs 13)—— 完整 262K 上下文,在 2× RTX 3090 上约 109 tok/s,因为它是 3B 激活参数的 MoE。真实评估 + 与基础模型正面对决 👇 https://t.co/vV6XRU2arS
noonghunna/club-3090
来源:https://github.com/noonghunna/club-3090
club-3090
在 RTX 3090 上本地运行 LLM 的配方指南。
多引擎(vLLM、llama.cpp、ik_llama)、多模型,设计上与模型无关。如果你有一到两块 RTX 3090,并希望在家、家庭实验室或作为开发后端运行现代 LLM,这个仓库汇集了可工作的配置、补丁和基准测试。
🎯 拥有 4090 或 5090? 这些配置支持跨设备运行——贡献者已经用实测数据对两者进行了测试:我能用 4090 吗?→ · 我能用 5090 吗?→。工具链针对 3090 校准,但配置区分了型号;各型号的注意事项(4090 更紧的闲置显存、5090 的 32 GB 限制)以及跨设备基准行都在 FAQ 中。
🎨 也想生成图像? 图像工作室套件 可在两张 GPU 上同时运行 Ideogram-4 图像生成 + 聊天模型 + Open WebUI——一条命令:
bash scripts/setup-image-studio.sh。
快速开始
🪟 在 Windows 上? 以下步骤假设使用 Linux/macOS。请先设置 WSL2 → docs/WSL_SETUP.md(从头到尾)。原生 Windows 仅运行 上游 llama.cpp 二进制——本仓库的工具链均不适用。
# 1. 克隆仓库
git clone https://github.com/noonghunna/club-3090.git
cd club-3090
# 配置文件兼容性工具需要 PyYAML。Ubuntu LTS 通常通过 python3-yaml 提供;
# 否则运行:python3 -m pip install pyyaml
# 2. 选择/下载 + SHA 验证模型(交互式硬件感知选择器)
# (询问你选择哪个模型,然后模型权重放在哪里——选择仓库内默认路径、
# ~/models,或不同驱动器上的自定义路径。要跳过提示:`export MODEL_DIR=/path/to/models` 并传递模型名称。详见 FAQ。)
bash scripts/setup.sh
# 或脚本方式:
# bash scripts/setup.sh qwen3.6-27b
# 3. 选择配置并启动(交互式向导:询问模型 → GPU → 项目显存预算)
bash scripts/launch.sh
# 或让解析器为你的模型 + 硬件选择(.env 固定 ‖ 默认推荐):
# bash scripts/launch.sh --variant qwen3.6-27b/default # 该模型的默认配置
# 或跳过向导,直接指定配置:
# bash scripts/launch.sh --variant beellama/dflash # 单卡 BLESSED 默认 —— 代码快速(~100 代码 / 50 叙述 TPS),DFlash 推测解码(⚠️ 非官方多架构镜像;sm_89/120 未验证——见 docs/INFERENCE_ENGINES.md)
# bash scripts/launch.sh --variant ik-llama/iq4ks-mtp # 单卡 BALANCED 替代 —— ~63/69 TPS,200K 上下文 + 视觉,显存最节省(ik_llama IQK 量化)
# bash scripts/launch.sh --variant llamacpp/default # 单卡抗悬崖替代 —— 200K @ -ub 512,~51/60 TPS
# bash scripts/launch.sh --variant llamacpp/mtp-vision # 单卡 49K + MTP + 视觉
# bash scripts/launch.sh --variant vllm/dual # 双卡 262K + 视觉(vLLM 单卡路径在 #167 上阻塞)
# 或部分标志(向导填充其余):
# bash scripts/launch.sh --model qwen3.6-27b --gpus 0,1
# bash scripts/launch.sh --tp 2 --pp 1 # 覆盖 vLLM 并行度
# 查看本机可运行的变体及每个模型的默认视图
# (按 GPU 数量过滤硬件;添加 --all 查看所有变体):
# bash scripts/switch.sh --list # 本机可运行
# bash scripts/switch.sh --list --all # 所有
# 固定自己的默认值,使 bare `launch.sh` 直接启动:
# bash scripts/switch.sh --set-default ik-llama/iq4ks-mtp # 例如,偏好均衡的 ik-llama 路径而非 beellama 默认;清除:--clear-default qwen3.6-27b
# 4. 冒烟测试(启动器已经打印了此 curl 命令)
curl -sf http://localhost:8020/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{"model":"qwen3.6-27b-autoround","messages":[{"role":"user","content":"Capital of France?"}],"max_tokens":200}'
# 5. 运行标准基准测试
bash scripts/bench.sh
# 6. 之后切换,无需重新运行向导:
bash scripts/switch.sh vllm/long-vision # 例如
# 7. 保持安装为最新(Genesis 版本更新、新 compose 变体、补丁更新):
bash scripts/update.sh
launch.sh 会调用 switch.sh(停止旧配置,启动新配置),然后执行 verify-full.sh,以便你在指向客户端之前确保服务正常运行。所有辅助脚本见 scripts/。
喜欢屏幕界面而非命令行?—— 服务驾驶舱 (c3)
c3 是一个类似 lazydocker 的终端 UI,它将同一个流程 —— 发现 → 服务 → 操作 → 验证 —— 集成在一个键盘驱动的驾驶舱中:浏览目录并用 ⏎ 启动一个变体,查看实时 GPU / 场景 / 容器,运行 Doctor 健康检查,以及(生产者通道)走通添加模型的流程。
# 从仓库目录安装(驾驶舱 + 仓库内核心包):
uv pip install -e tools/serve-cockpit # 使用 uv(推荐——一条命令)
# ...或普通 pip:
pip install -e tools/tui-core && pip install -e tools/serve-cockpit
c3 # 启动(也可:python -m club3090_cockpit)
首次运行: 按 S → 设置 Model Dir(权重下载位置)+ HuggingFace token → Ctrl+S 保存;然后按 r 浏览目录并启动一个服务。c3 --lean(或应用内 [C])隐藏生产者通道,仅显示消费者视图。执行 git pull 后,重新运行安装命令以获取新依赖和 UI 更改。完整快捷键及详情 → tools/serve-cockpit/。
⚠️ 单卡长上下文注意: Cliff 2(在 >~50K 单提示时 GDN 预填充 OOM)在 24 GB 单卡 vLLM 上仍然存在。Genesis v7.72.2 PN59 本应修复,但未在分块预填充中生效。解决方法:
vllm/dual(TP=2 可避开)或llamacpp/default(不同引擎,无悬崖)。完整诊断见docs/CLIFFS.md。
简而言之 —— 这是什么
- 两条互补路线 —— 根据你的工作负载选择:
- 🏎 vLLM 双卡 = 最大吞吐量。最高 127 TPS 代码(DFlash)或 4 并发流 @ 262K(turbo)。完整功能栈(视觉·工具·MTP·流式)。
- 🛡 llama.cpp 单卡 = 最大鲁棒性。单张 3090 上 完整 200K 上下文(最大安全——边界充足,见 CLIFFS)。经过压力测试:无预填充悬崖,25K 令牌工具返回正常,91K needle 阶梯测试通过。~51 / 60 TPS(Q4_K_M + MTP)—— 比 vLLM 双卡慢,但在真实使用工具的 agent 上不会崩溃。
- 经过验证的 Docker compose 配置,适用于两条路线 —— 内嵌 OpenAI 兼容 API,端口
localhost:8020 - 多引擎:vLLM(完整功能)、llama.cpp(最大上下文+鲁棒性)、ik_llama(最佳 GGUF 量化)。(已评估 SGLang —— 目前在 Ampere 上受阻;见
docs/engines/SGLANG.md。) - 与模型无关:目前提供 Qwen3.6-27B 及其同类模型的精选配置;结构随模型添加而扩展
- 通用
pull(v0.8.0,v0.8.2 扩展)—— 评估任何 safetensors HF 仓库,获得诚实的单行适配结论(--recommend),当 pull 硬阻塞时,在同意后一步发送脱敏诊断(--submit-last)。每次发布扩大架构覆盖范围。见docs/PULL.md
刚接触本地 AI? → docs/LOCAL_AI_PRIMER.md —— 白话英语:硬件 / 引擎 / 模型大小 / 量化如何配合。
新用户? → docs/GETTING_STARTED.md —— 5 分钟从克隆到 curl。
已在运行,想比较引擎? → docs/engines/
选择引擎(vLLM / llama.cpp / ik_llama)? → docs/INFERENCE_ENGINES.md
量化名称令你困惑(Q4_K_M vs IQ4_KS vs AWQ)? → docs/QUANTIZATION.md
硬件问题(4090、NVLink、功率限制)? → docs/HARDWARE.md
不知道 TPS / KV / MTP 是什么意思? → docs/GLOSSARY.md
选择你的路径
| 你拥有 | 从这里开始 |
|---|---|
| 1× RTX 3090 | docs/SINGLE_CARD.md —— 工作负载 → 配置 → 快速开始 |
| 2× RTX 3090(PCIe / NVLink 自动检测) | docs/DUAL_CARD.md —— 工作负载 → 配置 → 快速开始 |
| 3+ GPU(任何型号 —— 4× 3090、8× A6000、混合) | docs/MULTI_CARD.md —— TP 缩放数学、从 dual.yml 推导、有效 TP 值 |
| 不在支持列表中的模型 / 任何 HF safetensors 仓库 | docs/PULL.md —— 通用 pull 流程:根据 KV 数学进行评估,诚实地说明置信度 |
| 考虑自托管 vs 云 API | docs/COMPARISONS.md —— 成本交叉点 + 各自的优势 |
每个硬件页面列出该卡数下的所有支持模型及其可用配置,加上实测 TPS 和每种工作负载的陷阱。特定模型的深度分析(量化、Genesis 补丁、引擎内部)位于 models/<model>/ 下。
支持模型
| 模型 | 状态 | 卡数 | 引擎 | 亮点 |
|---|---|---|---|---|
| Qwen3.6-27B | 生产就绪 ⭐ | 1× / 2× 3090 | vLLM ✅ · llama.cpp ✅ · ik_llama ✅ | 视觉·工具·MTP n=3 · 最高 262K 上下文 · vLLM 双卡 = 89/127 TPS · llama.cpp 单卡 = 200K 最大安全,无预填充悬崖 · ik_llama IQ4_KS = ~60/69 TPS(最快的单卡) |
| Gemma 4 31B | 生产就绪 | 1× 1 / 2× 3090 | vLLM ✅(双卡)· llama.cpp ⚠️(社区分支;主线因 FA hdim=512 受阻) | 视觉·工具·MTP n=3(Google 官方草稿模型)或 DFlash n=7(z-lab 草稿模型)· 通过 INT8 PTH KV 实现最高 262K 上下文(PR #40391 供应商版本)· MTP 双卡 = 106/141 TPS @ 32K,95/126 @ 262K · DFlash 双卡 = 105/177 TPS @ 32K(代码最优)· beellama.cpp = 单卡默认 ⭐ 47/88 TPS,131–200K 上下文,109–114/150 8-pack(讨论 #239) |
| Qwen3.6 35B-A3B | 生产就绪(ik-llama 单卡 · vLLM 双卡) | 1× / 2× 3090 | vLLM ✅ · ik_llama ✅ · llama.cpp ✅(主线可运行——见 docs/HARDWARE.md;ik_llama 是官方单卡路径) | MoE(256 专家 × 8 活跃,约 3 B 活跃参数) · 视觉·工具·ik_llama fit-mtp.yml 单卡(Mudler APEX I-Compact) = 103/149 TPS @ 196K,hermes 11/20 + aider 12/30 + cli 12/40(PR #243)· ik_llama byteshape-iq4xs 单卡 = 113/129 TPS @ 完整 262K,110/150 8-pack(PR #293)· vLLM 双卡 = 178/174 TPS @ 262K + 视觉(v0.22.0 稳定版;在该 MoE 上 TP=2 时 MTP 净负) |
| Gemma 4 26B-A4B | 通过 AWQ 生产就绪(Intel AutoRound INT4 在 Ampere 上受阻) | 2× 3090 2 | vLLM ✅(AWQ 覆盖)· llama.cpp ❌ | MoE(128 专家 × 8 活跃,约 4 B 活跃参数) · 视觉·工具·AWQ 双卡 = 139/139 TPS @ 32K,CV 0.2% / 0.0% |
1 单卡 Gemma 4 在 Ampere 24 GB 上:vLLM + 主线 llama.cpp 受阻(head_dim=512 FA 障碍,尚无 Ampere FA 内核)。社区 beellama.cpp 分支以 FA_ALL_QUANTS=ON 构建,在单张 3090 上正常运行 —— 47/88 TPS,100–150K 上下文,109/114 8-pack(2026-05-27 验证)。32 GB+ GPU 可运行标准 vLLM 路径(已在 RTX 5090 32 GB 上由 @apnar 验证)。
2 Gemma 4 26B-A4B 单卡尚未在 Ampere 上测试;应在 24 GB 3090 上以中等上下文适配,但配置目前仅限双卡。更多模型即将推出 —— 它们将放在 models/<model>/ 下,采用相同的内部模式。
实测 TPS 一览
Qwen3.6-27B 各配置的 TPS
基准测试协议:3 次预热 + 5 次测量。方法见 scripts/bench.sh。各配置详情 + 逐次运行数据 + 显存 + AL/接收率: models/qwen3.6-27b/CHANGELOG.md。
基准测试
在自己的机器上复现上述数字。所有基准测试针对 当前正在运行 的配置(先通过 launch.sh 启动一个)。
吞吐量(TPS) —— 标准叙述 + 代码基准(每个提示 3 次预热 + 5 次测量):
bash scripts/bench.sh
行为质量 —— 工具调用正确性、指令遵循、结构化输出等,通过 benchlocal-cli:
bash scripts/quality-test.sh # --medium: 5 个包(默认,约 15-25 分钟,无需 Docker)
bash scripts/quality-test.sh --quick # 2 个包(约 5-10 分钟,无需 Docker)
bash scripts/quality-test.sh --full # 8 个包 / 150 个场景(约 25-40 分钟,需要 Docker)
bash scripts/quality-test.sh --pack aider-polyglot-30 # 单个命名包
bash scripts/quality-test.sh --reasoning # HE+/LCB/GPQA(gated)/GSM 推理套件——独立于 --full;代码包需要 Docker
完整重新基准测试(一个模型,所有项目) —— 标准 5 步流程(bench → verify-stress → quality-test --full → soak → aider-polyglot-30),每段约 1.75-2 小时。所有产物放在 results/rebench/<model>/ 下:
bash scripts/rebench-full.sh # 从 MODEL 自动标记
bash scripts/rebench-full.sh --tag qwen-int8 # 显式标记
bash scripts/rebench-full.sh --skip soak,aider # 跳过阶段(CSV)
bash scripts/rebench-full.sh --resume # 恢复中断的运行(跳过已完成步骤)
# 端点优先模式(非 Docker 引擎:llama-swap、ramalama、原生 llama-server 等):
bash scripts/rebench-full.sh \
--url http://HOST:PORT --model 'MODEL-NAME' --engine llama-cpp # vllm|llama-cpp|sglang|other
在不同模型上运行两次 rebench-full.sh 以组装匹配配置的正面对决。完整测试流水线参考: docs/QUALITY_TEST.md。
诊断
当提交 bug、共享跨设备数据或回复分类线程时,生成一份可直接粘贴的诊断报告 —— 它捕获硬件、操作系统、GPU、容器运行时、栈版本和活动容器状态,格式为 markdown。默认隐藏主目录路径、主机名、用户名和 HF 令牌,因此可以安全地粘贴到公开 issue 或讨论中。
# 快速报告(约 2 秒)—— 硬件 + 栈 + 启动日志亮点
bash scripts/report.sh
# 将完整跨设备传递捕获到文件中,准备粘贴到 issue/讨论中
# (约 35 分钟——使用 --full 进行约 2 秒的仅硬件捕获)
bash scripts/report.sh --full > my-rig.md
# 添加实时测试输出(根据线程需要选择):
bash scripts/report.sh --verify # + verify-full.sh(约 1-2 分钟)
bash scripts/report.sh --stress # + verify-stress.sh 7/7(约 5-10 分钟)
bash scripts/report.sh --soak # + 持续 soak(约 25 分钟)—— 捕获 Cliff 2b
bash scripts/report.sh --bench # + bench.sh TPS(约 3 分钟)
bash scripts/report.sh --full # 全部四个 —— 标准“所有”跨设备传递(约 35 分钟)
# 仅内部共享(禁用隐藏):
bash scripts/report.sh --no-redact
--soak 是独立标志,因为一个配置可能通过验证 + 压力 + 基准测试,但在多轮持续 soak 中失败(Cliff 2b,约 25K 累积令牌)—— 目前 soak 是唯一能捕获这种 agentic 工作负载失败模式的测试。见 docs/CLIFFS.md。
如果 launch.sh / switch.sh 无法启动 —— 直接加载 compose
启动脚本将启动包装在预检(硬件 / 空闲显存检查)、.env 解析和 Python 驱动的变体→compose 注册表中。如果其中任何一个出错 —— 错误的预检失败、Windows 上的 CRLF/.env 问题或缺少 PyYAML —— 绕过它们,用纯 Docker 启动 compose。两种升级方案(假设您已下载权重 —— 快速开始步骤 2):
# 1. 仅跳过硬件 / 空闲显存预检(保留 .env + 注册表):
bash scripts/switch.sh --force llamacpp/default
# 2. 完全绕过脚本 —— 直接用 Docker 启动 compose 文件。
# 将 MODEL_DIR 设置为权重所在位置(示例:~/models)
export MODEL_DIR=~/models
docker compose -f composes/llamacpp.default.yml up -d
相似文章
@ItsmeAjayKV:快速更新:我在3090上试用了Ornith-1.0-35B-Q5_K_M,感受复杂。好的方面:速度确实很快。我测…
用户在一张RTX 3090上测试了Ornith-1.0-35B,发现其推理速度较快(提示处理1560 tok/s,生成约78 tok/s),但在Three.js任务上的编码表现始终不如Qwen 3.6,即使多次尝试也是如此。
@no_stp_on_snek: 一款新的35B编码模型发布了(Ornith-1.0),一篇推广博客说它"碾压"了基准测试。我的第一直觉是这是benchmaxx……
一款新的35B编码模型Ornith-1.0与Qwen3.6-35B在自定义测试中进行了对比。用户发现Ornith-1.0在长期自主编码方面确实更强,能够抵抗不良上下文并完成大型任务,但它更加谨慎和冗长,有时会对简单请求过度限制。
@SlimTradeyBaby: 刚刚远程启动了 Ornith 35B Q4 在 5090 上…… 2329 prompt / 195 gen tok/s,在 32k 下稳定运行。快速测试仅...
DeepReinforce AI 发布了 Ornith-1.0,这是一个自优化的开源模型系列,专为智能代理编码而设计,包含一个 35B MoE 变体,在编码基准测试中达到了最先进的性能,并能在 5090 等单 GPU 上高效运行。
@TeksEdge:经过一天的使用,测试 Orinth-1.0-35B 与 Qwen3.6-35B 的表现如何。凭经验来说,它的表现与……
一位用户报告称,Ornith-1.0-35B 在性能上与 Qwen3.6-35B 相当,但在规划和长任务执行方面更胜一筹,同时开发者宣布开源专门用于代理编码的 Ornith-1.0 系列 LLM。
@malikwas1f: 首次对 @Alibaba_Qwen qwen 3.6 27b 进行微调以提升其质量。@migtissera https://github.com/noonghunn…
宣布首次微调阿里巴巴 Qwen 3.6 27B 以提升其质量,并附有一个 GitHub 仓库(club-3090),提供在 RTX 3090 上本地运行大型语言模型的指南。