Моделі та платформи ШІ

Чому великі мови моделей пропускають інструкції та як це виправити

mm
Додайте Unite.AI до бажаних джерел у Google
LLM instruction skipping fix

Великі мови моделей (LLM) швидко стали незамінними інструментами штучного інтелекту (AI), які використовуються в додатках від чат-ботів і створення контенту до допомоги в програмуванні. Незважаючи на їхні вражаючі можливості, одна з поширених проблем, з якою стикаються користувачі, полягає в тому, що ці моделі іноді пропускають частини інструкцій, особливо коли інструкції довгі або складаються з кількох кроків. Це пропускання призводить до неповних або неточних результатів, що може викликати плутанину і підірвати довіру до систем AI. Зрозуміти, чому LLM пропускають інструкції, і як це виправити, є важливим для користувачів, які залежать від цих моделей для отримання точних і надійних результатів.

Чому великі мови моделей пропускають інструкції?

LLM працюють шляхом читання вхідного тексту як послідовності токенів. Токени – це малі частини, на які текст розділяється. Модель обробляє ці токени один за одним, від початку до кінця. Це означає, що інструкції на початку вхідного тексту tend to отримувати більше уваги. Пізніші інструкції можуть отримувати менше уваги і можуть бути проігноровані.

Це відбувається через те, що LLM мають обмежену увагу. Увага – це механізм, який моделі використовують для вирішення, які частини вхідного тексту є важливими при генерації відповідей. Коли вхідний текст короткий, увага працює добре. Але увага стає меншою, коли вхідний текст довгий або інструкції стають складними. Це ослаблює фокус на пізніших частинах, що призводить до пропускання.

Крім того, багато інструкцій одночасно збільшують складність. Коли інструкції перекриваються або суперечать одна одній, моделі можуть стати заплутаними. Вони можуть спробувати відповісти на все, але надати нечіткі або суперечливі відповіді. Це часто призводить до пропускання деяких інструкцій.

LLM також мають деякі обмеження, подібні до людських. Наприклад, люди можуть втрачати фокус, коли читають довгі або повторювані тексти. Аналогічно, LLM можуть забути пізніші інструкції, коли обробляють більше токенів. Це втрачання фокусу є частиною дизайну моделі та її обмежень.

Іншою причиною є те, як LLM тренуються. Вони бачать багато прикладів простих інструкцій, але менше складних, багатокрокових інструкцій. Через це моделі tend to дотримуватися простіших інструкцій, які є більш поширеними в їхніх тренувальних даних. Це упередження робить їх пропускати складні інструкції. Крім того, обмеження токенів обмежують кількість вхідного тексту, який модель може обробити. Коли вхідний текст перевищує ці обмеження, інструкції за межами обмеження ігноруються.

Приклад: Припустимо, ви даєте LLM п’ять інструкцій в одному промпті. Модель може зосередитися в основному на перших двох інструкціях і частково або повністю проігнорувати останні три. Це безпосередньо впливає на те, як модель обробляє токени послідовно та її обмеження уваги.

Як добре LLM керують послідовними інструкціями на основі висновків SIFo 2024

Нещодавні дослідження уважно розглянули, як добре LLM слідують кільком інструкціям, наданим один за одним. Одним з важливих досліджень є Послідовне виконання інструкцій (SIFo) Бенчмарк 2024. Цей бенчмарк тестує моделі на завданнях, які потребують крок за кроком виконання інструкцій, таких як модифікація тексту, відповіді на питання, математика та дотримання правил безпеки. Кожна інструкція в послідовності залежить від правильного виконання попередньої інструкції. Цій підхід допомагає перевірити, чи модель слідувала всій послідовності правильно.

Результати SIFo показують, що навіть найкращі LLM, такі як GPT-4 і Claude-3, часто мають труднощі з завершенням усіх інструкцій правильно. Це особливо вірно, коли інструкції довгі або складні. Дослідження виділяє три основні проблеми, з якими стикаються LLM при слідуванні інструкціям:

Розуміння: Повністю зрозуміти, що означає кожна інструкція.

Розумування: Зв’язати кілька інструкцій логічно, щоб зберегти відповідь чіткою.

Надійний вивід: Генерувати повні та точні відповіді, що охоплюють всі надані інструкції.

Техніки, такі як інженерія промптів і тонке налаштування, допомагають покращити, як добре моделі слідують інструкціям. Однак ці методи не повністю допомагають з проблемою пропускання інструкцій. Використання Посилення навчання з людською відгуком (RLHF) далі покращує здатність моделі відповідати відповідально. Однак моделі мають труднощі, коли інструкції вимагають багатьох кроків або є дуже складними.

