Few-Shot Learning
Few-shot learning (обучение на нескольких примерах) - это техника промпт-инжиниринга, при которой в промпт включают 2-5 примеров "вход → желаемый выход", чтобы LLM имитировала паттерн. Без дополнительного обучения это один из самых практичных способов выровнять поведение модели только за счёт оформления промпта.
Few-shot learning (обучение на нескольких примерах) - это техника промпт-инжиниринга, при которой в промпт включают 2-5 примеров "вход → желаемый выход", чтобы LLM имитировала паттерн. Без дополнительного обучения это один из самых практичных способов выровнять поведение модели только за счёт оформления промпта.
Почему это важно
Систематически представленная в статье о GPT-3 2020 года "Language Models are Few-Shot Learners", эта техника продемонстрировала, что большие LLM могут выполнять задачи, которым их никогда явно не обучали, увидев всего несколько примеров. Точность на одной и той же задаче в среднем на 20-40% выше при few-shot по сравнению с zero-shot. Это самое дешёвое значимое улучшение качества, доступное без дообучения.
Zero-Shot против Few-Shot против дообучения
Zero-Shot: Только инструкции, без примеров.
"Классифицируй тональность этого предложения как позитивную/негативную/нейтральную: [предложение]"
Few-Shot: Включены 2-5 пар примеров.
"Классифицируй как позитивную, негативную или нейтральную. Пример 1: 'Это было действительно здорово' → позитивная Пример 2: 'Не для меня' → негативная Пример 3: 'Было нормально' → нейтральная Предложение для классификации: [новое предложение]"
Дообучение (Fine-Tuning): Обновление весов модели на сотнях и тысячах примеров.
| Аспект | Zero-Shot | Few-Shot | Дообучение |
|---|---|---|---|
| Стоимость настройки | Нет | Минуты | От часов до дней |
| Точность | Низкая | Средняя | Высокая |
| Расход токенов | Низкий | Средний (примеры раздувают промпт) | Низкий (после обучения) |
| Гибкость | Меняется мгновенно | Меняется мгновенно | Требует переобучения |
Few-shot находится между этими двумя подходами и является оптимальной точкой для "большинства продакшен-задач, которым нужно быстрое повышение качества".
Проектирование эффективных примеров few-shot
Охватывайте разнообразные случаи: Включайте позитивные, негативные и пограничные случаи, чтобы модель вывела распределение.
Единообразный формат: Каждый пример должен следовать одному и тому же формату "вход → выход". Несогласованные форматы ухудшают точность.
Сложные пограничные случаи: Простые примеры оставляют модель неуверенной на границах. Включайте тонкие случаи вроде "выглядит позитивно, но на самом деле нейтрально".
Порядок примеров: Исследования показывают, что порядок влияет на результаты. Распространённая эвристика - сначала самые ясные примеры, затем более сложные.
Число примеров: 3-5 оптимально для большинства задач. Большее число обычно добавляет стоимость токенов с убывающей отдачей.
Хорошие сценарии использования
Классификация: Автоматическая разметка обращений клиентов по категориям.
Преобразование формата: JSON в Markdown, неструктурированный текст в структурированные данные.
Имитация стиля: Обучение голосу бренда или авторской прозе на основе нескольких примеров.
Извлечение для конкретной области: Извлечение определённых полей из договоров или статей.
Настройка перевода: Кастомизация перевода с включением вашего глоссария.
Ограничения
Расход контекста: Длинные примеры съедают токены и сокращают эффективное контекстное окно.
Менее стабильно, чем дообучение: Высокообъёмные повторяющиеся задачи всё же выигрывают от дообучения.
Современные модели лучше работают в zero-shot: Claude Opus 4.6, GPT-5 и подобные передовые модели существенно сокращают разрыв в zero-shot, поэтому преимущество few-shot меньше, чем было раньше. Часто zero-shot достаточно.
Качество примеров определяет результат: Плохие примеры → плохие результаты. Проектирование примеров - это ключевой рычаг качества.
Источники: