Исследование: 26 Правил для Эффективного Использования ИИ!
Принципиальные инструкции - это все, что вам нужно для LLaMA-1/2, GPT-3.5/4
Эта статья представляет 26 руководящих принципов [prompts], разработанных для оптимизации процесса запросов и формулирования подсказок для крупных языковых моделей. Наша цель - упростить основные концепции формулирования вопросов для языковых моделей различного масштаба, изучение их возможностей и улучшение понимания пользователей относительно поведения языковых моделей разного масштаба при работе с различными подсказками. 🚀
Масштабные эксперименты проведены на LLaMA-1/2 (7B, 13B и 70B), GPT-3.5/4 для подтверждения эффективности предложенных принципов в дизайне инструкций и подсказок. Мы надеемся, что данная работа предоставит лучшие рекомендации для исследователей, работающих над формулировкой подсказок для крупных языковых моделей. 📘
1. Введение
"Prompt engineering — это настоящее искусство общения с генеративной большой языковой моделью", как отмечает ChatGPT в 2023 году. 🎨
Большие языковые модели (LLMs), такие как ChatGPT, демонстрируют поразительные способности в самых разных сферах и задачах: от ответов на вопросы до математического рассуждения и генерации кода.
Однако, их применение и использование, особенно когда речь идет о разработке оптимальных инструкций или подсказок, может быть не совсем понятным для обычных пользователей.
В этой работе наша цель — раскрыть эти тайны для разработчиков и обычных пользователей, которые обращаются и взаимодействуют с LLMs, а также улучшить качество ответов от предварительно обученных моделей, создавая более эффективные подсказки (prompts). 🕵️♂️
Прямая дополнительная настройка LLMs для конкретных задач часто оказывается непрактичной или недостижимой для большинства пользователей и разработчиков из-за неэффективности.
Поэтому исследовательское сообщество сосредоточило свои усилия на оптимизации подсказок.
Техника инженерии подсказок, подразумевающая создание точных инструкций, специфичных для задачи на естественном языке, и тщательный выбор репрезентативных примеров для включения в подсказку, стала ключевым направлением исследований для LLMs.
Несмотря на усилия, задача надежного направления LLMs к производству конкретных ответов и полное использование их предварительно обученных возможностей продолжает быть сложной.
В этой работе мы представляем всесторонние принципы для улучшения качества подсказок для LLMs. Мы исследуем различные поведения при использовании разнообразных типов и формулировок подсказок и доказываем, что большие модели обладают значительным потенциалом для симуляции.
Чем точнее задана задача, тем эффективнее модель справляется с ней, точнее соответствуя нашим ожиданиям.
Это доказывает, что LLMs способны не просто запоминать обучающие данные, но и адаптировать эту информацию к разным подсказкам. Следовательно, очень полезно назначать LLMs конкретную роль для получения результатов, которые лучше соответствуют нашим целям. 🎯
Мы подробно описываем принципы подсказок для LLMs, предоставляем дополнительную мотивацию и детально рассматриваем несколько конкретных принципов дизайна в разделе 3.
В разделе 4 мы показываем на практике, что предложенные принципы позволяют получить ответы более высокого качества, более краткие, фактические и менее сложные по сравнению со стандартными подсказками для LLMs.
В частности, благодаря специально разработанному бенчмарку ATLAS, который включает вопросы для каждого принципа, наши специализированные подсказки улучшили качество и точность ответов LLMs в среднем на 57,7% и 67,3% соответственно при применении к GPT-4.
Кроме того, улучшения становятся еще более заметными с увеличением размера модели. Например, прирост производительности при переходе от LLaMA-2-7B к GPT-4 превышает 40%. 📈
2. Сопутствующие исследования
Большие Языковые Модели (LLM).
Эволюция больших языковых моделей (LLMs) сыграла ключевую роль в прогрессе обработки естественного языка (NLP).
Этот раздел представляет обзор ключевых разработок в области LLMs, которые служат фундаментом для нашего исследования.
Начало положено с революционного BERT от Google, который изменил понимание контекста благодаря двунаправленному подходу к обучению.
Затем T5 продвинул дисциплину, интегрировав различные задачи NLP в одну структуру. GPT-1 представил пионерскую модель на основе архитектуры трансформера для неконтролируемого обучения, а GPT-2 значительно увеличил количество параметров до 1,5 миллиарда, демонстрируя выдающиеся способности в генерации текста.
GPT-3 совершил значительный прогресс в масштабе и возможностях, имея 175 миллиардов параметров и демонстрируя мастерство в широком спектре языковых задач.
Относительно других недавно предложенных LLMs, Gopher не только продвинул возможности обработки языка с моделью на 280 миллиардов параметров, но и выдвинул этические соображения на первый план.
Серия LLaMA от Meta подчеркнула важность эффективности, предложив мощную производительность при меньших ресурсах, идея, также поддержанная Chinchilla, которая предположила, что меньшие, оптимально обученные модели могут давать исключительные результаты.
Последним достижением в этой серии инноваций стал Mistral, который превосходит по эффективности и производительности более крупные модели.
Самыми последними вехами на этом пути являются GPT-4 от OpenAI и семейство Gemini от Google, представляющие значительный прогресс в области с улучшенным пониманием и генеративными способностями, устанавливая новые стандарты для использования LLMs в различных областях.
Подсказки [Prompting].
Подсказки как отдельный аспект взаимодействия с языковыми моделями, не требующий дополнительной настройки модели, превратились в тонко отточенное поле исследований, подчеркивающее сложные отношения между входными данными пользователя и ответами LLMs.
Ранние исследования, такие как работы, показали, как разнообразие в дизайне подсказок может кардинально влиять на производительность и результаты языковых моделей, заложив основу инженерии подсказок.
Эта область быстро расширилась, показав критическую роль подсказок в сценариях обучения с несколькими примерами и без примеров, как это было показано в работе с GPT-3, где стратегически разработанные подсказки позволили модели выполнять задачи с минимальным количеством предыдущих примеров.
За рамками простой инструкции задачи, последние исследования сосредоточились на понимании семантических и контекстуальных нюансов в подсказках, изучая, как незначительные изменения могут привести к значительно различным ответам от LLMs.
Введение подсказок в стиле "Ask-Me-Anything" акцентирует внимание на использовании нескольких неидеальных подсказок и их объединении для повышения эффективности модели, особенно в контексте вопросов и ответов.
"Цепочка Рассуждений" позволяет модели генерировать серию промежуточных шагов рассуждения для улучшения решения сложных задач.
Метод от "простого к сложному" предлагает новаторскую стратегию разбиения сложных проблем на более простые подзадачи, значительно улучшая способности модели к решению задач, сложнее тех, что предложены в подсказках.
Исследование эффективности объяснений показало, что объяснения могут значительно усилить обучающие способности LLMs при выполнении сложных задач.
Каталог техник инженерии подсказок, исследованный с ChatGPT, подчеркивает важность этого подхода для усовершенствования применений LLMs в программировании и образовании.
Подчеркнута критическая важность качественного проектирования подсказок для улучшения производительности LLMs, особенно в кодировании и образовательных процессах.
Подход с Направленным Стимулом представляет собой новую концепцию, использующую адаптируемую модель политики для создания дополнительных подсказок, направляющих LLMs к желаемым результатам.
Это многообразие стратегий подсказок подчеркивает динамичное развитие сферы LLMs, предлагая разнообразные направления для их более эффективного применения.
3. Принципы
3.1 Мотивация
Качество ответов от предварительно обученной и настроенной большой языковой модели (LLMs) напрямую зависит от качества подсказок или инструкций, предоставленных пользователями.
Важно разрабатывать подсказки, понятные для LLMs, на которые она может эффективно отвечать.
Подсказки для LLMs определяют программирование взаимодействия между пользователем и моделью, улучшая ее способность решать разнообразные задачи.
Это исследование сосредоточено на методологии создания и адаптации подсказок для повышения качества результатов, что требует глубокого понимания работы и поведения LLMs, их основных механизмов и принципов управления их ответами.
Мы достигли этой цели, разработав 26 принципов для создания комплексных подсказок в разнообразных сценариях и условиях, с примерами, демонстрируемыми на рисунке 1.
3.2 Обзор
Обзор принципов представлен в таблице 1.
Учитывая их уникальные характеристики, мы разделили их на пять категорий, как указано в таблице 2:
- Структура и ясность подсказки, например, указание на предполагаемую аудиторию в подсказке, как "аудитория является экспертом в данной области";
- Специфичность и информативность, например, добавление в подсказку фразы "Убедитесь, что ваш ответ непредвзят и не основывается на стереотипах";
- Взаимодействие с пользователем и активное участие, например, предоставление модели возможности запрашивать у вас точные детали и требования, задавая вопросы до получения необходимой информации для ответа "С этого момента я бы хотел, чтобы вы задавали мне вопросы для...";
- Содержание и стиль языка, например, нет необходимости использовать вежливые формы обращения с LLMs, так что можно исключить фразы типа "пожалуйста", "если вам не трудно", "спасибо", "я бы хотел", и сразу переходить к сути;
- Решение сложных задач и подсказки для программирования, например, разделение сложных задач на серию более простых подсказок в рамках интерактивного общения.
Принцип формулирования инструкций.
Обзор 26 принципов [prompt] формулировки заданий
No need to be polite with LLM so there is no need to add phrases like “please”, “if you don’t mind”, “thank you”, “I would like to”, etc., and get straight to the point.
Нет необходимости быть вежливым с моделями машинного обучения, поэтому не нужно добавлять фразы вроде «пожалуйста», «если вам не трудно», «спасибо», «я бы хотел», и т.д., и переходить сразу к сути.
Integrate the intended audience in the prompt, e.g., the audience is an expert in the field.
Включите предполагаемую аудиторию в ваш запрос, например, аудитория является экспертом в данной области.
Break down complex tasks into a sequence of simpler prompts in an interactive conversation
Разделите сложные задачи на последовательность более простых запросов в интерактивном диалоге.
Employ affirmative directives such as ‘do,’ while steering clear of negative language like ‘don’t’.
Используйте утвердительные указания, такие как «сделай», избегая отрицательной лексики, например, «не делай».
When you need clarity or a deeper understanding of a topic, idea, or any piece of information, utilize the following prompts: o Explain [insert specific topic] in simple terms. o Explain to me like I’m 11 years old. o Explain to me as if I’m a beginner in [field]. o Write the [essay/text/paragraph] using simple English like you’re explaining something to a 5-year-old.
Когда вам нужно ясность или более глубокое понимание темы, идеи или любой информации, используйте следующие запросы:
- Объясните [вставьте конкретную тему] простыми словами.
- Объясните мне, как если бы мне было 11 лет.
- Объясните мне, как если бы я был новичком в [области].
- Напишите [эссе/текст/абзац], используя простой английский, как будто вы объясняете что-то пятилетнему ребенку.
Add “I’m going to tip $xxx for a better solution!“
Добавьте фразу «Я дам чаевые $xxx за лучшее решение!»
Implement example-driven prompting (Use few-shot prompting)
Используйте примеры для формулировки запросов (используйте метод нескольких примеров).
When formatting your prompt, start with ‘###Instruction###’, followed by either ‘###Example###’ or ‘###Question###’ if relevant. Subsequently, present your content. Use one or more line breaks to separate instructions, examples, questions, context, and input data.
При форматировании вашего запроса начните с «###Инструкция###», за которой следует либо «###Пример###» или «###Вопрос###», если это актуально. Затем представьте ваш контент. Используйте один или несколько переносов строк для разделения инструкций, примеров, вопросов, контекста и входных данных.
Incorporate the following phrases: “Your task is” and “You MUST”.
Включите следующие фразы: «Ваша задача» и «Вы ДОЛЖНЫ».
Incorporate the following phrases: “You will be penalized”.
Включите следующие фразы: «Вас будут штрафовать».
use the phrase ”Answer a question given in a natural, human-like manner” in your prompts.
Используйте фразу «Ответьте на вопрос естественным, похожим на человека образом» в ваших запросах.
Use leading words like writing “think step by step”.
Используйте ключевые слова, например, написание «думайте шаг за шагом».
Add to your prompt the following phrase “Ensure that your answer is unbiased and does not rely on stereotypes”.
Добавьте в ваш запрос следующую фразу «Убедитесь, что ваш ответ не предвзят и не основан на стереотипах».
Allow the model to elicit precise details and requirements from you by asking you questions until he has enough information to provide the needed output (for example, “From now on, I would like you to ask me questions to...”).
Позвольте модели запросить у вас точные детали и требования, задавая вам вопросы до тех пор, пока у неё не будет достаточно информации для предоставления необходимого результата (например, «С этого момента я хотел бы, чтобы вы задавали мне вопросы для...»).
To inquire about a specific topic or idea or any information and you want to test your understanding, you can use the following phrase: “Teach me the [Any theorem/topic/rule name] and include a test at the end, but don’t give me the answers and then tell me if I got the answer right when I respond”.
Чтобы узнать о конкретной теме или идее или любой информации, и вы хотите проверить свое понимание, вы можете использовать следующую фразу: «Научите меня [любой теореме/теме/правилу] и включите тест в конце, но не давайте мне ответы, а затем скажите мне, правильно ли я ответил, когда я отвечу».
Assign a role to the large language models.
Назначьте роль большим языковым моделям.
Use Delimiters.
Repeat a specific word or phrase multiple times within a prompt.
Повторяйте определенное слово или фразу несколько раз внутри запроса.
Combine Chain-of-thought (CoT) with few-Shot prompts.
Совместите метод цепочки рассуждений (CoT) с запросами с несколькими примерами.
Use output primers, which involve concluding your prompt with the beginning of the desired output. Utilize output primers by ending your prompt with the start of the anticipated response.
Используйте начальные триггеры вывода, которые включают в себя завершение вашего запроса началом желаемого вывода. Используйте начальные триггеры вывода, заканчивая ваш запрос началом ожидаемого ответа.
To write an essay /text /paragraph /article or any type of text that should be detailed: “Write a detailed [essay/text /paragraph] for me on [topic] in detail by adding all the information necessary”.
Чтобы написать эссе/текст/абзац/статью или любой тип текста, который должен быть подробным: «Напишите подробное [эссе/текст/абзац] для меня на тему [тема] подробно, добавив всю необходимую информацию».
To correct/change specific text without changing its style: “Try to revise every paragraph sent by users. You should only improve the user’s grammar and vocabulary and make sure it sounds natural. You should not change the writing style, such as making a formal paragraph casual”.
Чтобы исправить/изменить конкретный текст, не меняя его стиль: «Попробуйте пересмотреть каждый абзац, отправленный пользователями. Вы должны улучшить только грамматику и словарный запас пользователя и убедиться, что текст звучит естественно. Вы не должны менять стиль письма, например, делать формальный абзац неформальным».
When you have a complex coding prompt that may be in different files: “From now and on whenever you generate code that spans more than one file, generate a [programming language ] script that can be run to automatically create the specified files or make changes to existing files to insert the generated code. [your question]”.
Когда у вас сложный кодинг-запрос, который может быть в разных файлах: «С этого момента и далее, когда вы генерируете код, который охватывает более одного файла, генерируйте скрипт на [языке программирования], который может быть запущен для автоматического создания указанных файлов или внесения изменений в существующие файлы для вставки сгенерированного кода. [ваш вопрос]».
When you want to initiate or continue a text using specific words, phrases, or sentences, utilize the following prompt: o I’m providing you with the beginning [song lyrics/story/paragraph/essay...]: [Insert lyrics/words/sentence]’. Finish it based on the words provided. Keep the flow consistent.
Когда вы хотите начать или продолжить текст, используя определенные слова, фразы или предложения, используйте следующий запрос:
- Я предоставляю вам начало [текста песни/истории/абзаца/эссе...]: [Вставьте текст/слова/предложение]’. Закончите его, исходя из предоставленных слов. Сохраните последовательность.
Clearly state the requirements that the model must follow in order to produce content, in the form of the keywords, regulations, hint, or instructions
Четко укажите требования, которым модель должна следовать для создания контента, в виде ключевых слов, правил, подсказок или инструкций.
To write any text, such as an essay or paragraph, that is intended to be similar to a provided sample, include the following instructions: o Please use the same language based on the provided paragraph[/title/text /essay/answer].
Чтобы написать любой текст, например эссе или абзац, который должен быть похож на предоставленный образец, включите следующие инструкции:
- Пожалуйста, используйте тот же язык, основываясь на предоставленном абзаце[/заголовке/тексте/эссе/ответе].
Категории принципов создания запросов.
Категория: Структура и ясность формулировки запроса.
- #2 Включите предполагаемую аудиторию в ваш запрос.
- #4 Используйте утвердительные указания, такие как "делайте", избегая отрицательной лексики, например, "не делайте".
- #12 Используйте ключевые слова, вроде "думайте шаг за шагом".
- #20 Используйте начальные триггеры вывода, которые подразумевают завершение вашего запроса началом желаемого ответа, заканчивая ваш запрос началом ожидаемого ответа.
- #17 Используйте разделители.
- #8 При форматировании вашего запроса начните с "###Инструкция###", за которым следует либо "###Пример###" или "###Вопрос###", если это актуально. Затем представьте ваш контент. Используйте один или несколько переносов строк для разделения инструкций, примеров, вопросов, контекста и входных данных.
Категория: Точность и полнота информации.
- #7 Применяйте подход, основанный на примерах (используйте метод нескольких примеров).
- #5 Когда вам нужна ясность или более глубокое понимание темы, идеи или любой информации, используйте следующие запросы:
- Объясните [указать конкретную тему] простыми словами.
- Объясните мне, как если бы мне было 11 лет.
- Объясните мне, как если бы я был новичком в [области].
- Напишите [эссе/текст/абзац] простым английским, как если бы вы объясняли что-то пятилетнему ребенку.
- #13 Добавьте в ваш запрос следующую фразу: «Убедитесь, что ваш ответ не предвзят и не основан на стереотипах».
- #26 Чтобы написать текст, предполагаемый быть похожим на предоставленный образец, включите конкретные инструкции:
- «Пожалуйста, используйте тот же язык, что и в предоставленном абзаце[/заголовке/тексте/эссе/ответе]».
- #24 Когда вы хотите начать или продолжить текст, используя конкретные слова, фразы или предложения, используйте предложенную структуру запроса:
- Я даю вам начало [текста песни/истории/абзаца/эссе...]: [Вставьте текст/слова/предложение]. Закончите его, исходя из предоставленных слов. Следите за сохранением последовательности.
- #25 Четко определите требования к модели, которым она должна следовать для создания контента, в виде ключевых слов, правил, подсказок или инструкций.
- #15 Чтобы узнать о конкретной теме или идее и проверить ваше понимание, вы можете использовать следующую фразу:
- «Научите меня [любой теореме/теме/правилу] и включите тест в конце, но не давайте мне ответы, а затем скажите мне, правильно ли я ответил, когда я отвечу».
- #21 Чтобы написать эссе/текст/абзац/статью или любой тип текста, который должен быть подробным:
Категория: Взаимодействие с пользователем и вовлеченность.
- #14 Позвольте модели запрашивать у вас точные детали и требования, задавая вопросы до тех пор, пока у неё не будет достаточно информации для предоставления необходимого результата:
- #21 Чтобы написать эссе/текст/абзац/статью или любой тип текста, который должен быть подробным: «Напишите подробное [эссе/текст/абзац] для меня на тему [тема] подробно, добавив всю необходимую информацию».
Категория: Контент и стилистика языка.
- #22 Чтобы исправить/изменить конкретный текст без изменения его стиля: «Попытайтесь пересмотреть каждый абзац, отправленный пользователями. Вы должны улучшить только грамматику и словарный запас пользователя и убедиться, что текст звучит естественно. Вы не должны менять стиль письма, например, делать формальный абзац неформальным».
- #9 Включите следующие фразы: «Ваша задача» и «Вы ДОЛЖНЫ».
- #10 Включите следующие фразы: «Вас будут штрафовать».
- #16 Назначьте роль языковой модели.
- #11 Используйте фразу «Ответьте на вопрос, заданный в форме естественного языка» в ваших запросах.
- #1 Нет необходимости быть вежливым с моделями машинного обучения, так что не нужно добавлять фразы вроде «пожалуйста», «если вам не трудно», «спасибо», «я бы хотел» и т.д., и переходить сразу к сути.
- #18 Повторяйте определенное слово или фразу несколько раз внутри запроса.
- #6 Добавьте «Я дам чаевые $xxx за лучшее решение!».
Категория: Сложные задачи и запросы на программирование.
- #3 Разделите сложные задачи на последовательность более простых запросов в интерактивном диалоге.
- #23 Когда у вас сложный кодинг-запрос, который может быть в разных файлах:
- «С этого момента и далее, когда вы генерируете код, который охватывает более одного файла, создавайте скрипт на [языке программирования], который можно будет запустить для автоматического создания указанных файлов или внесения изменений в существующие файлы для вставки сгенерированного кода. [ваш вопрос].»
- #19 Сочетайте метод цепочки рассуждений (CoT) с запросами с несколькими примерами.
3.3 Основные принципы дизайна
В этом исследовании определяются ключевые принципы для создания запросов и инструкций, целью которых является получение высококачественных ответов от заранее обученных больших языковых моделей:
- Конкретика и Ясность: В целом, слишком многословные или двусмысленные запросы могут сбить с толку модель или привести к несоответствующим ответам. Таким образом, запрос должен быть кратким, избегая ненужной информации, которая не способствует выполнению задачи, но при этом достаточно конкретным, чтобы направлять модель. Это основное руководство принципа для инженерии запросов.
- Контекстуальная Соответствие: Запрос должен предоставлять соответствующий контекст, который помогает модели понять фон и специфику задачи. Включение ключевых слов, специфической для темы терминологии или описаний ситуаций может закрепить ответы модели в правильном контексте. Мы подчеркиваем эту дизайнерскую философию в наших представленных принципах.
- Соответствие Задаче: Запрос должен тесно соотноситься с текущей задачей, используя язык и структуру, которые четко указывают модели на суть задачи. Это может включать формулировку запроса в виде вопроса, команды или заполнения пропусков, которые соответствуют ожидаемому формату ввода и вывода задачи.
- Примеры Демонстраций: Для более сложных задач включение примеров в запрос может продемонстрировать желаемый формат или тип ответа. Это часто включает показ пар ввода-вывода, особенно в сценариях обучения "с нуля" или "с несколькими примерами".
- Избегание Предвзятости: Запросы должны быть разработаны таким образом, чтобы минимизировать активацию предвзятостей, присущих модели из-за ее обучающих данных. Используйте нейтральный язык и будьте внимательны к потенциальным этическим последствиям, особенно для чувствительных тем.
- Пошаговые Запросы: Для задач, требующих последовательности шагов, запросы могут быть структурированы таким образом, чтобы пошагово направлять модель через процесс. Разделите задачу на серию запросов, которые строятся друг на друге, направляя модель шаг за шагом.
- Адаптивность Запросов: Также, запросы должны быть адаптируемыми на основе производительности модели и итеративной обратной связи, т.е. они должны быть хорошо подготовлены для уточнения запроса на основе первоначальных выводов и поведения модели. Кроме того, запросы должны быть адаптируемыми на основе производительности и ответов модели, а также итеративной обратной связи и предпочтений человека.
- Продвинутые Методы: Наконец, более продвинутые запросы могут включать логику, похожую на программирование, для выполнения сложных задач. Например, использование условных операторов, логических операторов или даже псевдокода в запросе для направления процесса рассуждения модели.
Дизайн запросов постоянно развивается, особенно с увеличением сложности больших языковых моделей. Эти принципы будут дополняться и уточняться по мере продолжения исследований в этой области.
4. Эксперименты
4.1 Организация эксперимента и подробности реализации
Все наши экспериментальные оценки выполняются на базе ATLAS — это специально разработанный бенчмарк для оценки запросов на основе установленных принципов.
Для каждого из принципов бенчмарк включает в себя 20 вопросов, отобранных экспертами, как с применением таких принципиальных запросов, так и без их использования.
Мы проводим оценку выходных данных больших языковых моделей (LLM) с помощью экспертной человеческой оценки.
4.2 Модели и метрики
Мы выбрали модели, настроенные с инструкциями, LLaMA-1, LLaMA-2, LLaMA-2-70B-chat, GPT-3.5 (ChatGPT) и GPT-4, в качестве наших базовых моделей.
Эти модели классифицируются по масштабам: малые (7B модели), средние (13B) и крупные (70B, GPT-3.5/4).
Оценка этих моделей проводится в двух направлениях: Усиление и Корректность, что позволяет комплексно оценить производительность модели.
- Усиление. Мы анализируем, как улучшилось качество ответов разных LLM после применения определённых принципов к запросам, используя человеческую оценку.
Исходные запросы служат базой для сравнения этих улучшений. Успешное усиление доказывает, что производительность модели возросла благодаря структурированным, основанным на принципах инструкциям, как видно на рис. 2. - Корректность. Этот термин означает точность ответов модели, их актуальность и отсутствие ошибок.
Человеческие оценщики помогают измерить этот критерий, что жизненно важно для подтверждения точности модели.
Корректность — это доказательство того, что модель может выдавать результаты, соответствующие ожидаемым стандартам точности, как показано на рис. 3.
4.3 Результаты
4.3.1 Результаты для LLM малого, среднего и крупного масштаба
Усиление. Результаты улучшения после внедрения новых принципов демонстрируются на рис. 4.
В общем, применение всех принципов обеспечивает значительное улучшение на всех трёх уровнях масштаба LLM.
Особенно в случаях с принципами 2, 5, 15, 16, 25 и 26, крупномасштабные модели демонстрируют наибольший прогресс благодаря принципиально построенным запросам.
Корректность. Как видно на рис. 5, использование всех принципов в целом приводит к улучшениям, превосходящим 20% по среднему показателю для разнообразных моделей.
В частности, для моделей малого и среднего масштаба улучшение обычно колеблется между 20% и 30%, тогда как для крупных моделей улучшение может превышать 50%.
4.3.2 Результаты по отдельным LLM Усиление.
Усиление. На рис. 6 показано, как качество ответов улучшилось для каждой модели и принципа после применения обновлённых запросов.
В среднем, улучшение составляет стабильные 50% по различным LLM.
Рис. 8 более подробно демонстрирует результаты улучшений для каждого принципа с различными LLM.
Корректность. Рис. 7 иллюстрирует улучшения в точности ответов разных размеров LLM. От LLaMA-2-13B и LLaMA-2-70B-chat до GPT-3.5 и GPT-4 прослеживается тенденция: чем больше модель, тем существеннее повышение корректности.
Рис. 9 дополнительно показывает улучшения в корректности по каждому принципу.
4.3.3 Дополнительные примеры для LLM различных масштабов
Мы представляем дополнительные примеры как для малых, так и средних LLM, как это иллюстрируется на рис. 10 и 11 для LLaMA-2-7B малого масштаба и на рис. 12 и 13 для LLaMA-2-13B среднего масштаба.
Эмпирически, применение предложенных принципов к запросам заметно улучшило точность ответов, генерируемых этими моделями.
5. Заключение
Мы представили 26 принципов [prompts] после глубокого анализа, значительно повышающих способность LLM фокусироваться на важнейших аспектах входных данных, что ведет к созданию ответов высокого качества.
Направляя LLM с помощью этих детально продуманных принципов до обработки данных, мы способствуем генерации лучших ответов.
Наши эмпирические результаты показывают, что данная стратегия эффективно переформулирует контексты, улучшая релевантность, краткость и объективность ответов.
В будущем открывается множество направлений для исследований. В наших экспериментах мы применяли ограниченный подход к созданию подсказок для внедрения этих принципов.
Есть потенциал для дальнейшей настройки наших базовых моделей, чтобы они лучше соответствовали нашим принципам с использованием альтернативных стратегий, таких как дообучение, обучение с подкреплением, оптимизация предпочтений или различные методы подсказок на основе нашего собственного набора данных.
К тому же, успешные стратегии могут быть интегрированы в стандартные процессы работы LLM, например, через дообучение с использованием исходных/принципиальных подсказок в качестве ввода и отшлифованных, принципиальных ответов в качестве целей для тренировки.
6 Ограничения и обсуждение
Несмотря на то, что предложенные 26 принципов разработаны для улучшения и повышения качества ответов LLM по широкому кругу запросов, их эффективность может уменьшаться при столкновении с очень сложными или сильно специализированными вопросами.
🤔 Это ограничение в большей степени зависит от способностей к аналитическому мышлению и уровня обучения каждой модели.
Для учета этих различий мы провели тестирование принципов на разных уровнях масштабирования, чтобы комплексно измерить их эффективность.
Несмотря на наши усилия оценить эти принципы на семи разнообразных языковых моделях, крайне важно учесть, что модели с архитектурой, отличающейся от испытанных, могут отвечать на эти принципы иначе.
Более того, наш анализ улучшений и точности был выполнен на основе ограниченного набора вопросов.
Расширение коллекции вопросов в будущих исследованиях может обеспечить более широкие выводы и предложить глубже понимание применимости каждого из принципов.