实战 SOP
实战 SOP

Xing4.0-29B-Intent 部署:29B 只跑 4B,命令抄哪条

把 Xing4.0-29B-Intent 跑起来的关键,是官方部署说明其实不在本仓库而在基座仓库:意图仓库 README 只给一句替换说明,完整 vLLM 与 SGLang 启动命令需从基座 Xing4.0-29B-A4B 搬,再把模型路径换成 Xing4.0-29B-Intent 权重路径并把 --served-model-name 设为 Xing4.0-29B-Intent。命令里几个参数是硬门槛:--trust-remote-code 必须加(model_type 为自研 xing4_0,非 llama 非 qwen),--tensor-parallel-size 2 意味着至少两卡,--max-model-len 262144 对应 256K 上下文,--reasoning-parser xing4_0 与 --tool-call-parser xing4_0 配套解析器,--speculative-config 用 mtp 方法,--gpu-memory-utilization 0.90 与 --max-num-seqs 4 是官方示例配比。权重 41 个 safetensors 分片共 62.43 GB,官方量化只有 FP8(33.17 GB,e4m3)与 GGUF(IQ4_NL 单文件 17.75 GB),没有 AWQ、GPTQ 或 INT8 safetensors。显存官方完全未公布,只说按实际环境配置;基座层给出的是必须 bfloat16(mHC 模式要求,FP16 或量化路径会报错)、暂不支持 --pipeline-parallel-size 大于 1、CUDA 上 mHC 路径需装 tilelang、宿主机需 Docker 24.0 以上与驱动 535 以上;昇腾路线明说需 910B2 系列 NPU 至少两张卡,并提供 quay.io 上三款官方镜像(镜像不含权重需自行挂载)。消费级与 CPU 路径只在基座 llama.cpp 文档里出现:int4 权重用 IQ4_NL 量化后约 19 GB,可在单张消费级 GPU 上跑,示例卡 RTX 3090 24 GB。SDK 只是 httpx HTTP 客户端、未发 PyPI;结构化输出两层:模型原生 category + args 数组,以及 SDK 开启 guided_json 后自动生成 JSON Schema 走 vLLM response_format 约束解码。许可虽为 Apache-2.0,但权重侧无独立 LICENSE 文件、仓库 LICENSE 是未填版权人的占位模板、61 个上游数据集原许可仍需自行核对。

发布于 2026年10月22日9 分钟阅读
<!-- xing4-0-29b-intent-deploy-sop | sop | Xing4.0-29B-Intent 部署:29B 只跑 4B,命令抄哪条 -->

客服工单进来一句「帮我查明天北京到上海的航班」,系统要知道两件事:这是不是一个已知意图,以及出发地、目的地、日期分别是多少。以前这活儿要么靠规则引擎硬写正则,要么塞给一个通用大模型再祈祷它别发挥。Xing4.0-29B-Intent 把两件事合并成一次推理:给定类别和字段定义,模型直接吐出 category + args。

本篇是把它在本地跑起来的完整操作手册,覆盖权重下载、服务启动、SDK 接入、效果验收、再训练和已知边界。仓库地址:github.com/XingChen-AGI/Xing4.0-29B-Intent

先说分工。站内另一篇《专用模型 58 分登顶:意图识别换赛道了》讲发布事件、榜单排名和路线之争,那篇把评测表逐列摊开。本篇不重复评测表细节,只解决命令行怎么敲、模型放哪、结果怎么验。

一、先搞清楚这模型解决什么

官方定位是「Schema 引导的意图识别与结构化信息抽取模型」。四个不相干的任务共用同一套输出协议:

任务category 装什么args 装什么
意图识别与槽位填充意图名意图对应的业务参数
命名实体识别实体类别按字段定义抽出的实体
关系抽取关系类别头尾实体等字段
事件抽取事件类别参与者、时间、地点等字段

输出统一是 JSON 数组,每项一个 category 加一组 args;没有可填参数时 args 是空数组。一句话命中多个类别,或同一类别有多组参数实例,都能靠这个结构表达。

所谓 Schema 引导,指类别和字段不是模型自己猜的,而是调用方给定:候选类别名、类别含义描述、每个字段的名字和抽取规则。开发者定义好这套,模型按定义填空,换个业务 Schema 就能切场景。

官方示例是「帮我查明天北京到上海的航班。」,配合「查询航班」类别和三个字段定义,期望输出:

text
查询航班
{'出发地': '北京', '目的地': '上海', '日期': '明天'}

「明天」被原样保留,没有翻译成具体日期。字段描述里写「保留原文」就是保留原文。

二、动手前的清单

模型仓库在 github.com/XingChen-AGI/Xing4.0-29B-Intent,Apache-2.0,2026-10-17 创建,10-19 最后推送,17 星 0 个开放 issue(GitHub API 实测)。

权重在 Hugging Face 上有三个官方仓库,这是 2026-10-22 通过 HF API 实测的体积:| 仓库 id | 形态 | 体积 | 用途 | |---|---|---|---| | XingChen-AGI/Xing4.0-29B-Intent | 41 个 safetensors 分片,dtype bfloat16 | 约 62.4 GB | 主版本,精度基线 | | XingChen-AGI/Xing4.0-29B-Intent-FP8 | 同样 41 个分片,FP8 | 约 33.2 GB | 显存吃紧时用 | | XingChen-AGI/Xing4.0-29B-Intent-GGUF | 单文件 xing4_0-29b-intent-iq4_nl.gguf | 约 17.8 GB | 消费级显卡、llama.cpp |

三个仓库的 license 都是 apache-2.0,ModelScope 上有同名同 id 镜像。没找到官方 AWQ 或 GPTQ 权重,量化路线就是 FP8 和 GGUF 两条。

宿主机要求照基座仓库的部署教程来:Docker 建议 24.0 及以上,NVIDIA 驱动建议 535 及以上,还要装 NVIDIA Container Toolkit。SDK 侧要求 Python 3.8 以上、httpx 0.24 以上。这里跟同期另一条线上的 DeepInfer 引擎要区分开:Python 3.12 干净虚拟环境是那个框架的要求,跟本文的 Xing4.0 部署无关。

许可这块要特别说一句:模型权重、公开数据、代码和 Python SDK 全部 Apache-2.0,商用友好。但数据集说明文档末尾写着,各公开源数据集的原有许可条款同样适用,商用前请核对源数据集的授权要求。别以为整套都是 Apache-2.0 就完事。

三、启动服务:命令在基座仓库,不在这个仓库

这是最容易卡住的一步。Intent 仓库的 README 没有给启动命令,只说一句「模型服务的环境准备与启动方式可参考基座模型的『服务化推理』说明」,然后让你把教程里的模型路径换成 Xing4.0-29B-Intent 权重路径,把 --served-model-name 设成 Xing4.0-29B-Intent,显存、并行度及上下文长度按实际环境配置。

命令去 github.com/XingChen-AGI/Xing4.0-29B-A4B 的 README「服务化推理」章节和 tutorial 目录抄。官方给了三个预编译 Docker 镜像,不用自己编译框架:

bash
docker pull quay.io/xingchen-agi/xingchen-inference-vllm:v0.29.1rc1-xing4_0

这一行拉取集成好 Xing4.0 适配的 vLLM 镜像,同系列还有 xingchen-inference-vllm-ascend:v0.26.0rc1-xing4_0(昇腾)和 xingchen-inference-sglang:v0.5.20.rc1-xing4_0(SGLang)。

vLLM 路径的官方启动命令原文,把模型路径换成你的 Intent 权重目录:

shell
vllm serve ${MODEL_PATH} \
    --host 0.0.0.0 \
    --port 8000 \
    --served-model-name Xing4.0-29B-Intent \
    --tensor-parallel-size 2 \
    --trust-remote-code \
    --max-model-len 262144 \
    --gpu-memory-utilization 0.90 \
    --max-num-seqs 4 \
    --enable-auto-tool-choice \
    --reasoning-parser xing4_0 \
    --tool-call-parser xing4_0 \
    --speculative-config '{"method":"mtp", "num_speculative_tokens": 1}'

模型名必须和客户端请求里的 model 字段一致,否则接口报模型不存在;--reasoning-parser 和 --tool-call-parser 都必须是 xing4_0,写别的名字解析器不认。

SGLang 路径的官方命令原文:

