Пишем юнит-тесты многошаговым промптом

Урок 68 из 299 курса «OpenAI Cookbook»: официальный курс OpenAI Academy (ОпенАИ) на русском языке. Урок входит в платный доступ; первые уроки курса бесплатно.

О чём урок

Сложные задачи, такие как написание модульных тестов, могут выиграть от использования многошаговых промптов. В отличие от одиночного промпта, многошаговый промпт генерирует текст от GPT, а затем передает этот сгенерированный текст в последующие промпты. Это может быть полезно в случаях, когда вы хотите, чтобы GPT обдумал что-либо перед ответом или разработал план перед его выполнением. В этом notebook мы используем 3-шаговый промпт для написания модульных тестов на Python, выполняя следующие шаги: Объяснение: Получив функцию Python, мы просим GPT объяснить, что делает функция и почему. Планирование: Мы просим GPT спланировать набор модульных тестов для функции. Если план слишком короткий, мы просим GPT дополнить его, предложив больше идей для модульных тестов. Выполнение: Наконец, мы поручаем GPT написать модульные тесты, которые охватывают запланированные сценарии. Пример кода демонстрирует несколько усовершенствований для связанного многошагового промпта: Условное ветвление (например, запрос на уточнение только в том случае, если первый план слишком короткий) Выбор различных моделей для разных шагов Проверка, которая перезапускает функцию, если результат неудовлетворителен (например, если сгенерированный код не может быть разобран модулем Python ast) Потоковый вывод, чтобы вы могли начать читать результат до его полной генерации (удобно для длинных, многошаговых результатов) Обязательно проверяйте любой код перед его использованием, поскольку GPT допускает множество ошибок (особенно в задачах, основанных на символах, подобных этой). Для достижения наилучших результатов используйте самую мощную модель (GPT-4, по состоянию на май 2023 года).

Урок входит в полный доступ. Полный текст и видео открываются после оплаты. Первые уроки каждого курса бесплатны.

Полезные гиды