Qwen3.8-4B-A1-OmniMerge-M8
Configuracao do Merge
| Parametro | Valor |
|---|---|
| Metodo | OmniMerge v2 (OBIM + DAREx + EMR) |
| Base | Qwen/Qwen3.5-4B |
| Fonte 1 | empero-ai/Qwen3.8-4B-Distill (weight=0.6) |
| Fonte 2 | InternScience/Agents-A1-4B (weight=0.4) |
| Density | 0.53 |
| DAREx-q | 0.75 |
| PR682 Turbo | Ativado (protege camadas criticas: norm, embed, head, bias) |
| Skip Patterns | model.visual, mtp.layers |
| Seed | 42 |
| Shards | 2 (5.01 GB + 3.67 GB) |
| Total | 8.68 GB (bf16) |
| Tempo de merge | 22.9 minutos (CPU) |
Objetivo do Merge
Combinar a deducao logica do Qwen3.8-4B-Distill (78% em BBH Logical Deduction) com a capacidade agentica e de causalidade do Agents-A1-4B (38% em BBH Causal Judgement).
O OmniMerge v2 foi escolhido em vez do DARE-TIES puro porque adiciona tres melhorias:
- OBIM-lite: Mascara baseada em magnitude (mais estavel que Bernoulli aleatorio).
- DAREx: Reescala os deltas para preservar a magnitude original.
- EMR: Eleicao de sinal mais robusta que o TIES padrao.
Benchmarks dos Modelos Pais
| Modelo | Deducao | Causal | College Medicine | Medical Genetics |
|---|---|---|---|---|
Qwen3.8-4B-Distill | 78% | 46% | 70% | 88% |
Agents-A1-4B | 26% | 38% | 78% | 88% |
| Este merge (0.6/0.4) | a medir | a medir | a medir | a medir |
Uso
from transformers import AutoModelForCausalLM, AutoTokenizer, BitsAndBytesConfig
import torch
bnb_config = BitsAndBytesConfig(
load_in_4bit=True,
bnb_4bit_compute_dtype=torch.bfloat16,
bnb_4bit_quant_type="nf4",
bnb_4bit_use_double_quant=True,
)
model = AutoModelForCausalLM.from_pretrained(
"leandronunes/qwen3.8-4b-a1-omnimerge-m8",
quantization_config=bnb_config,
device_map="auto",
trust_remote_code=True,
attn_implementation="sdpa",
)
tokenizer = AutoTokenizer.from_pretrained(
"leandronunes/qwen3.8-4b-a1-omnimerge-m8",
trust_remote_code=True,
)
Desativando o Thinking Mode
messages = [{"role": "user", "content": "Explain TGF-beta in fibrosis."}]
inputs = tokenizer.apply_chat_template(
messages,
return_tensors="pt",
add_generation_prompt=True,
enable_thinking=False, # Desativa raciocinio estendido
).to(model.device)
Notas Tecnicas
- Modelo multimodal (VLM): inclui torre de visao de 24 blocos alem do language model.
- Arquitetura hibrida: 3 camadas
linear_attention(Gated DeltaNet) seguidas de 1full_attention, repetido 8 vezes. - Thinking mode: para desativar o raciocinio estendido, use
enable_thinking=Falsenoapply_chat_template. - Contexto: 262.144 tokens (256K).
- Tokenizer: copiado do
Qwen3.8-4B-Distill(source 1), comadded_tokens_decodercorrigido para 33 tokens.
Reproducao
python omnimergekit.py \
--base ./models/base \
--source ./models/source1 \
--source ./models/source2 \
--output ./merged-model-m8 \
--method omnimerge_v2 \
--v2-features obim,darex,emr \
--density 0.53 \
--weights 0.6,0.4 \
--darex-q 0.75 \
--pr682-turbo \
--skip-patterns "model.visual,mtp.layers" \
--seed 42 \
--device cpu
Licenca
Apache 2.0 (herdada do Qwen3.5-4B).