Промт инжиниринг - страница 9
Если мы рассматриваем промт как единичное действие, нам приходится стремиться к идеальному ответу сразу, здесь и сейчас. Мы вынуждены формулировать идеальный промт, который сразу даст нужный результат. Но если мы рассматриваем процесс как диалог, мы можем постепенно уточнять и дорабатывать его.
Что означает этот процесс уточнения? Представьте себе, что большая языковая модель – это инструмент, например, гончарный круг. Допустим, у мастера есть заготовка из глины. Он ставит её на круг, начинает формировать изделие. Сначала оно не имеет формы. Он придаёт ему очертания, затем уточняет форму, добавляет детали, снова дорабатывает. Он не говорит: «Это ужасная ваза!» и не выбрасывает заготовку после первого касания. Он продолжает работать, снова и снова придавая ей форму, пока не создаст нечто красивое и функциональное.
Так же и с большими языковыми моделями. Наша цель – не получить идеальный ответ с первого запроса, а вести беседу, в ходе которой мы дорабатываем и уточняем результат. Такой процесс может включать в себя целый ряд последовательных промтов и ответов.
Теперь давайте рассмотрим пример. Представьте, что я хочу изучить виртуальную лабораторию по созданию роботов. Я говорю ChatGPT:
Помоги мне исследовать виртуальную лабораторию по созданию роботов в университете. Представь её и расскажи, что я могу там делать.
ChatGPT отвечает:
Добро пожаловать в виртуальную лабораторию по созданию роботов при университете! Здесь у вас есть возможность проектировать роботов, проводить тестирования, программировать поведение и работать в команде над инженерными задачами.
Я продолжаю разговор:
Можем ли мы вместе спроектировать робота?
ChatGPT:
Конечно! Для начала нам нужно определить его назначение и функции, затем придумать концепцию, выбрать компоненты, собрать и протестировать.
Я уточняю:
Отлично! Можешь провести меня через каждый этап по порядку?
И далее модель помогает мне шаг за шагом разрабатывать робота.
Предположим, я хочу создать робота, который умеет следовать по линии на полу. ChatGPT задаёт уточняющие вопросы:
Какова цель робота, с какой скоростью он должен двигаться, какие сенсоры использовать?
Я могу ответить:
Я не уверен. Выбери параметры за меня.
ChatGPT предлагает разумные параметры:
Назначение: образовательный робот
Скорость: 10–15 см/с
Сенсоры: инфракрасные
После этого я прошу ChatGPT рассказать, какие шаги мне предпринять дальше. Он говорит, что следующий этап – мозговой штурм и создание 3D-модели робота.
На этом этапе я могу столкнуться с препятствием: как создать 3D-модель через текстовый чат? Я спрашиваю:
Как мы можем это сделать через текст?
ChatGPT предлагает:
Вы можете использовать сторонние редакторы 3D-моделей, такие как Tinkercad или Sketchpad. Я могу помочь с концепцией и описанием деталей.
Но мне это кажется сложным. Тогда я ищу обходной путь:
Можешь сгенерировать G-code для печати четырёх колёс?
ChatGPT создаёт G-code, но он выглядит странно. Я уточняю:
Где в коде формируется форма колеса?
ChatGPT признаёт ошибку:
Извините, в моём примере нет формы колеса. Я могу предоставить Python-скрипт для генерации STL-файла.
Я спрашиваю:
Можешь написать код на Python, который создаст STL-файл с четырьмя четырёхдюймовыми колёсами и отверстием в центре?
ChatGPT создаёт такой код, и он выглядит правдоподобно.
Теперь я спрашиваю про электронные компоненты для робота. ChatGPT предлагает: