Prompt-Based One-Shot Exact Length-Controlled Generation with LLMs
2508.13805v1
cs.CL, cs.AI
2025-08-21
Авторы:
Juncheng Xie, Hung-yi Lee
Резюме на русском
## Контекст
Контроль длины текста, генерируемого бо LARGE LANGUAGE MODELS (LLMs), остается сложной задачей. Несмотря на то, что пользователи могут указывать желаемую длину (например, число слов или символов), LLMs часто "перебираются" или "превышают" эти указания. Это происходит из-за невозможности надежно отслеживать внутренний счетчик токенов во время генерации. Эта проблема значительно сковывает применение LLMs в сценариях, требующих точного контроля длины, таких как генерирование откровенных текстов с заданной длиной, адаптация текстов под ограниченные целевые площади или создание синхронизированных текстов для живой трансляции. Наша работа нацелена на решение этой проблемы, обеспечивая точный контроль длины текста с помощью простой текстовой настройки без необходимости тюнинга моделей или использования многоэтапной генерации.
## Метод
Мы предлагаем простую, но эффективную, промпт-базу стратегию, которая требует только одного вызова LLM. Ключевой идеей является добавление "счетчика токенов" в запрос, который обусловлен моделью для слежения за числом генерируемых токенов. Мы добавляем "счетчик" в виде шаблона, указывающего на желаемую длину текста и команду, следующую за каждым новым токеном, до тех пор, пока счет не достигнет нуля. Например, для генерации 10 слов на английском языке, счетчик будет таким: "Сгенерируйте слово. Осталось 9 слов. Сгенерируйте слово. Осталось 8..." и так далее. Для китайского языка, аналогичная стратегия использует символы вместо слов. Этот подход работает с любыми LLMs без дополнительной тюнинга или подготовки данных.
## Результаты
Мы проверили нашу стратегию на четырех наборах задач:
1. **Откровенное генерирование**: генерирование текстов с длиной от 1 до 1000 токенов на английском языке.
2. **Краткое генерирование (XSUM)**: создание кратких сводных текстов с заданной длиной.
3. **Правило-следования (MT-Bench-LI)**: управление моделью для генерации текстов с определенной длиной и строгим соблюдением команд.
4. **Живая трансляция (LIFEBENCH)**: требуется, чтобы тексты генерировались с равной длиной, чтобы обеспечить синхронизацию текста с звуком.
Наш подход показал существенные улучшения в сроках соблюдения длины в сравнении с базовым подходом "написать-и-редактировать". Например, в MT-Bench-LI, где GPT-4.1 подчинялся желаемой длине в менее чем 30% случаев при использовании базового подхода, наш подход повысил эту статистику до более чем 95%. Кроме того, качество ответов осталось сохраненны
Abstract
Controlling the length of text produced by large language models (LLMs)
remains challenging: models frequently overshoot or undershoot explicit length
instructions because they cannot reliably keep an internal token count. We
present a prompt-based, one-shot strategy that compels an off-the-shelf LLM to
generate exactly a desired number of tokens - words (English) or characters
(Chinese) - without any fine-tuning or iterative sampling. The prompt appends
countdown markers and explicit counting rules so that the model "writes while
counting." We evaluate on four settings: open-ended generation (1-1000 tokens),
XSUM summarization, MT-Bench-LI instruction following, and the LIFEBENCH
equal-length track. On MT-Bench-LI, strict length compliance with GPT-4.1 leaps
from below 30% under naive prompts to above 95% with our countdown prompt,
surpassing the popular draft-then-revise baseline, while judged answer quality
is preserved. These results show that precise length control can be achieved
through prompt engineering alone, offering a lightweight alternative to
training- or decoding-based methods.
Ссылки и действия
Дополнительные ресурсы: