Всем привет, меня зовут Никита Игнатенко, я много работаю с таблицами. Много раз подряд я делал одну и ту же рутинную работу в Excel: открывал папку за папкой, вытаскивал данные, считал, сохранял. Довольно быстро надоело тратить по 3–4 часа на такие действия, и я решил написать VBA-скрипт, который сделает всё сам. Но дело в том, что я не программист, и знаний VBA хватало, чтобы записать простой макрос, а на сложный алгоритм — нет. Тогда я решил использовать достижения технической мысли и пошёл в нейросети. Ожидание: «Сейчас быстро накидаю промт — и готово». Реальность: нейросеть брала не те данные, считала по-своему, будто меня не слышала.
И вместо того чтобы гадать, я спросил у самой нейросети: «Как мне писать промты, чтобы ты понимала с первого раза?» Знаете, это сработало. Я применил советы, которые мне дала нейросеть, и всё заработало. Теперь на ту же работу уходит 5 минут.
Мои выводы и совет
Если нейросеть вас не понимает — скорее всего, дело не в ней, а в промте.
- Следуйте трём критериям: конкретность, контекст, ограничения.
- Прогоняйте промт через чек-лист из шести пунктов.
- Пишите на том языке, который понимает нейросеть: для Excel — терминами Excel, для кода — именами функций, для текста — фактами.
Попробуйте сами. Составьте промт как ТЗ, проверьте по чек-листу — и вы удивитесь, насколько точными станут ответы.
Три критерия хорошего промта
Раньше я писал промты как попало, например: «Сделай скрипт для Excel», а нейросеть выдавала что-то общее. Оказывается, промт должен быть описан как техническое задание. А у технического задания есть некоторые правила.
- Писать конкретнее. Не «Сделай скрипт», а «Напиши макрос VBA для Excel 2019, который открывает файл из папки C:\Reports, копирует диапазон A1:D10 на лист "Данные" и вставляет в сводный файл». Чем точнее писать, тем меньше нейросеть додумывает. В целом, это правило работает везде, и оно достаточно простое: если моё задание поймёт другой человек, то его поймёт и робот. Если в промпте нет каши, то и в ответе тоже.
- Продолжение первого правила, но все же поставлю отдельным пунктом — писать без абстракций. Слова «быстро», «удобный», «правильный» — это абстракции. Их надо заменять цифрами и фактами и подробно описывать каждый шаг, потому что нейролинк ещё не ввели в массовое производство и нейросеть не может считывать мысли, чтобы понимать с полуслова.
- Контекст. Нейросети нужно объяснить, в каких условиях работает скрипт. Какая версия Excel? Как называются листы? Где лежат файлы? Без контекста она берёт стандартные настройки, которые часто не подходят. Например, я не указывал версию Excel и она выдала код для Office 365, который у меня не запускался. А когда я указал — код заработал. Также нужно учитывать полноту контекста, например, ответил ли я на вопросы: кто, для кого, зачем, в каком формате?
- Ограничения. Что скрипт не должен делать? Какие данные не трогать? Какой формат вывода? Задал ли я рамки по объёму, стилю, действиям? Ограничения убирают лишнее. Например, я теперь добавляю «Не удаляй исходные файлы, не используй всплывающие окна, расчёты делай с округлением до двух знаков» и скрипт больше не творит странное.
💻 Библиотека ИИ для айтишников
Все самое полезное про ИИ: работающие промты, баттлы нейронок и свежие новости.
Как это сработало на моей задаче
Снова вернусь в прошлое. Вот пример старого промпта (так делать не надо): «Напиши макрос для Excel, который будет открывать файлы и собирать данные».
Нейросеть выдавала что-то вроде:
Но мне-то нужно было другое: открывать строго определённые файлы из строго определённых папок, брать конкретные ячейки и считать сумму. Поэтому следуя вышеописанным принципам, пишем задание по шагам, как алгоритм для стажёра: указываю версию Excel, названия листов, пути, расчёты.
Вот новый промт (рабочий):
Вот это уже похоже на техническое задание, ведь я даже пронумеровал шаги :)
Дальше добавляю контекст: «Excel 2019, русская версия, имена листов на русском». И уточняю ограничения: «не удалять исходные файлы, не спрашивать подтверждения, работать только с указанными папками».
Готово, у меня есть ТЗ:
С таким ТЗ нейросеть уже не ошибется и выдаст идеальный код. Выглядит так:
Я скопировал, вставил в редактор VBA, запустил — и всё сработало с первого раза.
Что получилось в итоге
Раньше я тратил 3–4 часа на рутину. Теперь запускаю макрос и занимаюсь другими задачами — через 5 минут данные готовы: скрипт сам обходит все папки, собирает цифры, считает итоги.
Программистом я не стал, но научился правильно ставить задачи нейросети, а это важнее, чем знать синтаксис.
Мои выводы и совет
Если нейросеть вас не понимает — скорее всего, дело не в ней, а в промте.
- Следуйте трём критериям: конкретность, контекст, ограничения.
- Прогоняйте промт через чек-лист из шести пунктов.
- Пишите на том языке, который понимает нейросеть: для Excel — терминами Excel, для кода — именами функций, для текста — фактами.
Попробуйте сами. Составьте промт как ТЗ, проверьте по чек-листу — и вы удивитесь, насколько точными станут ответы.