Qwen text encoders for ComfyUI (BF16 + INT8 ConvRot)
This repository collects ComfyUI single-file Qwen3.5-9B and Qwen3-VL-8B text encoders, each in BF16 and INT8 ConvRot, under one naming scheme: <original model name>_<bf16|int8_convrot>.safetensors.
Two files are conversions made here: Qwen3.5-9B_int8_convrot and Qwen3.5-9B-abliterated_int8_convrot. The other six are byte-identical re-uploads of files published by their original authors, renamed only. Every source is licensed under Apache-2.0, and all credit belongs to the original authors listed below.
| File | Original model | Made by | Size (bytes) | sha256 |
|---|---|---|---|---|
Qwen3.5-9B_bf16.safetensors |
Qwen3.5-9B | Comfy-Org (re-upload) | 19,306,312,328 | 7e6e9f08d598f829cb940e60ac0c698e1f1c27a47daffd7e598cd78c78b4cc53 |
Qwen3.5-9B_int8_convrot.safetensors |
Qwen3.5-9B | converted here | 9,957,667,548 | 82223af1de7410466cd0383f25b42251ab58723371b8bffdc781bd10d59777f5 |
Qwen3.5-9B-abliterated_bf16.safetensors |
Qwen3.5-9B-abliterated | wangzhang (re-upload) | 18,819,722,392 | 4da7dc6a3ab54ee5d54b840b370bfca643be1a485e4c10d92c39d0a914e39c82 |
Qwen3.5-9B-abliterated_int8_convrot.safetensors |
Qwen3.5-9B-abliterated | converted here | 9,471,076,556 | e7ba909fd9d9e2557eb566e00ffb34226706f3e7425dc3f187246382edc282f6 |
Qwen3-VL-8B-Instruct_bf16.safetensors |
Qwen3-VL-8B-Instruct | Comfy-Org (re-upload) | 17,534,334,616 | 68bdc82bc1b66851162ae656225e7e2068166b603db19bd5d5a3b90eb12669a9 |
Qwen3-VL-8B-Instruct_int8_convrot.safetensors |
Qwen3-VL-8B-Instruct | Comfy-Org (re-upload) | 9,350,798,360 | 8bfd0f6e12abf2d2d697ecc888e5e90b0d6741d6708f05799f53afa560452e8f |
Qwen3-VL-8B-Instruct-abliterated_bf16.safetensors |
Qwen3-VL-8B-Instruct, abliterated (Heretic 1.3.0) | DreamFast (re-upload) | 17,534,334,584 | 1fb1c78533a944ceb7a48c55b16b7a7290ed671ee666f8bd42e01c2da5ffbff5 |
Qwen3-VL-8B-Instruct-abliterated_int8_convrot.safetensors |
Qwen3-VL-8B-Instruct, abliterated (Heretic 1.3.0) | craftingmod (re-upload) | 10,979,853,342 | b37cc29a3bb8e8c4dc09b19909919abd8016195af6ddaad99b0eae8e252b34f6 |
Every re-uploaded file has the same sha256 as the LFS object in its source repository.
Usage in ComfyUI
- Put the file in
ComfyUI/models/text_encoders/. - Load it with the Load CLIP node (
CLIPLoader) and pick the type your workflow uses, for exampleqwen_image. ComfyUI detects the architecture (Qwen3.5-9B or Qwen3-VL-8B) from the weights. - The
_int8_convrotfiles need a current ComfyUI with comfy-kitchen INT8 ConvRot support. In our runs they used about 10 GB of VRAM, against 18–19.5 GB for BF16.
Qwen3.5-9B
Qwen3.5-9B_bf16.safetensors
- Role: the official Qwen3.5-9B in BF16, in the ComfyUI single-file layout. It is also the source for
Qwen3.5-9B_int8_convrot. - Source: Comfy-Org/Qwen3.5, original filename
text_encoders/qwen3.5_9b_bf16.safetensors. It is Comfy-Org's ComfyUI packaging of Qwen/Qwen3.5-9B by the Qwen team. - License: Apache-2.0.
- Changes: none. Byte-identical, renamed.
Qwen3.5-9B_int8_convrot.safetensors
- Role: INT8 ConvRot build of the official Qwen3.5-9B.
- Source: our conversion of
Qwen3.5-9B_bf16.safetensors(original nameqwen3.5_9b_bf16.safetensors, recorded in the file's__metadata__together with its sha256). The base model is by the Qwen team, packaged by Comfy-Org. - License: Apache-2.0.
- Recipe: see Conversion recipe. The layout matches the Comfy-Org reference, with two differences that both come from the source file:
- The 15
mtp.*tensors (the multi-token-prediction head) are kept in BF16 and copied from the source unchanged. The reference has no MTP tensors to take a rule from. ComfyUI enables MTP speculative decoding whenmtp.fc.weightis present. linear_attn.A_logandlinear_attn.norm.weightstay in F32, as in the source. The reference stores them in BF16.
- The 15
- Verification: see Verification.
Qwen3.5-9B-abliterated_bf16.safetensors
- Role: BF16 abliterated Qwen3.5-9B. It is also the source for
Qwen3.5-9B-abliterated_int8_convrot. - Source: wangzhang/Qwen3.5-9B-abliterated by Wangzhang Wu, original filename
model.safetensors, revisionf8770a7aefbb15e1ae7c7945be3c01ec010ddac1.- It is a derivative of Qwen/Qwen3.5-9B made with Abliterix.
- The author describes it as an abliterated model: refusal behaviour was reduced by a weight-space intervention (rank-1 edits to attention and MLP weights).
- License: Apache License 2.0, as stated in the source repository (LICENSE). The source repository's provenance notice and responsible-use disclaimer also apply; please read them there.
- Changes: none. Byte-identical, renamed. The file already uses the ComfyUI key layout (
model.language_model.*,model.visual.*,lm_head.weight), so no conversion was needed. - Key-set check against the Comfy-Org Qwen3.5-9B BF16 file:
- All 760 tensors are present in the Comfy-Org file with identical shapes. There are no extra keys.
- The 15
mtp.*tensors are missing. The source does not ship them, and they were not added. The file loads and generates normally, without MTP speculative decoding. linear_attn.A_logandlinear_attn.norm.weightare BF16 as published by the source; Comfy-Org stores them in F32. They were left unchanged.
Qwen3.5-9B-abliterated_int8_convrot.safetensors
- Role: INT8 ConvRot build of the abliterated Qwen3.5-9B.
- Source: our conversion of
Qwen3.5-9B-abliterated_bf16.safetensorsabove. Model by Wangzhang Wu, base model by the Qwen team. - License: Apache-2.0, as stated in the source repository.
- Recipe: see Conversion recipe. The tensor layout is identical to the Comfy-Org reference.
- Verification: see Verification.
Conversion recipe (Qwen3.5 INT8 ConvRot)
The same recipe is used for both Qwen3.5 INT8 files. The reference is Comfy-Org's own INT8 ConvRot build of this architecture: Comfy-Org/Qwen-Image-2.1 text_encoders/qwen3.5_9b_qwen_image_2.1_pe_t2i.int8_convrot.safetensors (sha256 9182abae56fe05459840a86d22abd21f972061c92fce032630af680c8c5178d3). Its header defines the per-key rule, which is mirrored key-for-key.
INT8 ConvRot (310 tensors): int8_tensorwise with a per-row F32 weight_scale of shape [N, 1] and ConvRot enabled.
| Tensors | Count | ConvRot group size |
|---|---|---|
lm_head, embed_tokens |
2 | 256 |
Language layers: linear_attn.in_proj_qkv / in_proj_z / out_proj, self_attn.q/k/v/o_proj, mlp.gate/up/down_proj |
200 | 256 |
Vision blocks: attn.qkv, attn.proj, mlp.linear_fc1 |
81 | 64 |
Vision blocks: mlp.linear_fc2 (in_features 4304 = 16 x 269) |
27 | 16 |
Kept in source precision, bit-identical to the source:
- all norms
linear_attn.conv1dandlinear_attn.in_proj_a / in_proj_b(32-row projections)A_loganddt_bias- all biases
- the vision
patch_embed,pos_embedandmerger(linear_fc1/fc2) mtp.*, where the source has them
These are exactly the tensors the reference keeps unquantized.
Each quantized layer carries a .comfy_quant U8 tensor holding the same JSON as the reference, for example {"format": "int8_tensorwise", "convrot": true, "convrot_groupsize": 256}. The reference has no per_row flag, so none is added.
Vision tower. The vision tower is quantized, as in the Comfy-Org Qwen3.5 reference. Comfy-Org's older Qwen3-VL INT8 file keeps its vision tower in BF16, but no documentation or ComfyUI source gives a reason for that. The newer Qwen3.5 release from the same publisher quantizes it, and the measured error below is the same for vision as for the language layers.
Quantizer. The official comfy_kitchen path is used: TensorWiseINT8Layout.quantize(w, is_weight=True, per_channel=True, convrot=True, convrot_groupsize=g), comfy-kitchen 0.2.35, CUDA backend.
- The BF16 weight is upcast to FP32 before rotation. This reproduces Comfy-Org's own bytes.
- On the vision tower, whose weights match the base model, the scales are identical and 491 of 411,070,464 int8 values differ by one step. Rotating directly in BF16 would change about 9 % of the values.
__metadata__records the source file name, source sha256, recipe and reference.
Verification of the two conversions
Dequantization check. Each INT8 tensor was dequantized through ComfyUI's own comfy_kitchen path (inverse Hadamard rotation included) and compared with the BF16 source:
| Qwen3.5-9B INT8 | Qwen3.5-9B-abliterated INT8 | |
|---|---|---|
| Quantized tensors | 310 | 310 |
| Cosine, mean / min | 0.99996 / 0.99995 | 0.99996 / 0.99995 |
| Relative error, mean / max | 0.88 % / 1.03 % | 0.88 % / 1.03 % |
| Cosine without inverse rotation, mean (control) | 0.096 | 0.096 |
| Non-quantized tensors byte-identical to source | 465 / 465 | 450 / 450 |
When the inverse rotation is skipped, the control collapses (≤ 0.07 on language layers, ≤ 0.27 on vision). This confirms that ConvRot was applied.
Layout check against the Comfy-Org reference.
- Abliterated INT8: 1,380 tensors. The key set, dtypes, shapes and all 310
.comfy_quantpayloads are identical to the reference; only__metadata__differs. - Official INT8: 1,395 tensors. It is identical to the reference except for the
mtp.*and F32 tensors described above.
Functional check in ComfyUI. All four Qwen3.5 files load through the Load CLIP node (type qwen_image) and were run with ComfyUI's text-generation nodes. The test used greedy decoding on 4 prompts: 2 prompt-enhancement prompts, and 2 image-to-prompt prompts with an image input, which exercises the vision tower.
- Every run produced non-empty, coherent English output with no refusals.
- The abliterated BF16 file reproduced earlier outputs of the original source file token-for-token on all 4 items.
- INT8 against its BF16 source (greedy): 0 of 4 outputs were identical for either model. The outputs share an opening of 0–83 words, then diverge into equally valid descriptions. This is normal for INT8 greedy decoding over long outputs, and in line with other INT8 Qwen3.5 builds measured against BF16 in the same setup.
Qwen3-VL-8B
Qwen3-VL-8B-Instruct_bf16.safetensors
- Role: the official Qwen3-VL-8B-Instruct in BF16, ComfyUI single-file layout.
- Source: Comfy-Org/Qwen3-VL, original filename
text_encoders/qwen3vl_8b_bf16.safetensors. It is Comfy-Org's packaging of Qwen/Qwen3-VL-8B-Instruct by the Qwen team. - License: Apache-2.0.
- Changes: none. Byte-identical, renamed.
Qwen3-VL-8B-Instruct_int8_convrot.safetensors
- Role: Comfy-Org's official INT8 ConvRot build of Qwen3-VL-8B-Instruct.
- Source: Comfy-Org/Qwen3-VL, original filename
text_encoders/qwen3vl_8b_int8_convrot.safetensors. Model by the Qwen team, quantization by Comfy-Org. - License: Apache-2.0.
- Changes: none. Byte-identical, renamed.
- Layout (as published):
embed_tokens,lm_headand the language-layer linears (254 tensors) are INT8 ConvRot, group size 256. The vision tower is BF16. - Our check against the BF16 file above:
- cosine mean 0.99996 (min 0.99995)
- relative error mean 0.90 %
- naive, non-rotated cosine 0.062
- 496 of 496 BF16 tensors are byte-identical to the BF16 source
Qwen3-VL-8B-Instruct-abliterated_bf16.safetensors
- Role: BF16 abliterated Qwen3-VL-8B-Instruct.
- Source: DreamFast/Qwen3-VL-8B-Heretic-1.3.0, original filename
comfyui/qwen3-vl-8b-heretic-1.3.0.safetensors.- The author describes it as an abliterated version of Qwen/Qwen3-VL-8B-Instruct, made with Heretic v1.3.0 (Heretic 1.3.0 release, trial 98).
- Refusal behaviour was reduced by rank-1 edits to
o_proj/down_projweights.
- License: Apache-2.0, as stated in the source repository (license link: Qwen/Qwen3-VL-8B-Instruct LICENSE).
- Changes: none. Byte-identical, renamed.
Qwen3-VL-8B-Instruct-abliterated_int8_convrot.safetensors
- Role: INT8 ConvRot build of the Heretic 1.3.0 model above.
- Source: craftingmod/Qwen3-VL-8B-Heretic-INT8, original filename
qwen3-vl-8b-heretic-1.3.0-int8convrot.safetensors.- It is a quantization of DreamFast/Qwen3-VL-8B-Heretic-1.3.0, made with convert_to_quant.
- Per its model card, it uses row-wise INT8 ConvRot with group size 256 on the q/k/v/o and MLP projections of language blocks 1–34 (238 tensors).
- Kept in BF16: the vision tower, embeddings,
lm_head, norms, and blocks 0 and 35.
- License: Apache-2.0, as stated in the source repository.
- Changes: none. Byte-identical, renamed.
- Our check against
Qwen3-VL-8B-Instruct-abliterated_bf16:- cosine mean 0.99996 (min 0.99993)
- relative error mean 0.93 %
- naive cosine 0.062
- 512 of 512 BF16 tensors are byte-identical to the BF16 source
Model tree for beycanai/Qwen
Base model
Qwen/Qwen3-VL-8B-Instruct