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