shell
sglang serve --model-path ${MODEL_PATH} \
   --trust-remote-code \
   --host 0.0.0.0 \
   --port 8000 \
   --served-model-name Xing4.0-29B-Intent \
   --tp-size 2 \
   --context-length 262144 \
   --mem-fraction-static 0.90 \
   --max-running-requests 4 \
   --reasoning-parser xing4_0 \
   --tool-call-parser xing4_0 \
   --speculative-algorithm EAGLE

--tp-size 是 SGLang 的张量并行卡数,和 vLLM 的 --tensor-parallel-size 是同一件事,两边都得能整除可见 GPU 数。

如果不想用预编译镜像,官方还提供开源插件方式:vLLM 走 XingChen-AGI/xing4-vllm-plugin,SGLang 走 XingChen-AGI/xing4-sglang-plugin。插件以 Python 包分发,entry point 注册,容器里装一下就行:

bash
pip install -e /workspace/xing4-vllm-plugin --no-deps

这行在容器内安装 vLLM 插件,--no-deps 避免插件连带替换容器里的 vLLM 本体。装完验一下 entry point 是否可见,输出里应包含 ('xing4_0', 'vllm_xing4_0_plugin:register')。

显存这件事官方怎么说?官方部署教程没有给出「至少需要多少显存」的硬指标,只在示例里用了 NVIDIA H100 单卡 80GB、两卡共 160GB 的环境,原文明确标注这「仅为演示与验证所用的硬件环境,并非强制要求」。命令里给出的可调项是 --gpu-memory-utilization 0.90(vLLM)和 --mem-fraction-static 0.90(SGLang)这类显存预留比例。官方给的 OOM 处理办法是三条:调低 --gpu-memory-utilization(如 0.85)或 --max-model-len(如 131072)、改用 FP8 版本模型、减少 --max-num-seqs。结论就是按实际环境配置。

这里有一处官方文档内部口径不一致,值得提前知道。vLLM 插件文档的常见问题里写着「mHC 模式(hc_mult > 1)仅支持 bfloat16」,并写明「FP16 或量化路径会报错」;而同一份文档的 OOM 小节又建议「使用 FP8 版本模型以减少显存占用」。这两个说法指向相反的操作,官方没有裁决,实际用哪个版本请在自己的环境上实测再定。

上游框架的支持状态也记一笔。官方 README 表格里列出四个适配 PR:SGLang 的 sgl-project/sglang#39793、NVIDIA/TensorRT-LLM#19283、llama.cpp 的 ggml-org/llama.cpp#29012、KTransformers 的 kvcache-ai/ktransformers#2168,全部标注「待合入」,各自还给了 commit hash。

四、SDK 接入:几行代码拿到结构化结果

SDK 在仓库的 XingIntentSDK 目录,从源码装:

bash
cd XingIntentSDK
python -m pip install -e .

这行在仓库根目录执行,把 SDK 以可编辑模式装进当前环境。

最小可跑例子,官方 README 原文:

python
from xingintent import Arg, Intent, IntentClient

client = IntentClient(
    base_url="http://localhost:8000/v1",
    model="Xing4.0-29B-Intent",
    max_tokens=512,
)
result = client.predict(
    text="帮我查明天北京到上海的航班。",
    intents=[
        Intent(
            "查询航班",
            "查询指定日期与路线的航班",
            args=[
                Arg("出发地", "出发城市"),
                Arg("目的地", "到达城市"),
                Arg("日期", "用户提到的出行日期,保留原文"),
            ],
        )
    ],
)
print(result.category)
print(result.args)

Intent 三个参数是类别名、类别含义描述、参数列表;Arg 两个参数是字段名和字段说明。字段说明不是装饰,是给模型的抽取规则,写清楚边界比写漂亮有用。

result.category 返回首要类别,result.args 返回合并后的参数字典。多类别或多组参数实例必须遍历 result.intents,否则会丢结构:

python
for item in result.intents:
    print(item.category, item.args)

这里有个细节容易踩:result.args 只是首个意图的参数,同名冲突时后出现的值覆盖前面的。想保留全部参数实例,只能用 result.intents 里各项的 args,那是原始参数列表。

