Как использовать ChatGPT? Вот вам пошаговая инструкция, как автоматизировать перевод на иностранный язык статей WordPress сайта с помощью ChatGPT. Так же автоматизируется публикация статей-переводов на WordPress сайте. Оценить результат данной пошаговой инструкции можете, перейдя в раздел BG данного сайта. Все статьи на болгарском языке автоматически переведены с помощью ChatGPT и автоматически опубликованы.
Как использовать ChatGPT?
Думаю, вопросом «Как использовать ChatGPT?» задается каждый, кто только позадавал вопросы искусственному интеллекту от компании OpenAI и восхитился ответами. Автор статьи восхитился, и так возникла идея перевода данного сайта (adminkin.pro) на иностранный язык (болгарский) для расширения читательской аудитории сайта.
Для автоматизации процесса перевода статей и их публикации на WordPress сайте была написана небольшая программа на Python. Эта программа для перевода статьи на иностранный язык обращается к ChatGPT и автоматически публикует статью-перевод на WordPress сайте. Программа доступна для скачивания. Но давайте все по порядку!
Многоязычный WordPress сайт
Плагин Polylang
WordPress плагин Polylang подготовит WordPress сайт к многоязычности. Polylang позволит добавлять несколько языковых версий контента: страниц, записей, рубрик, меню, меток и других элементов сайта.
Заходим в WordPress админку сайта и устанавливаем плагин Polylang:

После установки все настройки плагина Polylang можно найти на боковой панели WordPress админки во вкладке Языки. Выбираем эту вкладку, а в ней раздел Языки. В поле Выбрать язык выбираем иностранный язык, который хотим добавить на сайт, и нажимаем кнопку Добавить язык:

Выбираем вкладку Языки, а в ней следующий раздел Переводы. Здесь переводим на иностранный язык все строки, которые встречаются на сайте:

Выбираем вкладку Языки, а в ней раздел Настройки. В подразделе Модификация URL можно выбрать вид URL для статей-переводов. У меня настроено так:

Остальные настройки оставляем по умолчанию. На этом настройки Polylang завершены.
Переходим на вкладку Записи, а затем на Рубрики. Переводим рубрики на иностранный язык. Вот, например, у меня получились две рубрики с одинаковым названием Linux для русской и для болгарской версий сайта:

Переходим на вкладку Внешний вид, а затем Меню. Создаем новое меню для иностранной версии сайта. В меню можно добавить Переключатель языка:

Выбираем область отображения для вновь созданного меню и нажимаем кнопку Сохранить меню. Меню готово.
Аналогичным способом делаем перевод меток, страниц и остальных элементов сайта, кроме статей. Статьи доверим переводить ChatGPT.
Вот так у меня выглядят метки для разных языков (русского и болгарского):

