支持的模型

TensorSharp 加载 GGUF 格式的模型,并从文件的 general.architecture 元数据自动识别架构——MiniMax-H3 是例外,它公开的 GGUF 完全没有元数据,只能靠张量表来识别。选择适合你硬件的量化(低内存用 Q4_K_M,更高质量用 Q8_0)。

📘

Gemma 4 E4B 是《From Tensors to Tokens》采用的示例模型。配套图书提供从张量基础到多模态推理的连贯构建过程;这组参考页面则提供最新下载与能力细节。了解本书 →

浏览模型参考

完整参考分为四个页面。如果你已经确定要用哪个模型,从"模型下载"开始;如果还在挑选,从对应的分类页面开始。

⬇️

模型下载

所有 GGUF,以及各家族所需的投影器、VAE、编码器与草稿模型。

🧠

文本与 LLM 模型

十二种架构及其运行示例,加上多模态输入、思考模式与工具调用。

🖼️

图像生成

Qwen-Image-Edit、Lightning LoRA,以及 DiT 步缓存。

🎬

视频生成

MiniMax-H3 带原生立体声音频,以及 Wan 2.1 / 2.2 与那个把数小时变成几分钟的蒸馏检查点。

支持的架构

架构GGUF 架构键示例模型多模态思考工具MTP 推测
DeepSeek V4.1 Flashdeepseek41DeepSeek-V4.1-Flash(40 层,384 个路由专家 top-6 加一个共享专家,四条残差流与延迟 hyper-connection 混合,第 1 与第 14 层注入 Engram n-gram 特征,声明 1M 上下文)。服务后端为 ggml_cudacudaggml_cpu 作为可移植性与正确性通道,而 cpu 是 100% 纯 C# 执行器——不用 ggml、不用原生库、也不用 GPU,完整实现整张 V4.1 计算图,并以 atol=rtol=2e-5 加贪心 argmax 完全一致对齐一个独立的 PyTorch 参考实现(该把关是 fixture 规模的——五层、256 隐藏维的合成模型,因此确立的是与参考实现的架构级一致,而不是真实 246 GiB Q2_K 权重上的 CPU/CUDA 一致性),属于正确性与可移植性路径,而非服务路径;每一种量化(Q2_K 与 Q4_K_M 均已测试)都必须先准备 Engram sidecar 才能运行配合单独准备的视觉伴随文件(--mmproj)支持图像与视频;音频会被拒绝,而不是被忽略。该伴随组件是原生 ggml 组件,因此在纯 C# 的 cpu 后端上无法使用,那条路径仅文本支持支持(带空格的 DSML,受语法约束)—(V4 的草稿模型会被拒绝)
DeepSeek V4 Flashdeepseek4DeepSeek-V4-Flash(284B MoE,256 专家,压缩稀疏注意力,1M 上下文)仅文本是(DSML)是(DSpark 块级草稿器,独立 GGUF)
GLM 5.xglm-dsaglm5nextGLM-5.2(744B-A40B MoE,256 专家,MLA + DeepSeek 稀疏注意力,1M 上下文);GLM-5.3(与 5.2 完全相同的 79 个 block 的 glm-dsa 结构——78 层主干加 1 个 NextN,256 个路由专家 top-8 外加 1 个共享专家,带 lightning indexer 的 MLA,rope base 8e6,声明 1M 上下文,除非 MAX_CONTEXT 指定具体数字、否则会按设备容量截断——因此直接走 GLM-5.2 的路径,无需新代码也无需新开关;UD-Q2_K_XL 量化下为 7 个分片共 236.4 GiB,位于 unsloth/GLM-5.3-GGUF--model 指向 -00001-of- 分片);GLM-5.3-Flash(320B,288 个路由专家,45 个主干层里 34 层 KDA 线性注意力,另外 11 层是 NoPE MLA/DSA 配池化索引器)仅 5.3-Flash 支持图像;5.2 与 5.3 都仅文本——GLM-5.3 仓库在任何量化下都没有发布 mmproj,而 glm-dsa 碰到 --mmproj 只会告警并忽略、而不是报错,所以得到的是一次仅文本的运行,而不是一次失败是(XML 工具调用)glm-dsa 支持(GLM-5.2 与 GLM-5.3 都在 blk.78 内嵌了完整的 NextN 块,无需额外下载;--spec 必须在加载之前就写在命令行上,而且只在默认按层切分时生效——在 --tp N>1 下加载器会在 stderr 上打印一行并改跑标准解码,因为该块没有自己的 LM head,而它借用的主干 head 又是按列切分的)。glm5next(GLM-5.3-Flash)尚未实现
Gemma 4gemma4gemma-4-E4B、12B、31B、26B-A4B (MoE)图像、视频、音频是(独立草稿)
Qwen 3.5 / 3.6qwen35qwen35moeqwen3nextQwen3.5-9B、Qwen3.5/3.6-35B-A3B (MoE)图像3.6 支持(内嵌 NextN——仅限保留 NextN 块的 GGUF,例如 -MTP- 仓库)
Qwen 3.8 Flash Nextqwen4expQwen3.8-Flash-Next(混合 MoE:GatedDeltaNet 递归层与全注意力层交错,其中一部分挂在 Qwen 稀疏注意力的索引器之后;PLE n-gram 嵌入块;×4 超连接流;512 专家、每 token 用 10 个)图像否——暂没有结构化输出解析器
GPT OSSgptossgpt-ossgpt-oss-20b (MoE)仅文本是(始终)
Nemotron-Hnemotron_hnemotron_h_moeNemotron-H-8B、47B、Nemotron 3 Nano Omni图像(Omni)
Hunyuan Densehunyuan-dense腾讯稠密 Hunyuan 解码器,例如 Hy-MT2 系列——GQA,其 per-head QK-norm 在 NeoX RoPE 之后,随后是 SwiGLU。单设备仅文本不支持不支持
Mistral 3mistral3Mistral-Small-3.1-24B-Instruct图像
Muse-Glimmermuse-glimmermuse_glimmerMuse-Glimmer-30B(交错滑动窗口 + NoPE 全注意力层,注意力输出门控)图像是(ATEM)是(DFlash 块草稿模型,独立 GGUF)
Bonsai Q1_0qwen3(8B)、qwen35(27B)Bonsai-8B(36 层稠密 GQA)与 Bonsai-27B(48 层 GatedDeltaNet + 16 层全注意力),均为每权重 1.125 比特。仅本地导入——这两个 GGUF 既未声明发布仓库 URL,也未声明许可证仅文本27B 支持;8B 模板固定输出一个空的 think 块支持
DiffusionGemmadiffusion-gemmadiffusion_gemmadiffusion-gemma 文本扩散 GGUF仅文本
Qwen-Image-Editqwen_imageqwen-imageqwen-image-edit MMDiT(+ VAE 与 Qwen2.5-VL 伴随文件)图像编辑(图像+文本 → 图像)
MiniMax-H3minimax-h3minimax_h3MiniMax-H3 FL2VA / Ref2VA 去噪器(+ Qwen3-VL-32B 文本编码器、视频 VAE 与音频 VAE 伴随文件)。公开的 GGUF 没有任何元数据,靠张量表识别视频输出 + 32 kHz 立体声音频(文本 → 视频、图像 → 视频、首尾帧、参考 → 视频)
Wan 视频wanwan2.1wan2.2Wan 2.1 T2V 1.3B/14B、Wan 2.2 TI2V-5B、Wan 2.2 A14B T2V/I2V(两个 14B 专家)(+ UMT5-XXL 与视频 VAE 伴随文件)视频输出(文本 → 视频、图像 → 视频)

各模型的详细架构卡(前向图、组件、参数,以及 TensorSharp 如何优化 prefill/decode)位于仓库的 docs/models/ 下。

哪个更快——每个家族最关键的那一项设置

每个模型家族都有一项主导端到端耗时的设置。两个视频家族最容易被忽略,而且被忽略的点还不一样:MiniMax-H3 出厂即经 CFG 蒸馏,杠杆是你要多少步、多少像素,而不是去换哪个文件;而在 Wan 上,你下载的是哪个检查点,直接决定一段 5 秒 720p 视频是跑三个半小时还是十七分钟——而且不需要加任何参数。

家族快车道实测效果
MiniMax-H3它本身就经过 CFG 蒸馏——没有更快的文件可换。用 --cfg 1.04–8 步(默认 20 步),把省下的时间花在 --width / --heightM5 Pro / ggml_metal、22 帧、8 步、相同种子,对比 stable-diffusion.cpp:256×256 49.3 s → 20.9 s(快 2.4×),640×384 108.5 s → 63.1 s(快 1.7×)。步数买到的是质量而不只是时间——同一条 640×384 图生视频请求,8 步 79 s、运动的手周围有彩色边缘,24 步 212 s、干净
Wan 视频加载步数蒸馏检查点——DiT 文件名中含 TurbodistillLightninglightx2vFastWan-dmd…-4steps-… 即被自动识别,无需任何参数100 次 DiT 前向 → 4 次,关闭引导。同一条 1088×832×121 帧图生视频请求,M5 Pro / ggml_metal约 3 小时 30 分 → 17 分 30 秒
Wan 视频--cfg-cache-stride 2 / 3——仅适用于未蒸馏的基础检查点50 步下 1.30× / 1.43×(100 次前向只跑 77 / 70 次)。属于近似方法;在本就无引导的蒸馏检查点上没有意义
Qwen-Image-Edit--qwen-image-lora 加载 Lightning 蒸馏 LoRA基础配方 30 步、cfg 2.5,即 60 次 DiT 前向 → 4–8 次、cfg 1.0。544×1184、4 步的热态编辑:40.44 s,对比 stable-diffusion.cpp 的 48.16 s
DeepSeek V4--draft-model 加载 DSpark 块级草稿器(仅 cuda / ggml_cuda4×A40、200 个贪心 token:decode 26.0 → 34.0 tok/s(cuda)、26.4 → 37.1 tok/s(ggml_cuda),接受率 69%;5 轮对话中可达 1.5–2.0×。输出保持不变
Muse-Glimmer--draft-model 加载 DFlash 块级草稿器(不要传任何采样参数,它需要纯贪心)RTX PRO 6000、128 个贪心 token:60 token 提示下 35.0 → 50.9 tok/s,2 050 token 下 33.5 → 43.5。在 Apple Silicon 上目前并不划算(20.7 → 13.9 tok/s),那里请用普通 decode
Qwen 3.6 / Gemma 4TensorSharp.Server 上加 --spec——Qwen 3.6 用 -MTP- GGUF 内嵌的 NextN 块,Gemma 4 用独立的 --draft-model 草稿仅在单独(无并发)序列上启用,并且只在有收益处启用:Qwen 3.6 的内嵌 NextN 块在所有后端上都被认为有收益,而 Gemma 4 的独立草稿头只在各 ggml 后端与直连 cuda 后端上启用;CPU / GGML CPU / MLX 走标准 decode。可用 --spec-draft(默认 8)与 --spec-pmin(默认 0.15)调节
所有文本家族选对 --backend:NVIDIA 用 ggml_cuda,Apple Silicon 用 ggml_metal,CPU 用 ggml_cpu(而非 cpuRTX 3080 Laptop、gemma-4-26B-A4B QAT:ggml_cuda decode 78.7 tok/s,直连 cuda 后端 35.3;prefill 1832 对 128。Apple Silicon、Muse-Glimmer-30B:ggml_metal prefill 413.6,mlx 仅 29.0
装不下的 MoE--n-cpu-moe N / --cpu-moe——把前 N 层的路由专家权重留在系统内存以 decode 换显存;但只要能避免显存溢出就是净赚:gpt-oss-20b 在 16 GB 卡上 16.2 → 2.9 GB,--n-cpu-moe 12 把 WDDM 换页导致的 0.3 tok/s 变成 25.4
GLM 5.xTS_GLM_UBATCH=2048 —— 显存允许时把 prefill 微批调大3× RTX PRO 6000、GLM-5.2 UD-IQ2_XXS:pp2048 从 918.9 到 1145.8 t/s,pp4096 从 864.7 到 1048.7 t/s;decode 受访存约束,仍是约 43.9 tok/s。256 个专家 top-8 的情况下,分块太小会让每个专家 GEMM 的 tile 大半是填充
多 GPU在直连 cuda 与 GGML CUDA / Vulkan 上使用 --tp N(环境变量 TENSORSHARP_TP_DEGREEMuse-Glimmer-30B UD-IQ2_XXS、2× RTX PRO 4000:prefill 1171 → 1569(1.34×),decode 40.2 → 63.2 tok/s(1.57×)。它还能跑单卡完全装不下的模型——但前提是互连付得起这笔账:在没有 NVLink 的 PCIe 主机上,逐层的 all-reduce 可能比拆分省下的还贵,GLM-5.2 在 3× RTX PRO 6000 上就从 pp2048 915.9 / tg64 43.9 掉到 --tp 3 的 505.6 / 17.6。GLM-5.2、GLM-5.3 与 GLM-5.3-Flash 的原生 TP 都只支持本地单进程——--tp-node-id / --tp-peers 对整个家族都会在模型构造之前被拒绝。GLM-5.3 上从来没有跑过 --tp 1 以上的配置:这个模式是接受的,但 MLA 与索引器缓存会按 rank 复制,缓存占用随 N 成倍增长、能装下的上下文也更短;唯一有记录的算术是一次装不下——--tp 8 每个 rank 需要 41.7 GiB,而 A40 只有 46 GB

工具支持同时要求提示词渲染器与匹配的结构化输出解析器。TensorSharp 目前对 qwen4exp 使用透传解析器,因此不会向 Qwen 3.8 Flash Next 提供调用者定义的工具、Agent Skills 渐进披露工具或代码执行工具;被选中技能的说明会以内联方式回退。

MiniMax-H3、Wan、Qwen-Image-Edit 与 DiffusionGemma 构造时不接受张量并行度,因此 --tp 对它们无效。在视频家族里,Wan 还是唯一会直接拒绝某个后端的:不支持 mlx。MiniMax-H3 —— 生成类家族里最后一个还没有纯托管 CPU 路径的 —— 现在也能完整跑在 --backend cpu 上,即 100% 纯 C#、零原生依赖的那条路径:文生视频、图生视频、首尾帧,以及参考图像、参考片段与参考音轨。它与原生 ggml_cpu 路径的速度是互有快慢,而不是一律更慢。在 Qwen 3.8 Flash Next 上,--tp N 的含义又不一样——它跑的是按层切分,每张 GPU 持有一段连续的完整层、不切分任何权重,因此是容量特性而非速度特性:2× A100-80GB、UD-Q2_K_XL(73.4 GiB)下,贪心输出与单卡逐字节相同,显存变成 24.2 + 26.2 GB,prefill(约 1520–1550 t/s)与 decode(约 56 t/s)都没有变化。GLM-5.3 与 GLM-5.3-Flash 不传 --tp 时都使用按层切分——原生执行器会用上每一张可见 GPU 并按整层放置,TS_GLM_NGPU 可以限制它最多用几张;在 GGML GPU 后端上,--tp N 则会选择仅支持本地单进程的原生张量并行。在 GLM-5.3 上,按层切分也是它的 NextN 块唯一能为 --spec 加载的放置方式。既不支持张量并行、也不支持按层切分的架构,现在会在 stderr 上直说,并只用一张 GPU 运行,而不是让其余的卡白白闲着。