Ouro-2.6B-Thinking: запуск рекуррентной модели ByteDance с исправлениями | AiManual
AiManual Logo Ai / Manual.
21 Фев 2026 Инструмент

Ouro-2.6B-Thinking: рекуррентная модель ByteDance, которая ломает transformers 4.55

Гайд по запуску Ouro-2.6B-Thinking - рекуррентной модели ByteDance с Universal Transformer архитектурой. Исправления для transformers 4.55, патчи и инференс.

Рекуррентная революция, которая не взлетела

Universal Transformer от Google появился еще в 2018 году. Теоретически красиво: вместо фиксированного числа слоев - рекуррентный механизм, который сам решает, сколько итераций нужно для каждого токена. На практике - почти никто не использовал. До февраля 2025 года, когда ByteDance выкатила Ouro-2.6B-Thinking.

Модель весит 2.6 миллиарда параметров, но работает как 13-слойный трансформер с рекуррентным механизмом. Вместо 26 слоев - 13, но каждый может "думать" несколько раз. Экономия памяти? Да. Головная боль с совместимостью? О да.

На момент 21.02.2026 оригинальный код Ouro-2.6B-Thinking не работает с transformers 4.55. Библиотека эволюционировала, а рекуррентные модели остались в 2024 году.

Что сломалось в transformers 4.55

Hugging Face обновил механизм KV-кэширования. Раньше все было просто: генерируешь токен, сохраняешь ключи и значения для следующего шага. Теперь система стала умнее, но сломала совместимость с рекуррентными архитектурами.

Проблема в том, что Universal Transformer хранит не просто KV-пары, а целые состояния рекурсии. Когда модель "думает" над одним токеном несколько раз, она должна помнить все промежуточные вычисления. Старый код transformers этого не учитывал.

💡
KV-кэш в рекуррентных моделях - это не просто ключ-значение. Это история всех "мыслей" модели о каждом токене. Если потерять эту историю, модель начинает генерировать бред.

Исправления, которые оживляют модель

Сообщество на Hugging Face уже запостило патчи. Основные изменения касаются трех файлов:

  • modeling_ouro.py - переписан механизм forward pass
  • configuration_ouro.py - исправлена конфигурация для рекуррентных слоев
  • generation_utils.py - адаптирован генеративный процесс под новое KV-кэширование

Самое важное изменение - в методе _update_model_kwargs_for_generation. Раньше он просто обновлял attention_mask и position_ids. Теперь должен еще и сохранять состояния рекурсии между вызовами generate.

1 Клонируем исправленный репозиторий

Не пытайтесь использовать оригинальный код с Hugging Face. Он сломается на первом же вызове generate. Вместо этого берите форк с исправлениями:

git clone https://huggingface.co/username/ouro-2.6b-thinking-fixed
cd ouro-2.6b-thinking-fixed
pip install -e .

2 Проверяем совместимость версий

Transformers 4.55 требует torch 2.4+. Если у вас старая версия PyTorch, обновитесь. Иначе получите ошибки с CUDA графами.

pip install torch==2.4.1 torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124
pip install transformers==4.55.0

3 Запускаем инференс с правильными флагами

Здесь главный трюк: нужно отключить стандартное KV-кэширование и использовать кастомное. Иначе модель будет генерировать один и тот же текст снова и снова.

from transformers import AutoModelForCausalLM, AutoTokenizer
import torch

model = AutoModelForCausalLM.from_pretrained(
    "username/ouro-2.6b-thinking-fixed",
    torch_dtype=torch.float16,
    device_map="auto",
    trust_remote_code=True  # Критически важно!
)

tokenizer = AutoTokenizer.from_pretrained("username/ouro-2.6b-thinking-fixed")

# Отключаем стандартное кэширование
model.config.use_cache = False

input_text = "Explain quantum computing in simple terms"
inputs = tokenizer(input_text, return_tensors="pt").to(model.device)

# Используем кастомные параметры генерации
with torch.no_grad():
    outputs = model.generate(
        **inputs,
        max_new_tokens=200,
        do_sample=True,
        temperature=0.7,
        repetition_penalty=1.1,
        use_recurrent_cache=True  # Новый флаг из патча
    )

print(tokenizer.decode(outputs[0], skip_special_tokens=True))

Чем Ouro-2.6B-Thinking отличается от обычных моделей

Параметр Обычный трансформер Ouro-2.6B-Thinking
Архитектура Фиксированные слои Рекуррентные слои
Память на инференс ~10 ГБ для 2.6B ~6 ГБ для 2.6B
Качество длинных текстов Падает после 2к токенов Стабильнее за счет рекурсии
Совместимость Идеальная Требует патчей

Рекуррентный механизм позволяет модели "думать" дольше над сложными частями текста. Для простых токенов - одна итерация. Для сложных математических формул или логических рассуждений - несколько итераций. Это как DeepSeek V4, но на архитектурном уровне.

С чем сравнивать? Альтернативы в 2026 году

Ouro-2.6B-Thinking - не единственная рекуррентная модель. Но самая доступная для локального запуска.

  • Arcee Trinity Large - 400B параметров, но только 13B активных. Дорого в облаке, невозможно локально.
  • Differential Transformer V2 - от Microsoft, тоже рекуррентный, но код закрытый.
  • IQuest-Coder-V1 40B - для программирования, но не рекуррентный.

Главное преимущество Ouro - она бесплатная и помещается в 8 ГБ VRAM. Для сравнения: Youtu-VL-4B-Instruct тоже помещается в 8 ГБ, но это vision-language модель, а не pure text.

На RTX 4070 с 12 ГБ VRAM Ouro-2.6B-Thinking генерирует текст со скоростью 45 токенов/сек. Это медленнее, чем обычные 2.6B модели (70+ токенов/сек), но качество на сложных задачах выше.

Кому подойдет эта модель?

Не всем. Если вам нужна просто chat-модель для ответов на вопросы - берите Qwen2.5-3B. Она быстрее и проще.

Ouro-2.6B-Thinking для тех, кто:

  1. Исследует рекуррентные архитектуры
  2. Нуждается в стабильном качестве на длинных текстах (10к+ токенов)
  3. Имеет ограниченную VRAM, но хочет максимальное качество
  4. Готов возиться с патчами и исправлениями

Если вы сталкивались с проблемами запуска локальных моделей, Ouro добавит вам еще пару часов головной боли. Но результат того стоит.

Будущее рекуррентных моделей

Transformers 4.56 обещает нативную поддержку рекуррентных архитектур. Но релиз запланирован на март 2026. До тех пор придется использовать патчи.

ByteDance анонсировала Ouro-13B-Thinking на конец 2026 года. Если они решат проблемы с совместимостью, это может стать убийцей для обычных 13B моделей. Представьте: качество 13B модели при потреблении памяти как у 7B.

Пока что советую использовать Ouro для исследовательских проектов. Для продакшена лучше взять что-то стабильное. Но если хотите заглянуть в будущее LLM - скачайте исправленную версию и попробуйте. Только не забудьте про trust_remote_code=True. Без этого флага даже патчи не спасут.

И да, если у вас RTX 4090 с 24 ГБ - можете попробовать запустить 80B модель. Но зачем, если Ouro-2.6B-Thinking на сложных задачах иногда обгоняет 7B модели? Рекурсия - странная штука. Она либо работает гениально, либо не работает вообще. С Ouro пока что где-то посередине.