Многоязычный WordPress сайт готов. Не готовы только переводы записей сайта. Терпение, осталось немного!
Доступ к ChatGPT
Подключение через VPN из России
Доступ к ChatGPT из России в 2023 году запрещен. Доступ возможен только через VPN. В статье «VPN 2023 год. Создаем личный VPN за 292 руб. в месяц» подробно описывается, как настроить VPN и открыть в браузере сайт разработчиков ChatGPT (https://chat.openai.com/auth/login).
API key для доступа к ChatGPT
На сайте разработчиков ChatGPT нужно зарегистрироваться, чтобы получить API key. С помощью этого API key Python-программа автоматического перевода и публикации статей (см. ниже) будет самостоятельно получать переводы статей от ChatGPT.
Есть сложность при регистрации на сайте разработчиков ChatGPT: нужно подтвердить мобильный номер. При этом, мобильный номер из России не подойдет. Не подойдут и виртуальные мобильные номера из всевозможных стран, предложения о покупки которых заполонили весь Интернет. Я, к сожалению, не подскажу, как решить эту проблему, не знаю. У меня есть мобильный номер не из России, поэтому данная проблема глубоко не изучалась.
Python программа автоматического перевода и публикации статей
Установка необходимых пакетов в Linux (ОС Debian)
Установим пакеты, необходимые для запуска Python программы автоматического перевода и публикации статей. Сначала обновим список пакетов:
apt update
Установим пакет pip для Python 3. Пакет pip позволяет устанавливать сторонние библиотеки и модули для Python.
apt install python3-pip
Установим пакеты для работы с базами данных:
apt install mariadb-server libmariadb-dev
pip3 install mysqlclient==1.4.4
Настроим безопасность баз данных. Для этого запустим команду:
mysql_secure_installation
Вам будет предложено выполнить ряд шагов, включающих установку пароля администратора, удаление анонимных пользователей, запрет удаленного доступа и другие настройки безопасности базы данных.
Установим Python-пакет Beautiful Soup 4. Beautiful Soup предоставляет удобные инструменты для разбора и обработки HTML и XML-документов.
pip3 install beautifulsoup4
Установим Python-пакет Transliterate. Transliterate предоставляет функциональность транслитерации из кириллицы в латиницу.
pip3 install transliterate
Установим пакет OpenAI API Python, чтобы использовать ChatGPT:
pip3 install openai
Подготовка Python программы к запуску
Python программа автоматического перевода и публикации статей (translator.py) доступна по ссылке https://git.adminkin.pro/gogsadmin/translator. Можно скачать, можно просмотреть онлайн.
Перед запуском Python программы translator.py рекомендуется сделать бекап базы данных WordPress сайта. Программа вносит изменения в следующие таблицы: wp_posts, wp_postmeta, wp_term_taxonomy, wp_terms, wp_term_relationships.
Для работы программы понадобится дополнительная таблица wp_posts_translated, создать которую можно SQL командой:
CREATE TABLE `wp_posts_translated` (
`ID` bigint(20) UNSIGNED NOT NULL,
`post_modified` datetime NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
ALTER TABLE `wp_posts_translated`
ADD PRIMARY KEY (`ID`);
COMMIT;
В таблице wp_posts_translated будут храниться ID переведенных статей.
Открываем файл translator.py в любом текстовом редакторе и правим строку:
blocks = ["p", "h1", "h2", "h3", "h4", "h5", "img", "li"]
Это список HTML-тегов, содержимое которых будет переводиться. У меня переводятся только абзацы (тег p), все заголовки (теги h1…h5), альтернативный текст для изображения (атрибут alt тега img) и элементы нумерованного или ненумерованного списка (тег li).
Правим строку:
openai.api_key = "OPENAI_API_KEY"
Вместо OPENAI_API_KEY
вставляем свой API key для доступа к ChatGPT.
Правим строку:
prompt = "Интересует только перевод с русского языка на болгарский язык. Если в оригинале встречается html разметка, то вставлять ее в соответствующих местах перевода. Если перевод совпадает с оригиналом, то вывести только перевод, пояснения о совпадении оригинала и перевода не требуются. Переведи: \"" + prompt + "\""
prompt
— это текстовая строка, которая передается ChatGPT в качестве входных данных для перевода текста.
Правим строку:
db = MySQLdb.connect(host="DB_SERVER", user="DB_USER", passwd="DB_PASSWORD", db="DB_NAME", charset = 'DB_CHARSET')
Вместо DB_SERVER
вставляем доменное имя или IP адрес сервера баз данных. Вместо DB_USER
и DB_PASSWORD
— имя пользователя базы данных WordPress сайта и его пароль. DB_NAME
меняем на имя базы данных WordPress сайта. А DB_CHARSET
— это используемая кодировка базы данных WordPress сайта.
Python программа translator.py использует модель искусственного интеллекта gpt-3.5-turbo, разработанную OpenAI. Максимально разрешенная частота запросов к этой модели — 3 запроса в минуту. Чтобы не превышать максимально разрешенную частоту запросов, в программе translator.py вызывается функция, приостанавливающая выполнение программы на 25 секунд:
time.sleep(25)
Данную строку потребуется править, если у вас другая разрешенная максимальная частота запросов.
Все "bg"
в тексте файла translator.py заменяем на код языка перевода. У меня язык перевода — болгарский, поэтому код — "bg"
. Все "ru"
в тексте файла translator.py заменяем на код языка оригинала, если язык оригинала у вас не русский. Код языка можно посмотреть в админ-панели WordPress, вкладка Языки, а в ней — снова Языки:

Все adminkin.pro
в тексте файла translator.py заменяем на доменное имя своего WordPress сайта.
Сохраняем изменения в файле translator.py. Команда для ручного запуска Python программы автоматического перевода и публикации статей:
python3 translator.py
Автоматический запуск по cron
Для автоматического запуска программы translator.py отредактируем расписание cron пользователя. Для этого введем команду:
crontab -e
Если нужен автоматический запуск translator.py, например, ежедневно в 1:00 ночи, то в открывшемся окне добавим строку:
0 1 * * * /bin/python3 /home/user/translator.py
Где /home/user/
— это полный путь к программе translator.py.
Выводы
Идей, как использовать ChatGPT, много. В статье описана не только идея, но и практическая реализация. Оценивайте и задавайте вопросы в комментариях под статьей. Будет интересно!
Комментарии