Пользователь выпустил форк llama.cpp с экспериментальным детектором циклов, предназначенным для выявления и прерывания повторяющихся циклов токенов во время инференса. Этот новый композиционный сэмплер в реальном времени отслеживает поток генерируемых токенов, обнаруживает точные повторяющиеся паттерны и временно увеличивает температуру сэмплирования для нарушения цикла.
- Сэмплер использует параметры, такие как last_n (по умолчанию 64), min_pattern_len (по умолчанию 3) и min_reps (по умолчанию 3), для определения чувствительности обнаружения.
- При обнаружении цикла применяется множитель температуры (temp_factor) для увеличения случайности и вывода модели из цикла.
- Конфигурация доступна через флаги CLI, JSON API для llama-server или программно через цепочку сэмплеров C API.
- Реализация позволяет настраивать баланс между ранним обнаружением циклов и избеганием ложных срабатываний на легитимных повторяющихся фразах.