
Мабуть, головна зміна, яка відбулася у мене у зв'язку з широким використанням LLM, – зникли неможливі завдання. Будь-яка складність або завдання, пов'язані з великою кількістю інформації або автоматизацією чогось рутинного, тепер сприймаються як своєрідний виклик – а ну, як з цим впоратися?
З іншого боку, звичайно, іноді в розпал боїв з Claude Code відчуваєш себе героєм мультика про крила і ноги – «краще день втратити, потім за дві години долетіти». Набагато частіше виходить навпаки.
Ось досить скромний приклад. Потрапив тут великий файл з технічним керівництвом, який треба було перекласти. Потрапив він не мені. Але, дивлячись на виснажливий процес перекладу docx-файлу з картинками, виносками й таблицями, складно було не захотіти допомогти.
Зрозуміло, кілька сотень сторінок на десятки мегабайт в жоден перекладач не запхаєш. Переклад по частинах передбачає виснажливий процес копіювання і вставки, причому щоразу збивається форматування, а картинки вимагають особливої обробки – адже виносні написи на схемах повинні бути точно позиціоновані.
У загальних рисах завдання було зрозумілим відразу – запустити Claude Code і перекладати через нього. На відміну від звичайного чату, йому можна показати файл і вказати, що перекладати його треба розділами, щоб не втрачати контекст. Але я вже звик починати вирішення завдань з «установчої» чат-сесії з LLM – як правило, витрачені десятки хвилин на такий мозковий штурм з формулюванням рішень обертаються солідною економією або навіть несподіваним розв'язанням проблеми зовсім з іншого боку.
Так вийшло і тут – Claude відразу сказав, що docx-файл це по суті архів з XML всередині (це я знав, тому і розраховував на успіх всієї справи) і додав, що всі текстові поля (ті самі виноски) там теж прописані. Тому процес нескладний – розпакувати файл, витягнути з xml всі елементи, перекласти їх текстовий вміст, замінити ним оригінальний вміст і запакувати назад.
Звичайно, не все так просто. Точно було зрозуміло, що великий файл навіть поетапно сам Claude без переповнення контексту не перекладе. Але тут вже я можу генерувати ідеї – в такій ситуації штатним рішенням є винести об'ємну за контекстом операцію для виконання субагентом, а головний процес буде тільки координувати процес. Оскільки у кожного екземпляра субагента свій незалежний контекст, практично можна не турбуватися про його переповнення – будь-який розділ на кілька сторінок завідомо поміститься, навіть з урахуванням місця на глосарій. Так, оскільки текст технічний і містить багато термінів, важливо правильно та однаково перекладати всі терміни.
Знову ж таки – все не так просто, диявол знайде, в яких деталях сховатися, особливо при недосконалості технічних та інших рішень. Наприклад, Claude не знає, як створювати своїх власних агентів і робить просто великі промпти. Або вміє вказати агенту, щоб той, зустрівши новий термін, позначив його, але передбачити обробку таких позначок забув – довелося нагадати. Люди теж недосконалі – вже кілька поколінь користувачів в очі не бачили друкарської машинки, але звичку відбивати відстані пробілами якось набули. А для машини це значущий символ, через який рядок у документі не збігається з перекладом.
У підсумку комплекс виглядав наступним чином:
Зате в сухому залишку маємо – технічний документ на 250 сторінок зі схемами й таблицями задовільно перекладений за 4 години, включаючи неквапливий мозковий штурм. Скільки днів/ тижнів пішло б на такий переклад живим перекладачем – навіть не хочу собі уявляти.