lunar01
一个 GGUF 文件,两种模式,插叙式思考。 正文模式(B)跑着口语化直答,遇到难句就切到推理模式(A)想 ≤200 token 再切回来——想几次随你,而不是「一般 CoT 只能想一次」。两种模式封装在同一模型里,靠专家分组路由切换(A 组 experts 0-63,B 组 64-127),像把两个 die 封进同一颗 CPU。
One GGUF, two modes, interleaved thinking on demand. The prose mode (B) streams colloquial direct answers; on a hard sentence it switches to the reasoning mode (A) for a ≤200-token think, then switches back — think as many times as you want, unlike vanilla CoT's single-pass thinking. Both modes live in one model, switched by expert-group routing (A = experts 0-63, B = 64-127) — like two dies in one CPU package.
这是什么 / What it is
lunar01 以 Qwen3-30B-A3B-Base 为起点:
- 官方 base 先做全参 SFT 得到 stage1 共享底座(恢复指令遵循与通用能力,未做 RLHF,保留 base 的"人味")
- 底座做两次全参 SFT 分叉:Fork A(CoT 专精:高密度短路推理,思考链 ≤200 token;CoT 语言风格包含 mSLE 兼容)与 Fork B(正文专精:空思考、口语化、TTS 友好的干净正文)
- 两个 fork 各剪枝到 64 专家,层对齐合并为 128 专家 模型(A 组 experts 0-63,B 组 64-127)
- 量化 Q4_K_M(路由器权重 ffn_gate_inp 保留 F32 全精度),成品 18.56 GB
Two full-parameter SFT forks (CoT-specialist and prose-specialist) of a custom SFT base, pruned and merged layer-aligned into a 128-expert MoE (group A = experts 0-63, group B = 64-127), quantized to Q4_K_M with router tensors kept in F32.
双模式怎么用 / Dual-mode usage
模型文件是完全标准的 qwen3moe GGUF:stock llama.cpp、LM Studio 直接加载即可跑(此时是自由路由,两种行为混合)。
要体验真正的双模式,需要一个 +49 行的小补丁(见 patches/moe_group_mask.patch,纯增量、对既有模型零影响),给 llama.cpp 加一个开关:
# 打补丁并编译(在 llama.cpp 源码树里)
git apply patches/moe_group_mask.patch
cmake -B build && cmake --build build --config Release -j
# 推理模式:先出一段"结论先行"的短思考链,再给正文
./build/bin/llama-cli -m lunar01_128e_formal-v1.gguf --moe-group-mask A -p "为什么冬天窗户上会有水珠?"
# 正文模式:空思考直接回答,口语化、适合朗读
./build/bin/llama-cli -m lunar01_128e_formal-v1.gguf --moe-group-mask B -p "今天心情不好,陪我聊聊"
# 不加参数 = 与原版 llama.cpp 行为逐 token 一致(兼容全部其他模型)
llama-server 同样支持:起两个实例(各带 --moe-group-mask A/B + --alias),前端把两种模式当两个模型选,这就是我们日常的使用姿势。
- mask=none 时与 stock llama.cpp 逐 token 一致(实测验证)
- 切换模式需清空 KV / 重新 prefill(路由状态烘在 KV 里,属于已知边界)
硬件需求 / Hardware requirements
- 模型文件:18.56 GB(Q4_K_M,30.5B 总参 / ~3B 激活 / 128 专家)
- 推理内存:约 20–24 GB(权重 + KV cache + 计算缓冲)
- 推荐:≥24 GB 显存(如 RTX 3090 / 4090)可跑;32 GB(如 RTX 5090)宽裕;Apple Silicon ≥32 GB 统一内存(LM Studio / MLX)可用
表现与已知限制 / Known limitations
擅长的:
- 双模式行为分化干净:A 组必出"结论先行 + 类比载体"的短思考链,B 组零思考直答(46/48 强制路由探针通过)
- 中文对话自然度:无 RLHF 填充物、无"作为AI"口癖,闲聊不套推理模板
- 停止纪律:枚举/重复任务(写 N 遍、列 N 个)精确完成并干净停机
- TTS 友好正文:少列表、句长受控、口语连续文本
不擅长的(如实说):
- 数学与多步算术很弱。我方训练语料不含数学,且 128→64 专家剪枝/合并中对数学这类稀疏能力存在损耗,四轮补丁干预(LoRA×2 / 全参专家微调 / 多样数据试点)均未能补齐。小学应用题会胡算,请勿用于数学场景。
- 复杂常识陷阱题(如"洗车该走过去还是开车去")答对率不稳定。
- 长链推理(>1500 token 的完整 CoT)不可靠;设计上是短链 CoT(含 mSLE 风格)。
- 英语能力未经系统评估(训练以中文为主)。
数据与合规 / Data & compliance
- 训练数据全部为自家生产:stage1 底座蒸馏 + 自蒸馏 + 程序化合成,每条带来源标签(蒸馏教师:多方内容 / 配方 / 日期)
- 零 DeepSeek 输出入训(API 与本地 GGUF 蒸馏产物一律隔离)
- 零 RLHF;修复类训练均为行为克隆/程序验证筛选
- 剪枝校准只用自家语料
安全与对齐 / Safety & Alignment
⚠️ 本模型未自带安全对齐(无 RLHF / 无对齐训练),安全对齐处于待适配阶段。其行为需由另一个辅助模型进行行为预测与审查(behavior prediction & review)来把关,而非依赖本模型自身的对齐能力。
因此:请勿将本模型直接用于需要内建安全/合规把关的生产场景;如确需上线,请在外部接入独立的行为审查模型。该辅助模型、murmur、stage-1 均不随本仓库发布。
⚠️ This model has no built-in safety alignment (no RLHF / no alignment training); safety alignment is in a pending-adaptation stage. Its behavior should be gated by a separate auxiliary model performing behavior prediction & review, rather than relying on this model's own alignment.
Do not deploy this model directly in production scenarios that require built-in safety/compliance. If you must deploy it, wire up an independent behavior-review model externally. That auxiliary model, murmur, and stage-1 are not released with this repo.
溯源 / Provenance
- Base: Qwen3-30B-A3B-Base(Apache 2.0)→ stage1 SFT(自有数据)→ fork A / fork B(全参 SFT)
- 合并:两 fork 各 128→64 专家剪枝(自家语料校准)→ 64+64 层对齐合并
- 量化:Q4_K_M,路由张量 F32
- sha256:
d4f9cf2a901766d7272019d45866000bae7d862baf9cc2e2383fbff41d9f282e
License
代码补丁(patches/):Apache 2.0。模型权重遵循 Qwen3-30B-A3B-Base 的 Apache 2.0 许可及通义千问相关条款。训练数据为自有资产,不随权重发布。
致谢与求助
数学能力是我们已知的最大短板(详见 Known limitations)。如果你有把"无数学基础的 base"高效补上算术能力的经验(数据配方/训练方法),欢迎 issue/PR——四轮失败实验的完整记录我们也可以分享。