Я больше не доверяю ИИ при работе в связке с Python
Или что я понял, используя ИИ для автоматизации SEO задач на питоне и не только
Дисклеймер — данный материал носит исключительно ознакомленный характер и не содержит абсолютно никаких призывов. Все изложенное ниже является личным опытом автора, который не является разработчиком. F*ck the shame!
0. Перед написанием скрипта — даю ИИ технические требования. Например, если это парсинг выдачи — отправляем ему код региона, тип выдачи, кол-во результатов из SERP + прошу вынести их в отдельные переменные, чтобы я быстро смог заменить эти данные на другие.
Результат — код становится структурнее и содержит меньше мусора.
1. Декомпозиция — это база! Не стоит просить ИИ написать парсер с кучей функций за 1 промпт. Эффективнее будет написать эти функции по отдельности, каждую протестить и потом объединить их в 1 скрипт который ты просто запустишь и на выходе получишь несколько эксель табличек с нужными тебе листами и столбцами.
Проще собрать отдельные функции в 1 комбайн, чем вечно копаться в одном файле и править эти функции по отдельности.
2. Хватит хранить большие данные в массивах и занимать место в своем коде. Если твои данные для входа (например список доменов) в будущем будут меняться или дополняться — храни их в отдельных файлах. Во первых, так удобнее редактировать сами данные для входа в анализ. Во вторых, при будущей доработке скрипта через ИИ с переменными, которые хранят в себе большие данные в отдельных файлах — ты ускоряешь процесс чтения кода для самого ИИ, что снижает заполнение окна у ИИ модели и вероятность появления артефактов в твоем скрипте (какие-то функции могут быть вырезаны после доработки длинного кода).
Я всегда храню большие данные в отдельных .txt файлах (семантику, списки доменов и URL-адресов, стоп фразы и т.д).
3. Логируй процесс работы скрипта. Объясню на своем реальном примере. Делал для своего WP проекта плагин на PHP для массового импорта данных (при импорте у страниц нужно было заполнять/обновлять атрибуты для корректной фильтрации на листинге). Но страницы создавались без указаных атрибутов, а уже созданные — не обновлялись. Хотя в админке я проверил названия этих полей через код (чекнул атрибут name). И только после того, как подключил лог, понял, что скрипт искал их названия в БД, а там они назывались по другому — в итоге после доработки скрипта — плагин стал работать корректно.
ИИ может помочь с логами, если ты четко ему объяснишь, что логировать. Это спасает дебаг, особенно при работе с API или базами WP.
4. Если делаешь скрипт для долгого анализа (например хочешь проверить несколько тысяч запросов, снять по ним выдачу и покрутить данные дальше как тебе нужно) — попробуй сначала тоже самое на десятке/сотне запросов, тем самым сэкономишь себе время на полученный результат. А когда он тебя устроит — можешь запускать скрипт хоть на сотни тысяч запросов и залипать в терминал на свой лог.
Лучше пусть ИИ научится на маленьком датасете, чем на твоем терпении и нервах.
5. Если при доработке скрипта этот ленивый ИИ пишет тебе кусок кода, который нужно заменить, а тебе лень копаться в скрипте или ты не знаешь его синтаксис — попроси ИИ написать весь скрипт.
Я просто пишу ему «Напиши весь скрипт, учитывая последние изменение».
6. Бэкап — спасение твоих нервов! Сохраняй копии файлов, у которых тебя устроил результат на выходе. Часто бывает так, что после доработки скрипта — ИИ может изменить его логику и тебе придется вернуться к предыдущей версии.
Я называю их версиями (например: main-v1.py, main-v2.py и тд). Так я могу откатиться в любой момент и не просить ИИ восстанавливать логику, которую он сам же и стер.
Если твоя задача длится дольше, чем 30 минут и регулярно повторяется — ее нужно автоматизировать!
А вы используете Python для автоматизации SEO задач?