Abstract:
Магістерська дипломна робота містить 82 сторінки, 16 рисунків, два додатки, 8 джерел.
Об’єкт дослідження: процес проєктування та розробки помічника перекладача для локалізації модифікацій ігор.
Предмет дослідження: методи та інструменти моделювання та розробки веб-додатку для автоматизації процесу локалізації, а також можливість ефективної реалізації системи "мікросервіси + сокети" для забезпечення продуктивності та швидкості перекладів.
У першому розділі проаналізовано необхідність автоматизації перекладу модифікацій для ігор компанії Paradox Interactive та оцінено існуючі рішення для локалізації. Визначено, що більшість існуючих інструментів не відповідають вимогам швидкої та точної локалізації через значну кількість спеціалізованих термінів та потребу в збереженні контексту гри.
У другому розділі розглянуто теоретичні основи моделювання та розробки веб-додатків на основі сучасних API для перекладу, зокрема DeepL API та ChatGPT API. Проаналізовано підходи до інтеграції зовнішніх API та їх використання для покращення якості перекладу текстових даних модифікацій, а також розглянуто методи обробки змінних та специфічних символів у текстах модів. Також досліджено можливість ефективного застосування комбінації "мікросервіси + сокети" для забезпечення динамічного обміну даними між компонентами системи.
У третьому розділі представлено модель помічника перекладача для локалізації модифікацій ігор. Розроблено архітектуру системи, визначено функціональні вимоги до її компонентів, описано їх взаємодію, а також реалізовано систему обробки текстів модів із динамічною заміною змінних та форматуванням тексту. Проведено експериментальне дослідження продуктивності використання мікросервісів у поєднанні із сокетами для обробки текстових даних у реальному часі.
Результатом роботи є веб-додаток для локалізації модифікацій ігор компанії Paradox Interactive, що використовує DeepL API та ChatGPT API для перекладу текстів. Запропоноване рішення дозволяє автоматизувати процес перекладу, зберігаючи контекст та точність, що значно підвищує ефективність локалізації та зменшує час на її виконання. Дослідження показало можливість реалізації архітектури «сокети + мікросервіси», але ставе під сумнів доцільність використання такоъ архытектури.
Description:
У процесі виконання дипломної роботи було досягнуто всіх поставлених цілей. Було здійснено детальний аналіз потреб користувачів та особливостей ігрової спільноти Paradox Interactive, що підтвердило необхідність створення нового інструменту для перекладу модифікацій. Аналіз існуючих рішень виявив суттєві недоліки, які могли бути подолані шляхом розробки веб-додатку.
Розробка додатку включала вибір відповідного функціоналу та архітектури. На основі проведених досліджень було вирішено використовувати сучасні технології, такі як Node.js, Redis, DeepL API та OpenAI API, що забезпечують ефективність, гнучкість та масштабованість системи. Основною перевагою веб-додатку є його доступність через браузер, що усуває обмеження платформ та складності встановлення.
Додаток реалізовано з використанням мікросервісної архітектури, що дозволяє обробляти великі обсяги даних, зберігаючи стабільність навіть за високого навантаження. Інтеграція сокет-з'єднань для передачі даних у реальному часі забезпечує швидкий та зручний процес перекладу. Використання системи черг Redis дозволяє обробляти запити паралельно, що значно підвищує продуктивність.
Було також розроблено механізми для збереження специфічного форматування текстів та правильного оброблення змінних, що є критично важливим для ігор Paradox Interactive. Збереження кольорових кодів та інших стилів забезпечує коректну роботу модифікацій після інтеграції.
Таким чином, створений додаток Paradox Game Translation App відповідає всім вимогам, які були поставлені на початку проєкту. Він є ефективним інструментом для спільноти моддерів, що дозволяє значно спростити процес перекладу модифікацій, розширити доступність цих інструментів та підтримати активність гравців. Результати роботи свідчать про практичну цінність проєкту для підтримки розвитку ігрової індустрії.
Також було проведено детальне дослідження інтеграції мікросервісної архітектури та сокетів, які були доведені до максимальної функціональності в рамках обраної архітектури. Було виявлено, що мікросервіси та сокети рідко використовуються разом через складність реалізації та необхідність значних ресурсів для підтримки такого підходу. Незважаючи на це, їх поєднання має певні переваги, такі як висока швидкість обміну даними у реальному часі та можливість масштабування окремих компонентів системи.
Однак, цей підхід вирізняється високим рівнем складності розробки та потенційним оверінжирингом, що робить його недоцільним у більшості типових задач. У випадках, коли потрібна максимально ефективна платформа, зазвичай використовуються технології, які краще відповідають вимогам, такі як ASP.NET або Go. Теоретично та практично було доведено, що подібний підхід може бути реалізований на Node.js, проте в більшості реальних випадків застосування цей підхід не є оптимальним через його складність і витрати на підтримку.