几个实用特性:Intent.fallback("其他意图") 造兜底意图,result.is_fallback 判断是否命中;guided_json=True 让 SDK 自动生成 JSON Schema 通过 response_format 传给 vLLM 走约束解码;AsyncIntentClient 是异步版;Schema.from_json("schema.json") 从文件加载 Schema;Dialog().human(...).ai(...) 拼多轮对话。异常分了类:APIError 对应网络或非 200 响应,ParseError 对应输出解析不出 JSON,ValidationError 对应返回的 category 不在 Schema 里。调试期把 debug=True 打开,日志会打出完整请求 body 和模型原始输出。

五、怎么判断跑对了

先说官方评测口径,免得把榜单分当业务指标。官方测试集是 6,000 条样本,取自 48 个公开数据集,覆盖四类任务。四类任务分值是各数据集字段值 Micro-F1 的宏平均,总分是四类任务分值的等权平均,百分制。官方两次强调:分值不等于业务准确率,类别分值不代表所有字段都正确。

对你的实际业务来说,唯一有意义的是自建回归测试。三步:

  1. 从线上真实流量里抽一批带人工标注的句子,覆盖高频意图、长尾意图、含歧义的句子和纯闲聊。
  2. 把业务 Schema 写成 JSON,用 Schema.from_json 加载,每条句子跑一遍 predict。
  3. 用 json.loads 解析后按结构比对,不要按字符串逐字比对,逐字比对会把 JSON 键顺序差异算成错误。

跑之前还要对齐提示词约定。官方要求每次请求只发一条 role: "user" 消息,任务说明、Schema 和对话内容全部塞进这一条;Schema 用 json.dumps(schema, ensure_ascii=False) 序列化后原样填入,类别名和槽位键名禁止改写;测试标签和标准答案绝对不能进请求。单标签任务每条样本只允许一个类别对象,多标签任务(NER、RE、EE)才允许多个对象并列。改动任何一处都得重新验证。

六、数据与再训练

配套数据集是 XingChen-AGI/Xing4.0-29B-Intent-oss,Apache-2.0。按官方数据说明文档的口径:

统计项数值
总样本数2,753,000
重构公开数据集61 个
覆盖领域19 个
覆盖语言52 种
任务类型4 类(NER / RE / EE / IR-SLU)

每个任务的数字都在官方文档里:命名实体识别 823,000 条占 29.9%,关系抽取 905,000 条占 32.9%,事件抽取 56,000 条占 2.0%,意图识别与槽位填充 969,000 条占 35.2%。另外配套了 170 个以上意图、148 个槽位的智能助手标签集,可以直接当新项目的初始 Schema 再裁剪扩展。

想做业务微调,路径是现成的:数据统一成 category + args 格式,从开源数据按需采样,和自建业务数据按比例混合做 SFT。仓库里 data/build_examples.py 把样本拼装成训练和推理用的中间格式:

bash
python3 data/build_examples.py --root data/General/test --save_path out/test/

这一行处理某个 split 下的全部数据集文件,每个数据集输出一个 examples 文件;--fmt json 改成数组格式,--max_samples N 取前 N 条做调试样例。详细的分布、Schema 字段定义和样例构建方式在 data/README_zh.md。

想找一把尺子量效果,可以看 CMPA-SLU。这是星辰实验室面向手机端智能交互场景构建的中文口语理解基准,仓库在 github.com/XingChen-AGI/CMPA-SLU,相关论文《CMPA-SLU: A Benchmark for Chinese Mobile Personal Assistant Spoken Language Understanding》已被 EMNLP 2026 录用。

七、为什么 29B 只激活 4B

MoE 的账在 config.json 里写得清楚,这是 Intent 权重的一手字段:

字段值
路由专家数64
每 token 激活专家数4
共享专家数1
层数40
hidden_size3584
注意力头数32
vocab_size131072
MLA 低秩 q / kv768 / 512

每层放 64 个路由专家,每来一个 token 只点 4 个,再加 1 个常驻共享专家,稠密前两层(first_k_dense_replace: 2)不做稀疏化。所以总参数 29B,单 token 实际参与计算的约 4B。

