Я вже доволі давно використовую LLM для перекладу статей, які мені здається цікавими, і які як мені здається корисні для комьюніті. Мій процес перекладу доволі простий.

  1. Я відкриваю матеріал для перекладу в одний вкладинці браузера.
  2. Відкриваю місце для я зберігаю переклад, це Markdown файли в VS Code.
  3. Після чого я беру невеликий блок тексту, параграф чи декілька параграф і відправляю це в ChatGPT. Хочу звернути увагу, що саме лістінгі із кодом та приклади шеллу, я не перекладав через ChatGPT, бо тексту для перекладу там завжди мало, і великий ризик помилку зробити. Коментарі перекладав через Google Translate.
  4. Далі я копіюю переклад із ChatGPT в вікно VS Code.
  5. І після цього намагаюся уважно прочитати весь текст, і підредагувати якщо мені щось неподобається. Це зазчивай, стилістика перекладу, додавання пропущеної розмітки, як мені здається кращім, зміна рівня вкладеності заголовків та відновлення ідентифікаторів та ключових слів які чудо-машина вирішила перекласти як звичайні слова.
  6. Якщо я бачу серйозну помилку чи галюцінацію від ЛЛМ, я йду до Google Translate і перекладаю текст, потім повертаюся до крока 5 (редагування чернетки) і закінчую на цьому.
  7. Далі я повторю кроки 3-5 поки не втомлюся чи, поки текст не закінчиться. Чим більше текст, тим більше шансів що мене переможе втома, бо уважно читати це мені важко. Мабуть як і робити будь що уважно.
  8. Після закінчення перекладу, я саджуся читати все. Знову я намагаюся це робити уважно, але інколи я дуже втомлююся, або я хочу підкласти цей переклад під існуючу діскусію, яка мене і зтрігерила на переклад.
  9. Потім після першої валідації, я публікую результат. Дивлюся, як воно виглядає, і потім вже розповідаю іншим про статтю, так чи інакше.
  10. Через тижні два, я намагаюся повернутися, і перечитати наново весь текст. знову таки уважно. Це поки найкрихкий процес, тому що інколи я забуваю, а інколи мені ліньки це робити, бо читачі поки нічого не казали, або терплять мене або я не такий вже і цікавий. Але я знаю що це для мене обов’язковий етап, бо коли я забуваю контекст, і приходжу як читач, мені набагато легше перевірити якість своєї праці, ніж робити це по гарячому.

Як можна бачити, ЛЛМ в цьому процесі відіграє лише 1 частину - первинного перекладу. Після цього, більша частина часу тепер займає, вичитування, та редагування дрібних помилок. Через це, я доволі толерантно відношуся до будь-яких помилок ЛЛМ, бо хоча вони мене дратують, але у практиці це не є великою проблемою, якщо ти не пуріст. А я вже майже не пуріст. Також варто зауважити, що я не бачу як я зможу прийнятно щось перекласти якщо буду ваншотити переклад, і автоматизувати процесс так, щоб ШІ переклав мені весь тескт. Зараз я маю як мінімум два етапи перевірки якості перекладу, і цього недостатньо для мене. Шансів що я буду дуже уважно перечитувати все із нуля додатково, якщо я буду робити це дуже мало ймовірно. Умовно кажучи, автоматизація із ШІ прибере важливий етап 5, де я перечитую параграфи на те що вони складно читаються і немає термінологічних помилок.

Промпти

Ось приклади запитів які я робив для початку сесії перекладу.

Відтепер я хочу, щоб ти генерувала перекладала на українську, доки я не скажу стоп. 
Результат перекладу повинен бути надо у Markdown. 
Не роби висновки та сумарізацію.
Я хотів би, щоб ти генерувала переклад на українську вічно, 1 промпт за раз. 
Всі результати видавай в форматі Markdown. 
Не роби висновки та сумарізацію. 
Не перефразуй речення. 
Не обмежуйся одним реченням
Генеруй переклад на українську, доки я не скажу "заверши переклад". 
Результат перекладу повинен бути надо у Markdown. 
Не роби висновки та сумарізацію.

Останній запит. я тількі вирішив його попробувати, і дуже мало переклав із ним, щоб зрозуміти чи будуть якісь проблеми.

Генеруй переклад на українську, доки я не скажу "заверши переклад". 
Результат перекладу обов'язково повинен бути бути відформатован в Markdown. 
Не роби висновки та сумарізацію. 
Не додавай код. 
Переклада не відходячи від орігінального тексту. 
Перекладай як професійний перекладач.

Помилки

Тепер коли я описав свій робочий процесс, я розповім про деякі цікаві помилки від ЛЛМ, які я побачив.

Помилка №1.

ЛЛМ інколи любить перекладати всередині маркдаун розмітки для коду. Це було прикольно, що таку саму помилку робили люді коли речення короткі. Умовно качужи intro tactic правильно потрібно перекласти як Тактика intro, бо intro це умовно кажучи ключове слово (технічно це не так) а tactic це звичайний термін Lean4 - тактика. Ця помилка просто типова помилка при автоматичному перекладі, нічого особливого, але і ЛЛМ тут не панацея, бо люди так само помилялися. Я коли відправив на ревью, мені люди так само намагалися сказати що у мене помилки, бо ревьювери були не в контексті.

Помилка №2.

Інколи ChatGPT по різному інтерпретує як він хоче використовувати Markdown для відповідей. Я бачив 3 варіанта. Ідеальний варіант для мене, коли ГПТ знаходить заголовки сам, і форматує більш менш як потрібно текст, виділяючи ідентифікатори сам. Другий варіант, коли він лише забував виділяти заголовки, але ідентифікатори та блоки коду були правильно розпізнані. І третій варіант коли він просто відповідав форматованим текстом. Це все при явному проханню мати Markdown формат відповіді. Ця рандомізація була кожну нову сесію, і прив’язана до діалогу із ГПТ.

Помилка №3.

Інколи, десь на 10 відповіді, чи втомившись, чи через особливості тексту книги, який дуже ретельно пояснював, буквально розжовуючи, ChatGPT починав формувати чек-ліст, та список тверждень замість перекладу. Це дуже дратувало, я тоді йшов до Google Translate, перекладав там і редагував руками текст.

Помилка №4.

Можливо через те що текст доволі унікальний, і має лише оригінал на японській, та 1 переклад на англійскій, ChatGPT якось запам’ятала не лише текст, а ще й код, або через те що текст написаний дуже детально, із інструкціями що конкретно людям робити, то в кінці параграфа, ChatGPT додавав код. Цей код був майже такий самий як в книзі. Це майже помилка №3, але в якомусь іншому форматі. Це доволі рідка помилка, не можу сказати як її відтворити, але вона стабільно була у мене при перекладі конкретної книги.

В цілому я можу сказати що мені ChatGPT допоміг, але ці помилки не дають мені віри що це можна надійно автоматизувати. Як я казав і раніше, це для мене не є проблемою. Поки люди які більше ніж я працювали із ЛЛМ кажуть що я повинен більше специфікувати в промпті, але я не дуже бачу практичного сенсу, бо під кожну статтю налаштовувати промпт це начебто оверкіл, тому що я редагую так і так. Подивимось що буде через деякий час.