Сабир Алмасов – Основы промт-инжиниринга (страница 7)
Пример первый. Трансформация формата данных.
Задача: У вас есть строки текста с информацией о пользователях, и вам нужно привести их к единому, чистому формату.
Промт:
Извлеки данные из текста и представь их в формате 'Параметр: Значение', где каждый параметр находится на новой строке.
Пример:
Теперь обработай этот текст:
Модель видит ваш пример и точно понимает, что от нее требуется: найти соответствующие данные, присвоить им правильные названия (даже если порядок во входном тексте другой!) и расположить все на новых строках. Результат будет идеально отформатирован с первой попытки.
Пример второй. Имитация простого стиля!
Задача: Превращать формальные новостные поводы в короткие, интригующие заголовки для соцсетей.
Промт:
Преврати официальное утверждение в короткий, энергичный заголовок для новостного канала.
Пример:
Теперь преврати это утверждение: 'Интеграция нового программного модуля в нашу систему позволила сократить среднее время обработки клиентских запросов на 25 процентов.'
Из одного примера модель поймет все правила: нужно сокращать, добавлять экспрессии ("взлетели") и ставить восклицательный знак.
Но что делать, если логика сложнее, чем простое копирование формата?
Техника третья: Few-Shot.
Few-Shot Prompting (промтинг "с несколькими выстрелами") – это самая мощная из трех техник. Здесь вы предоставляете модели не один, а несколько примеров (обычно от двух до пяти).
Суть техники: Когда модель видит несколько пар "вход -> выход", она не просто копирует формат. Она начинает анализировать и выявлять скрытую закономерность. Она пытается понять логику, которая связывает все ваши примеры. По сути, вы не даете ей шаблон, вы даете ей мини-урок, проводите экспресс-обучение прямо внутри промта.
Это позволяет решать гораздо более сложные и неочевидные задачи.
Когда эта техника работает лучше всего?
Few-Shot незаменим, в следующих случаях:
Первый! Задача требует сложной классификации по вашим собственным правилам. Например, распределить отзывы клиентов по категориям, которые придумали вы, а не модель.
Второй! Логика трансформации данных неочевидна и ее трудно описать словами.
Третий! Вам нужен очень специфичный стиль или тон, который имеет несколько особенностей.
Примеры качественных Few-Shot промтов:
Пример первый. Сложная классификация!
Задача: Вы работаете в поддержке и вам нужно автоматически распределять входящие сообщения от пользователей по трем внутренним категориям: "Проблема с оплатой", "Технический вопрос" и "Предложение по улучшению".
Промт:
Классифицируй сообщение пользователя по одной из трех категорий: "Проблема с оплатой", "Технический вопрос", "Предложение по улучшению". Вот несколько примеров:
Пример 1:
Пример 2:
Пример 3:
Пример 4:
Теперь классифицируй это сообщение:
Посмотрите, насколько сложна логика. В последнем сообщении есть и слово "оплатить", и слово "банк", но по сути это техническая проблема, связанная с работой платежного шлюза, а не проблема списания. Описать это правило словами было бы очень сложно. Но благодаря нескольким примерам, модель улавливает эту закономерность и с высокой вероятностью даст правильный ответ: "Технический вопрос".
Итог: Когда какую технику выбрать?
Теперь у вас есть три мощных инструмента. Вот простая ментальная модель, которая поможет вам быстро выбирать нужный:
Первое! Если Задача стандартная, и модель точно знает, как ее делать?"
Используйте Zero-Shot. Это самый быстрый и эффективный способ для перевода, суммаризации, мозгового штурма и других общих задач. Не усложняйте без необходимости.
Второе! Если вам нужно, чтобы ответ был в очень специфическом, но простом формате или стиле?"
Используйте One-Shot. Один хороший пример – лучший способ показать модели требуемый шаблон, будь то форматирование текста или имитация простого стиля.
Третье! Если задача сложная, а логика ее выполнения неочевидна и вам нужно, чтобы модель поняла сложные, негласные правила?"
Используйте Few-Shot. Это ваш главный инструмент для сложных классификаций, извлечения данных по вашим личным правилам и обучения модели нюансам вашего уникального стиля.
Освоив эти три фундаментальных способа постановки задач, вы получаете ключ к управлению нейросетью на высоком уровне. Вы больше не действуете вслепую – вы осознанно выбираете стратегию в зависимости от сложности и специфики вашей цели.
Глава 6: Продвинутые стратегии. Chain-of-Thought, Self-Consistency и другие.
В предыдущей главе мы освоили три основных способа постановки задач. Вы научились осознанно выбирать между прямым приказом (Zero-Shot), предоставлением шаблона (One-Shot) и обучением на закономерностях (Few-Shot). Это дало вам ключ к управлению нейросетью на высоком уровне.
Теперь мы поднимемся еще на одну ступень. Мы поговорим о стратегиях, которые нужны тогда, когда задача требует не просто ответа, а рассуждений. Большинство ошибок нейросети совершают не потому, что не знают ответа, а потому, что "торопятся" и пытаются выдать его одним скачком, пропуская промежуточные логические шаги. Продвинутые стратегии как раз и направлены на то, чтобы заставить модель не торопиться, а думать последовательно.
Chain-of-Thought: Заставляем нейросеть "думать вслух"
Chain-of-Thought, или "Цепочка Мыслей" – это, возможно, самый важный прорыв в промт-инжиниринге за последние годы. Это простая, но невероятно мощная техника, которая кардинально повышает точность ответов модели в задачах, требующих логики, математических вычислений или анализа последовательности действий.
Суть техники: Вы прямо просите нейросеть не просто дать финальный ответ, а сначала расписать всю цепочку своих рассуждений шаг за шагом.
Почему это работает? Вспомним, что нейросеть – это система, предсказывающая следующий токен. Когда вы просите ее решить задачу и сразу дать ответ, ей нужно совершить огромный "прыжок" к финальному набору токенов, и вероятность ошибки в этом прыжке очень велика. Но когда вы просите ее расписать решение по шагам, каждая следующая мысль – это маленький, логичный и гораздо более вероятный шажок от предыдущей. Вы заставляете ее решать задачу последовательно, как это делал бы человек, и это резко снижает количество ошибок. По сути, вы просите ее "показать свою работу".
Давайте посмотрим на элементарном примере, где стандартный подход часто дает сбой.
Задача: Простая логическая задачка на внимательность.
Плохой промт (стандартный Zero-Shot):
Современные модели, скорее всего, справятся с этой задачей. Но еще совсем недавно многие из них могли ошибиться, запутавшись в последовательности действий (например, сначала сложить 5+3, а потом вычесть 2 и 1). Они пытались выдать результат сразу.
Теперь давайте применим магию Chain-of-Thought.
Хороший промт (с использованием Chain-of-Thought):
На столе лежит 5 яблок. Я взял 2 яблока, а затем моя сестра положила на стол еще 3. После этого мы съели 1 яблоко. Сколько яблок осталось на столе? Распиши свои рассуждения по шагам, а в конце дай финальный ответ.
Одна простая фраза в конце меняет все.
Вероятный результат:
Конечно, давайте разберем по шагам:
Начальное состояние: На столе было 5 яблок.
Действие 1: Вы взяли 2 яблока. Значит, на столе осталось: 5 минус 2 равно 3 яблока.
Действие 2: Ваша сестра положила еще 3 яблока. Теперь на столе: 3 плюс 3 равно 6 яблок.