Дослідження також показує, що LLM працюють найкраще, коли інструкції прості, чітко розділені та добре організовані. Коли завдання потребують довгих ланцюжків розумування або багатьох кроків, точність моделі знижується. Ці висновки допомагають запропонувати кращі способи використання LLM правильно та показують необхідність побудови сильніших моделей, які можуть справді слідувати інструкціям одна за одною.

Чому великі мови моделей пропускають інструкції: технічні виклики та практичні міркування

LLM можуть пропускати інструкції через кілька технічних і практичних чинників, пов’язаних з тим, як вони обробляють і кодують вхідний текст.

Обмежена увага та розбавлення інформації

LLM покладаються на механізми уваги, щоб призначити важливість різним частинам вхідного тексту. Коли промпти короткі, увага моделі зосереджена і ефективна. Однак, коли промпт зростає довгим або повторюваним, увага стає меншою, і пізніші токени або інструкції отримують менше уваги, збільшуючи ймовірність того, що вони будуть проігноровані. Це явище, відоме як розбавлення інформації, особливо проблематичне для інструкцій, які з’являються пізно в промпті. Крім того, моделі мають фіксовані обмеження токенів (наприклад, 2048 токенів); будь-який текст за межами цього порогу відсікається і ігнорується,导致ючи пропускання інструкцій в кінці цілком.

Складність виводу та двозначність

LLM можуть мати труднощі з генерацією чітких і повних відповідей, коли їм надаються кілька або суперечливих інструкцій. Модель може генерувати часткові або нечіткі відповіді, щоб уникнути суперечностей або плутанини, ефективно пропускаючи деякі інструкції. Двозначність у тому, як інструкції сформульовані, також створює проблеми: нечіткі або неточні промпти роблять складним для моделі визначити намічені дії, збільшуючи ризик пропускання або неправильної інтерпретації частин вхідного тексту.

Дизайн промпту та чутливість форматування

Структура і формулювання промптів також відіграють критичну роль у слідуванні інструкціям. Дослідження показує, що навіть малі зміни в тому, як інструкції написані або сформульовані, можуть суттєво вплинути на те, чи модель слідує їм.

Як виправити пропускання інструкцій у великих мовах моделей

Покращення здатності LLM слідувати інструкціям точно є важливим для отримання надійних і точних результатів. Наступні найкращі практики повинні бути розглянуті для мінімізації пропускання інструкцій і покращення якості відповідей AI:

Завдання повинні бути розділені на менші частини

Довгі або багатокрокові промпти повинні бути розділені на менші, більш зосереджені сегменти. Надання однієї або двох інструкцій одночасно дозволяє моделі зберегти краще увагу і зменшує ймовірність пропускання кроків.

Приклад

Натомість ніж поєднувати всі інструкції в один промпт, такий як “Стиснути текст, перелічити основні пункти, запропонувати поліпшення та перекласти його французькою”, кожна інструкція повинна бути представлена окремо або в менших групах.

Інструкції повинні бути відформатовані за допомогою пронумерованих списків або маркерів

Організація інструкцій з явним форматуванням, таким як пронумеровані списки або маркери, допомагає вказати, що кожен пункт є окремим завданням. Ця ясність збільшує ймовірність того, що відповідь буде охоплювати всі інструкції.

Приклад

  • Стиснути наступний текст.
  • Перелічити основні пункти.
  • Запропонувати поліпшення.

Таке форматування надає візуальні підказки, які допомагають моделі розпізнавати і розділяти окремі завдання в промпті.

Інструкції повинні бути явними та недвозначними

Важливо, щоб інструкції чітко вказували на необхідність виконання кожного кроку. Двозначна або нечітка мова повинна бути уникнута. Промпт повинен явно вказувати, що жоден крок не може бути пропущений.

Приклад

“Будь ласка, виконайте всі три завдання нижче. Пропуск будь-яких кроків не допускається.”

Прями заяви, такі як ця, зменшують плутанину і заохочують модель надавати повні відповіді.

Відокремлені промпти повинні бути використані для високопріоритетних або критичних завдань

Кожна інструкція повинна бути подана як окремий промпт для завдань, де точність і повнота є критичними. Хоча цей підхід може збільшити час взаємодії, він суттєво покращує ймовірність отримання повних і точних результатів. Цей метод забезпечує, що модель зосереджується повністю на одному завданні одночасно, зменшуючи ризик пропускання інструкцій.

