Мне стало интересно узнать подробнее про CoT (Chain of Thought) — цепочки рассуждений, и вот что написано по этому поводу.
Когда применяем?
- Для решения сложных задач, когда важно контролировать процесс решения
- Когда для решения одной задачи может быть полезно использовать разные LLM.
Как применяем?
Вместо:
Напиши Python-функцию для нахождения всех анаграмм в списке строк
Используем:
Напиши Python-функцию для нахождения всех анаграмм в списке строк. Давай подумаем шаг за шагом, как решить эту задачу. Сначала определим, что такое анаграммы и как их можно идентифицировать, затем разработаем алгоритм, и наконец напишем код.
Более продвинутый метод или "Few-shot CoT" — показываем пример рассуждения для одной задачи, а затем просим решить другую:
Задача 1: Напиши функцию для сортировки списка.
Решение: Сначала определим интерфейс функции. Нам нужен один параметр - список.
Затем выберем алгоритм сортировки. Для простоты используем встроенный метод sort().
def sort_list(items):
items.sort()
return items
Задача 2: Напиши функцию для поиска дубликатов в списке.
Решение:
Перевёл промты, чтобы никому не пришлось пользоваться переводчиком, смысл остался прежним.
