Что такое few-shot prompting
Что такое few-shot prompting
Ты уже умеешь писать конкретные инструкции. Но есть техника, которая работает лучше любых инструкций — few-shot prompting (промптинг с примерами). Вместо того чтобы объяснять словами, чего ты хочешь, ты показываешь модели 2–3 примера — и она мгновенно «схватывает» паттерн.
Как это работает
Few-shot prompting использует способность модели к обучению по паттерну в рамках одного запроса (in-context learning). Модель видит несколько примеров «вход → выход» и продолжает следовать тому же паттерну для нового входа.
Схема промпта:
[Инструкция — что делать]
Пример 1:
Вход: ...
Выход: ...
Пример 2:
Вход: ...
Выход: ...
Теперь твоя очередь:
Вход: [новые данные]
Выход:
Модель видит паттерн в примерах и применяет его к новому входу.
Пример без примеров и с примерами
Без примеров (zero-shot, вход):
Переведи текст в деловой стиль. Сделай его формальным, вежливым
и лаконичным. Текст: "Привет! Мы тут подумали и решили, что пора бы
уже обновить договор, а то старый совсем устарел. Давай созвонимся
на неделе?"
Выход (zero-shot — модель старается, но не уверена в ожиданиях):
Предлагаю инициировать процесс обновления договора в связи
с неактуальностью текущей версии. Прошу вас предложить удобное
время для обсуждения.
Результат неплохой, но модель сама додумывает, что такое «деловой стиль».
С примерами (few-shot, вход):
Переведи текст в деловой стиль. Вот примеры того, как это должно
выглядеть:
Пример 1:
Вход: "Слушай, можешь глянуть документ? Надо в среду уже."
Выход: "Коллега, прошу тебя ознакомиться с документом. Срок —
среда, 18:00."
Пример 2:
Вход: "Ок, давай сделаем как ты говоришь, но сначала уточни бюджет."
Выход: "Согласен с предложенным подходом. Прошу перед началом работ
подтвердить бюджет."
Теперь твой черёд:
Вход: "Привет! Мы тут подумали и решили, что пора бы уже обновить
договор, а то старый совсем устарел. Давай созвонимся на неделе?"
Выход:
Выход (few-shot — модель следует паттерну из примеров):
Коллега, предлагаю обновить договор в связи с неактуальностью
текущей редакции. Прошу назначить встречу для обсуждения на этой
неделе.
Few-shot версия точнее: модель скопировала обращение «Коллега», формат «Прошу + глагол», указание конкретики (текущая редакция, на этой неделе).
Ноль, один и несколько примеров
У этой техники есть три варианта:
| Название | Сколько примеров | Когда использовать |
|---|---|---|
| Zero-shot | 0 | Простые задачи, очевидные инструкции |
| One-shot | 1 | Задачи с паттерном, который сложно описать словами |
| Few-shot | 2–5 | Сложные паттерны, специфический стиль или формат |
Zero-shot — твой инструмент по умолчанию. Если модель не попадает в ожидания — добавь один пример (one-shot). Если всё ещё нет — два-три (few-shot).
Few-shot vs инструкции
Примеры заменяют длинные инструкции. Сравни:
Сложная инструкция:
Переведи текст в формат, подходящий для деловой переписки.
Используй обращение «Коллега» в начале. Заменяй разговорные слова
на формальные эквиваленты: «глянуть» → «ознакомиться», «надо» →
«необходимо», «созвонимся» → «провести встречу». Добавляй
конкретность: вместо «скоро» указывай срок, вместо «тут» —
контекст.
Пять правил, которые модель может интерпретировать по-разному.
Два примера (few-shot):
Пример 1:
Вход: "Глянь документ, надо к среде."
Выход: "Коллега, прошу ознакомиться с документом. Срок — среда."
Пример 2:
Вход: "Давай встретимся, обсудим."
Выход: "Коллега, предлагаю провести встречу для обсуждения."
Два примера — и модель сама вывела правила: «Коллега» в обращении, формальные глаголы, конкретные сроки.
Типичная ошибка: неконсистентные примеры
Если примеры противоречат друг другу или инструкции, модель путается:
Переведи текст в ОФИЦИАЛЬНЫЙ тон.
Пример 1:
Вход: "Привет!"
Выход: "Здравствуйте!"
Пример 2:
Вход: "Как дела?"
Выход: "Как ваши дела, дружище?"
Второй пример использует «дружище» — это не официальный тон. Модель получила противоречивый сигнал и не поймёт, какой паттерн воспроизводить.
Проверь себя
У тебя задача: научить модель классифицировать обращения клиентов по трём категориям — «жалоба», «вопрос», «благодарность». Что даст лучший результат: zero-shot инструкция или few-shot с примерами? Почему?
Ответ: few-shot с примерами, потому что границы между категориями могут быть размыты. Примеры покажут модели, куда отнести «всё плохо, но спасибо, что ответили» или «вопрос, но с претензией».
Итог
- Few-shot prompting — техника, в которой ты даёшь модели примеры «вход → выход», и она продолжает следовать паттерну.
- Примеры заменяют длинные инструкции — модель сама выводит правила из паттерна.
- Начинай с zero-shot. Если не попадает — one-shot. Если всё ещё нет — few-shot (2–5 примеров).
- Примеры должны быть консистентными между собой и с инструкцией.
- Few-shot не требует от модели «понимания» — она просто воспроизводит показанный паттерн.
Что дальше
Few-shot — мощная техника. Но её эффективность зависит от того, КАКИЕ примеры ты выбираешь. В следующем уроке разберём, как подбирать примеры: релевантность, разнообразие и краевые случаи.