Розширені стратегії для балансування повноти та ефективності

Чекати на відповідь після кожної окремої інструкції може бути часу споживаючим для користувачів. Для покращення ефективності, зберігаючи при цьому ясність і зменшуючи пропускання інструкцій, наступні розширені техніки промптів можуть бути ефективними:

Батч-інструкції з явним форматуванням і явними мітками

Багатьох пов’язаних інструкцій можна поєднати в один промпт, але кожна повинна бути розділена за допомогою пронумерованих списків або заголовків. Промпт також повинен інструктувати модель відповісти на всі інструкції повністю і в порядку.

Приклад промпту

Будь ласка, виконайте всі наступні завдання ретельно, не пропускаючи жодної:

  1. Стиснути текст нижче.
  2. Перелічити основні пункти з вашого стиснення.
  3. Запропонувати поліпшення на основі основних пунктів.
  4. Перекласти поліпшений текст французькою.

Промпти у стилі ланцюга думок

Промпти у стилі ланцюга думок спрямовують модель на те, щоб пройти через кожне завдання крок за кроком, перш ніж надати відповідь. Заохочення моделі обробляти інструкції послідовно в межах однієї відповіді допомагає забезпечити, що жоден крок не буде пропущений, зменшуючи ймовірність пропускання інструкцій і покращуючи повноту.

Приклад промпту

Прочитайте текст нижче і виконайте наступні завдання в порядку. Покажіть свою роботу чітко:

  • Стиснути текст.
  • Визначити основні пункти з вашого стиснення.
  • Запропонувати поліпшення тексту.
  • Перекласти поліпшений текст французькою.

Будь ласка, відповіть на всі завдання повністю і окремо в одному відповіді.

Додати інструкції щодо завершення та нагадування

Явно нагадайте моделі:

  • “Відповісти на кожне завдання повністю.”
  • “Не пропускати жодної інструкції.”
  • “Відокремити свої відповіді чітко.”

Такі нагадування допомагають моделі зосередитися на повноті, коли кілька інструкцій поєднані.

Інші моделі та параметри повинні бути протестовані

Не всі LLM виконують однаково добре при слідуванні кільком інструкціям. Радить оцінити різні моделі, щоб визначити ті, які виконують добре багатокрокові завдання. Крім того, регулювання параметрів, таких як температура, максимальна кількість токенів і системні промпти, може далі покращити фокус і повноту відповідей. Тестування цих параметрів допомагає налаштувати поведінку моделі до конкретних вимог завдання.

Тонке налаштування моделей та використання зовнішніх інструментів повинно бути розглянуто

Моделі повинні бути тонко налаштовані на даних, які включають багатокрокові або послідовні інструкції, щоб покращити їхнє слідування складним промптам. Техніки, такі як RLHF, можуть далі покращити слідування інструкціям.

Для розширених випадків використання інтеграція зовнішніх інструментів, таких як API, плагіни для конкретних завдань або системи генерації з підтримкою пошуку (RAG), може надати додатковий контекст і контроль, покращуючи надійність і точність результатів.

Висновок

LLM є потужними інструментами, але можуть пропускати інструкції, коли промпти довгі або складні. Це відбувається через те, як вони читають вхідний текст і фокусують свою увагу. Інструкції повинні бути чіткими, простими та добре організованими для отримання кращих і більш надійних результатів. Розділення завдань на менші частини, використання списків і надання прямої інструкції допомагають моделям слідувати крокам повністю.

Відокремлені промпти можуть покращити точність для критичних завдань, хоча вони займають більше часу. Крім того, розширені методи промптів, такі як ланцюг думок і явне форматування, допомагають балансувати швидкість і точність. Крім того, тестування різних моделей і тонке налаштування можуть також покращити результати. Ці ідеї допоможуть користувачам отримувати послідовні, повні відповіді і зробити інструменти AI більш корисними в реальній роботі.

Доктор Ассад Аббас, доцент COMSATS University Islamabad, Пакистан, отримав ступінь доктора філософії в Північному державному університеті Дакоти, США. Його дослідження зосереджені на передових технологіях, включаючи хмарні, туманні та краєві обчислення, великі дані та аналіз штучного інтелекту. Доктор Аббас зробив суттєві внески з публікаціями в авторитетних наукових журналах та конференціях. Він також є засновником MyFastingBuddy.