Chain-of-Thought Prompting
"Chain-of-Thought Prompting" переводится на русский как "Промптинг цепочки мыслей или дословно цепочка мыслей".
Last updated
"Chain-of-Thought Prompting" переводится на русский как "Промптинг цепочки мыслей или дословно цепочка мыслей".
Last updated
Источник изображения: Wei et al. (2022)
Представленная в исследовании Wei et al. (2022) техника формулировки промптов "цепочка мыслей" (CoT) позволяет выполнять сложные рассуждения, используя промежуточные этапы логического мышления. Этот метод можно комбинировать с методом few-shot для достижения лучших результатов в более сложных задачах, требующих последовательных рассуждений перед предоставлением ответа.
Промпт:
Сумма нечетных чисел в данной группе оказывается четным числом: 4, 8, 9, 15, 12, 2, 1. A: Если сложить все нечетные числа (9, 15, 1), получится 25. Ответ - Неверно. Сумма нечетных чисел в данной группе оказывается четным числом: 17, 10, 19, 4, 8, 12, 24. A: Если сложить все нечетные числа (17, 19), получится 36. Ответ - Верно. Сумма нечетных чисел в данной группе оказывается четным числом: 16, 11, 14, 4, 8, 13, 24. A: Если сложить все нечетные числа (11, 13), получится 24. Ответ - Верно. Сумма нечетных чисел в данной группе оказывается четным числом: 17, 9, 10, 12, 13, 4, 2. A: Если сложить все нечетные числа (17, 9, 13), получится 39. Ответ - Неверно. Сумма нечетных чисел в данной группе оказывается четным числом: 15, 32, 5, 13, 82, 7, 1. A:
Результат:
Сложение всех нечетных чисел (15, 5, 13, 7, 1) дает 41. Ответ - Неверно.
печатляюще! Мы получаем отличные результаты, когда разъясняем каждый шаг рассуждения. В действительности, мы можем успешно решить эту задачу, даже предоставив меньше примеров. Оказывается, что иногда достаточно всего одного примера:
Промпт:
Нечетные числа в этой группе складываются в четное число: 4, 8, 9, 15, 12, 2, 1. А: Сложив все нечетные числа (9, 15, 1), получим 25. Ответ: Неверно. Нечетные числа в этой группе складываются в четное число: 15, 32, 5, 13, 82, 7, 1. А:
Результат:
Сложив все нечетные числа (15, 5, 13, 7, 1), получим 41. Ответ: Неверно.
Имейте в виду, что авторы утверждают, что такая способность проявляется у достаточно больших языковых моделях.
Источник изображения: Kojima et al. (2022)
Одной из недавних новых идей является концепция zero-shot CoT (Kojima et al. 2022), которая заключается в добавлении фразы "Давайте рассмотрим пошагово" в исходный промпт. Давайте рассмотрим простую задачу и посмотрим, как модель справится:
Промпт:
Я пошел на рынок и купил 10 яблок. Я отдал 2 яблока соседу и 2 яблока мастеру по ремонту. Затем я пошел и купил еще 5 яблок, и съел 1. Сколько яблок у меня осталось?
Результат:
11 яблок
Ответ неправильный! Давайте попробуем еще раз, используя специальный запрос.
Промпт:
Я отправился на рынок и купил 10 яблок. Я подарил 2 яблока соседу и 2 яблока ремонтнику. Затем я пошел и купил еще 5 яблок, и съел 1. Сколько у меня осталось яблок? Давай рассмотрим пошагово.
Результат:
Сначала у вас было 10 яблок. Вы подарили 2 яблока соседу и 2 яблока ремонтнику, поэтому у вас осталось 6 яблок. Затем вы купили еще 5 яблок, и теперь у вас было 11 яблок. Наконец, вы съели 1 яблоко, поэтому у вас осталось 10 яблок.
Действительно удивительно, что такой простой запрос так хорошо подходит для решения этой задачи. Это особенно полезно, когда у вас ограниченное количество примеров для использования в промпте.