这里必须澄清一个常见误读:激活 4B 说的是计算量,不是显存占用。权重照样是全量 29B 常驻,bfloat16 权重 62.4 GB 就是这么来的。想省显存只能靠量化版本或者减上下文。注意力走 MLA 低秩(q 768、kv 512),配合 40 层和 3584 隐藏维度,这是 256K 长上下文能撑住的结构基础。

两个复现时必须留意的字段细节。第一,config.json 里 transformers_version 写的是 5.14.1,generation_config.json 里写的是 4.48.1,两处不一致,官方没给解释,复现时遇到加载行为对不上先怀疑这个。第二,max_position_embeddings 是 262144,也就是原生 256K,但官方同时写了实际可用长度取决于部署配置,命令里的 --max-model-len 262144 只是上限,真按 256K 分配 KV Cache 开销很重,官方给的降级建议就是调到 131072。

生成默认参数在 generation_config.json 里:temperature 1.0、top_p 0.95、repetition_penalty 1.05。基座 README 建议复杂推理和通用任务用这组,代码和智能体任务把 temperature 降到 0.8。SDK 侧发请求时用 temperature 0 和 chat_template_kwargs 关闭思维链,符合结构化抽取要确定性输出的场景。

八、边界、坑和许可

先收拢官方明示的边界。模型只对关键决策信息快速响应,不做长篇推理;具体业务效果需结合目标数据和 Schema 验证;分值不等于业务准确率。这三条都出自官方 README 和数据说明文档。

许可方面,模型权重、公开数据、代码(含 Python SDK)全部 Apache-2.0,仓库 LICENSE 原文已核。商用友好这两个字站得住,前面提过的源数据集条款核对别忘了。

社区 issue 方面,Intent 仓库目前 0 个开放 issue,没什么可引用的踩坑记录。基座仓库有 11 个 issue,多是文档和功能请求,其中编号 #4 标题是「希望增加国产化的配置要求」,至今仍是开放状态。这是社区诉求不是官方口径,但它说明一件事:昇腾等国产算力上的生产级配置参数,官方还没成文给出,需要按自己的集群实测。另外配置里能看到模型带 1 层 NextN 草稿头(num_nextn_predict_layers: 1),这正是官方启动命令里 --speculative-config 用 mtp 方法、--speculative-algorithm EAGLE 的前提;checkpoint 若没有这层草稿头,投机解码参数按官方说明去掉即可。

九、一份上线前检查单

  • 权重来自官方三个仓库之一,license 是 apache-2.0
  • 服务起来的标志:vLLM 日志出现 Uvicorn running on http://0.0.0.0:8000,SGLang 出现 The server is fired up and ready to roll!
  • --served-model-name 与客户端 model 字段一致,都是 Xing4.0-29B-Intent
  • 客户端只发一条 user 消息,Schema 用 json.dumps(schema, ensure_ascii=False) 原样填入
  • 回归集按结构比对而非字符串比对
  • 显存不够时依次试:降 --gpu-memory-utilization、降 --max-model-len、换 FP8 权重、减并发
  • 多类别场景遍历的是 result.intents 而不是 result.args

FAQ

Q1:Intent 仓库的 README 里没有启动命令,是不是官方没写? A:不是没写,是拆到了基座仓库。官方指向 Xing4.0-29B-A4B 的「服务化推理」章节和 tutorial 目录,那里给了 vLLM、SGLang、KTransformers 三条路线的命令、预编译镜像和参数说明。Intent 侧只要换模型路径、把 --served-model-name 设成 Xing4.0-29B-Intent。

Q2:29B 总参、只激活 4B,是不是单张消费级显卡就能跑? A:这是两回事。激活 4B 省的是算力不是显存,权重仍然全量常驻。bfloat16 权重约 62.4 GB,要压到消费级显卡得用官方 GGUF 版本,约 17.8 GB。基座仓库的 llama.cpp 部署文档实测环境是 RTX 3090 24GB 单卡跑量化版,但那测的是基座模型,且 llama.cpp 的适配 PR 至今未合入主干。

Q3:官方说激活 4B,为什么显存要求还是按 29B 算? A:因为 MoE 的专家权重全部要驻留在显存里,只是每个 token 只路由到其中 4 个 expert 做前向计算。官方部署文档没有给出硬性显存下限,只在示例里用了 H100 单卡 80GB 两卡共 160GB,并明确说这不是强制要求。

Q4:怎么确认模型跑对了,而不是返回一堆格式正确但内容错的 JSON? A:格式对不等于业务对。官方评测口径是 6,000 条样本、48 个公开数据集、Micro-F1 宏平均、总分等权平均、百分制,官方自己强调分值不等于业务准确率。业务侧唯一有意义的验收是自建回归集:从真实流量抽样人工标注,按结构比对 category 和每个字段值,多类别场景要遍历 result.intents。

Q5:量化版本到底选 FP8 还是 GGUF?官方文档里两种说法冲突怎么办? A:官方文档内部确实存在口径不一致,vLLM 插件文档一处写 mHC 模式仅支持 bfloat16、量化路径会报错,另一处 OOM 小节又建议用 FP8 版本减少占用,官方没有裁决。可行做法是先按 bfloat16 把链路跑通、拿到基准数据,再分别用 FP8 和 GGUF 量化版跑同一套回归集,用业务指标而不是省下的显存做决定。

延伸阅读

本文由 AI 辅助生成,经人工审核编辑。最后更新:2026-10-22

常见问题

Intent 仓库的 README 里没有启动命令,是不是官方没写?
不是没写,是拆到了基座仓库。官方指向 `Xing4.0-29B-A4B` 的「服务化推理」章节和 tutorial 目录,那里给了 vLLM、SGLang、KTransformers 三条路线的命令、预编译镜像和参数说明。Intent 侧只要换模型路径、把 `--served-model-name` 设成 `Xing4.0-29B-Intent`。
29B 总参、只激活 4B,是不是单张消费级显卡就能跑?
这是两回事。激活 4B 省的是算力不是显存,权重仍然全量常驻。bfloat16 权重约 62.4 GB,要压到消费级显卡得用官方 GGUF 版本,约 17.8 GB。基座仓库的 llama.cpp 部署文档实测环境是 RTX 3090 24GB 单卡跑量化版,但那测的是基座模型,且 llama.cpp 的适配 PR 至今未合入主干。
官方说激活 4B,为什么显存要求还是按 29B 算?
因为 MoE 的专家权重全部要驻留在显存里,只是每个 token 只路由到其中 4 个 expert 做前向计算。官方部署文档没有给出硬性显存下限,只在示例里用了 H100 单卡 80GB 两卡共 160GB,并明确说这不是强制要求。
怎么确认模型跑对了,而不是返回一堆格式正确但内容错的 JSON?
格式对不等于业务对。官方评测口径是 6,000 条样本、48 个公开数据集、Micro-F1 宏平均、总分等权平均、百分制,官方自己强调分值不等于业务准确率。业务侧唯一有意义的验收是自建回归集:从真实流量抽样人工标注,按结构比对 category 和每个字段值,多类别场景要遍历 `result.intents`。
量化版本到底选 FP8 还是 GGUF?官方文档里两种说法冲突怎么办?
官方文档内部确实存在口径不一致,vLLM 插件文档一处写 mHC 模式仅支持 bfloat16、量化路径会报错,另一处 OOM 小节又建议用 FP8 版本减少占用,官方没有裁决。可行做法是先按 bfloat16 把链路跑通、拿到基准数据,再分别用 FP8 和 GGUF 量化版跑同一套回归集,用业务指标而不是省下的显存做决定。

相关文章

实战 SOP

428B 开源了,先备 8 张 H100:M3.1 Flash 部署实录

M3.1 Flash(428B/A23B)本地部署实录。先泼冷水:官方没有任何消费级或单卡配方,vLLM recipe 与 SGLang cookbook 验证过的最小档是 4 张 Blackwell(B200/B300/GB200/GB300,TP4)、4 张 AMD MI355X(TP4)或整机 8 张 H100/H200(TP8,FP8 路径)。权重从 HF 或魔搭下载(公开、非 gated),体积三口径并存:社区口径 252.4GB/48 分片加 2.3GB DSpark 草稿头,vLLM recipe 另列 NVFP4 285GB、MXFP4 293GB、FP8 533GB;官方无独立量化仓。vLLM 需 0.33.0 及以上(发布当日不在 PyPI,用 Docker 镜像 vllm/vllm-openai:minimax-m31-flash 或 nightly),三条官方命令逐字实录:H100/H200 TP8、GB200 TP4、MI355X TP4,均强制 --block-size 128 与 --disable-hybrid-kv-cache-manager(漏掉会报 No common block size for 16);1M 上下文靠 --max-model-len 放开(Hopper 官方示例限 262144)。SGLang 尚未合入 main(Blackwell 需装 MSA 内核 pinned commit 且 nvcc 不低于 13.4,cu130 不算数)。显存账本:BF16 全量约 856GB 为推算口径非官方;激活 23B 只降算力不降显存门槛——428B 的专家必须全部驻留,这就是消费级不可行的根因;1M 上下文的 KV cache 总量官方未公布。国产算力走 FlagOS Day-0 九芯片(含华为昇腾,SGLang-plugin-FL 路径),性能数字标 FlagOS 官方口径。排障 13 条官方预置口径全收:hugepages 560GiB、B200 OOM、parser 拼写差异等,每条带解法。许可 MiniMax Community License:商用署名加 2000 万美元门槛。一句话现实:428B 开源了,先备 8 张 H100。

2026年10月24日9 分钟阅读
实战 SOP

Mellum2.1本地部署SOP:24GB卡跑通12B编程agent

Mellum2.1 本地部署 SOP(口径 2026-10-10,与开源篇/横评篇联动)。主路线 vLLM 五步:serve JetBrains/Mellum2.1-12B-A2.5B-Thinking、配 reasoning-parser qwen3(官方模型卡口径,跳过它思考串会污染答案)、基础推理验证、工具调用(可选 Hermes 模板)+131K 上下文验证、agent 冒烟测试,每步带预期结果。三大坑点先立:MTP head 未随权重发布——网上 1.6x 提速教程现在复现不了;GGUF 未放出——Ollama/LM Studio「宣布支持」不等于今天能拉,别信整合包;thinking 模型必须配 reasoning parser。硬件账:BF16 约 24GB 级(估算口径,官方未给数字),16GB 卡跑不动,24GB 卡(4090/3090)起步可行、131K 全上下文还要加 KV 余量。两种高频翻车专段:OOM 死在权重加载而非生成中(--gpu-memory-utilization 只管 KV 缓存救不了装不下的权重);首跑下载大检查点超时像进程挂死(下完保住 HF 缓存目录以后全本地)。双跑对账法联动横评篇:与 Qwen3.5-9B 同 harness 比 tokens/s 与工单解决数,性能结论以你自己仓库实测为准,不引官方图表。仓库地址:huggingface.co/JetBrains/Mellum2.1-12B-A2.5B-Thinking。

2026年10月10日9 分钟阅读
实战 SOP

Qwen3.8-Flash-Next 全栈部署 SOP:125B 主模型 + 51B N-gram 嵌入,从托管 API 到 Apple Silicon 的三层路线

把 Qwen3.8-Flash-Next 从「能跑起来」推到「跑得省」的三层路线。托管层零运维:QwenCloud API 兼容 OpenAI 与 Anthropic 规范,QwenWork 的 Standard 模式由它驱动。服务化自部署给四条逐字出自官方 README 的命令:transformers serve(--continuous-batching)、SGLang(--tp-size 4 --context-length 262144 --reasoning-parser qwen3 --tool-call-parser qwen3_coder)、vLLM(--tensor-parallel-size 4 --max-model-len 262144 --enable-auto-tool-choice)与 TokenSpeed,四者都在 localhost:8000/v1 提供 OpenAI 兼容 API。本地与端侧另有 llama.cpp 的 GGUF、Apple Silicon 的 mlx-vlm 与 Unsloth。工程上最值得记的一点是额外那 51B N-gram embeddings 可以卸载到主机内存,靠异步预取与模型计算重叠——README 未给官方显存基线,故不猜硬件门槛,标注以官方 recipe 与实测为准。含 YaRN 外推 1M 的取舍、微调框架选择(Unsloth / Swift / Llama-Factory)与 7 条踩坑,其中第一条就是:GitHub 仓库无 LICENSE 文件,商用前先去模型页核对协议。

2026年8月30日12 分钟阅读