Qwen3.5-0.8B-WSP-patched
патч весов против зацикливания
Экспериментальная версия Qwen3.5-0.8B (0.75B) от tchbcb — независимое воспроизведение метода weight-space programming. Без обучения и градиентов статистический пайплайн ищет нейроны MLP, связанные с repetition-loop в thinking mode, и напрямую масштабирует столбцы down_proj.
➕ Ключевые особенности
- ➖ Патч затрагивает 64 нейрона × 1024 × 2 слоя = 131 072 веса, или 0.016% модели;
beta=0.5, столбцы умножаются на 0.5. - ▶ Целевые слои — 11 и 10: там all-layer скан нашёл сильнейшее направление повторов; в оригинальном блоге были 15/19.
- ✖ Никакого gradient descent и тренировки: только диагностика, атрибуция и прямое масштабирование весов.
- 🟰 На 24 отложенных задачах MATH-500 strict repetition-loop rate 100% → 100%, finished 0% → 0%, accuracy 0% → 0%, средняя длина 1712 → 1828 слов.
- 🔜 Это research artifact, а не production-фикс: часть с исправлением не переносится на этот snapshot и бюджет без интерактивного оптимизатора из блога.
▶ Пример
import numpy as np, torch
from transformers import AutoModelForCausalLM
z = np.load('wsp_weight_patch_beta0.5_k64.npz')
model = AutoModelForCausalLM.from_pretrained('Qwen/Qwen3.5-0.8B', dtype=torch.bfloat16)
lm = model.model
for L in z['layers'].tolist():
idx = torch.from_numpy(z[f'indices_L{L}'])
lm.layers[L].mlp.down_proj.weight[:, idx] *= float(1 - z['beta'][0])
Подробнее
Оценка: 24 held-out задачи MATH-500, greedy, thinking mode, бюджет 4096 токенов.Честный итог: строгие метрики не улучшились — все задачи всё ещё уходят в repetition state; длина выросла на 116 слов, самый сложный диагностический кейс завершается раньше.
В блоге интерактивный оптимизатор GPT-6 Astra при 32768 токенах дал MATH-500 7.9%→48.1% и truncation 93%→33.1%, но здесь это не воспроизведено.
Лицензия Apache-2.0; проект не связан с MIT CSAIL, OpenAI или Alibaba/Qwen.








Комментарии