Поліглот для NVDA

Поліглот — це глобальний додаток для NVDA, призначений для швидкого та гнучкого багатомовного перекладу. Він може перекладати вибраний текст, вміст буфера обміну та останній промовлений текст NVDA, а також перехоплювати промовлений вміст для автоматичного перекладу в режимі реального часу.

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

Що він вміє

Встановлення

Рекомендований шлях встановлення — магазин додатків NVDA. Ви також можете встановити додаток вручну:

  1. Завантажте найновіший пакет .nvda-addon зі сторінки випусків.
  2. Відкрийте завантажений файл.
  3. Підтвердьте встановлення в NVDA.
  4. Перезапустіть NVDA, коли з’явиться відповідне повідомлення.

Швидкий старт

  1. Відкрийте меню NVDA -> Параметри -> Налаштування -> Поліглот.
  2. Виберіть сервіс перекладу та переконайтеся, що він увімкнений.
  3. Налаштуйте всі необхідні облікові дані для цього сервісу.
  4. Виберіть мову оригіналу та мову перекладу.
  5. За бажанням увімкніть копіювання в буфер обміну та інтелектуальний фільтр мовлення.
  6. Натисніть NVDA+Alt+Z, а потім скористайтеся однією з наведених нижче клавіш командного шару. Натисніть H у цьому шарі, щоб відкрити довідку щодо команд.

Командний шар

Натисніть NVDA+Alt+Z, щоб увійти в командний шар. Короткий звуковий сигнал підтверджує, що командний шар активний. Натисніть H, щоб показати довідку щодо команд у шарі. Більшість команд виконуються одноразово, після чого командний шар закривається. Команди перемикання мови та сервісу перекладу залишаються в цьому шарі, тож ви можете продовжувати циклічно перемикатися між ними. Перемикання сервісу перекладу здійснюється лише серед увімкнених сервісів перекладу.

Комбінація Дія
T Перекласти поточний вибраний фрагмент.
Shift+T Перекласти поточний вибраний фрагмент у зворотному порядку.
B Перекласти текст із буфера обміну.
Shift+B Перекласти текст із буфера обміну у зворотному порядку.
L Перекласти останній промовлений текст NVDA.
Shift+L Перекласти останній промовлений текст NVDA, у зворотному порядку.
S Наступна мова оригіналу.
Shift+S Попередня мова оригіналу.
G Наступна мова перекладу.
Shift+G Попередня мова перекладу.
E Наступний увімкнений сервіс перекладу.
Shift+E Попередній увімкнений сервіс перекладу.
W Поміняти місцями мови оригіналу та перекладу.
A Оголосити поточний сервіс перекладу та мовну пару.
C Скопіювати останній результат перекладу.
V Увімкнути/вимкнути автоматичний переклад.
I Відкрити діалог інтерактивного перекладу.
O Відкрити налаштування додатка.
X Очистити кеш перекладу.
H Показати довідку щодо команд.

Інтерактивний діалог перекладу

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

Посібник з налаштувань

Загальні налаштування

Загальні налаштування сервісу перекладу

Більшість сервісів мають однаковий набір параметрів:

Якщо сервіс перекладу повідомляє про виявлену мову оригіналу, додаток також надає:

Особливості роботи функції автоматичного перекладу

Параметри LLM та специфічні налаштування для багатомовних моделей

Деякі сервіси перекладу мають додаткові елементи керування:

Офлайн-переклад Chrome AI

Поліглот може використовувати вбудований API перекладача Chrome для офлайн-перекладу. Переклад виконується ізольованим локальним екземпляром Chrome, тому текст не надсилається сторонній службі перекладу.

Вимоги

Як використовувати

У налаштуваннях додатка виберіть «Chrome AI (Офлайн)», а потім вкажіть мову оригіналу та мову перекладу. Для роботи Chrome AI необхідно чітко вказати мову оригіналу; функція «Автовизначення» для цього сервісу недоступна, тому поліглот може перевірити наявність необхідної моделі перед запуском Chrome.

Під час першого використання, якщо необхідна модель не встановлена, Поліглот запитує, як діяти. Виберіть «Так», щоб завантажити та встановити модель за допомогою менеджера моделей Поліглот; використовуйте цей варіант, якщо сервіс завантаження моделей Chrome працює повільно, заблокований або нестабільний у вашій мережі. Виберіть «Ні», щоб дозволити завантаження моделі через Chrome. Виберіть «Скасувати», щоб скасувати поточний переклад. Після підготовки моделі переклад продовжиться автоматично.

Мережа та моделі

Переклад виконується локально. Моделі можна встановити за допомогою менеджера моделей Поліглот або завантажити через Chrome. Якщо служба завантаження моделей у Chrome працює повільно або недоступна у вашій мережі, виберіть «Так» у спливаючому діалозі або відкрийте менеджер моделей Поліглот ChromeAI з меню «Інструменти» NVDA, щоб заздалегідь встановити або видалити офлайн-моделі.

Конфіденційність і дані

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

Початкове розташування:

%LOCALAPPDATA%\Polyglot\ChromeAI

Якщо змінна середовища LOCALAPPDATA відсутня, Поліглот використовує каталог polyglot_chrome_ai, розташований у каталозі конфігурації NVDA.

Коли NVDA завершує роботу, Поліглот закриває запущений екземпляр Chrome.

Обмеження

Огляд сервісу перекладу

Наразі додаток містить такі сервіси:

Сервіс Облікові дані Примітки
Baidu Translate Ідентифікатор та секретний ключ додатка Baidu Стандартна інтеграція API постачальника.
Caiyun Токен Caiyun Стандартна інтеграція API постачальника.
Chrome AI (офлайн) Немає Використовує вбудований API перекладача Chrome з локальними моделями; мову оригіналу потрібно вказати вручну.
DeepL Ключ API DeepL Стандартна інтеграція API постачальника.
Google Translate (без ключа) Немає Підтримує опціональне вмикання/вимикання дзеркальної кінцевої точки.
Google Translate (Поліглот) Настроюваний ключ API та кінцева точка Постачається з початковими значеннями кінцевої точки в коді; доступність залежить від стану сервісу.
Lingva Translate Немає Публічна кінцева точка Lingva, у відповідях відсутні дані про виявлення мови.
Microsoft Translator (без ключа) Немає Автоматично отримує тимчасовий токен.
Niutrans Ключ API Niutrans Стандартна інтеграція API постачальника.
Ollama 1 URL Ollama, назва моделі, опціональний ключ Перший збережений профіль Ollama.
Ollama 2 URL Ollama, назва моделі, опціональний ключ Другий збережений профіль Ollama.
OpenRouter Ключ API OpenRouter Підтримує попередні налаштування моделей та редаговані шаблони підказок.
Tencent Translate Секретний ідентифікатор та секретний ключ Tencent Стандартна інтеграція API постачальника.
Tencent Translate (Поліглот) Ім’я користувача та пароль NVDACN Маршрут Tencent на базі Поліглот.
VIVO Translate Ім’я користувача та пароль NVDACN Обмежений набір мов, відсутнє автоматичне визначення мови оригіналу.
Volcengine (Поліглот) Ім’я користувача та пароль NVDACN Маршрут Volcengine на базі Поліглот.
Yandex Translate Немає Пункт кінцевого доступу відкритого типу, відсутність звітів про визначену мову.

Сприяння

Вітаються внески щодо коду, документації, локалізації, тестування та інтеграції сервісів перекладу.

При додаванні нового сервісу перекладу:

  1. Створіть модуль у каталозі addon/globalPlugins/polyglot/services/engines/.
  2. Реалізуйте інтерфейс TranslationEngine або, для HTTP-engines, розширте клас BaseHttpEngine.
  3. Поверніть специфікацію конфігурації з getConfigSpec(), якщо сервісу потрібні налаштування.
  4. Використовуйте типи елементів управління, що підтримуються, з файлу views/factory.py: choice, text, password, checkbox та spinctrl.
  5. Переконайтеся, що сервіс правильно показується на панелі динамічних налаштувань, а також, якщо він увімкнений, у перемиканні командного шару та інтерактивному діалозі.

Ліцензія

Авторське право (C) 2025-2026 cary-rowen.

Цей проект ліцензовано згідно з GNU General Public License версії 3 або будь-якої пізнішої версії (GPL-3.0-or-later). Текст ліцензії входить до пакета додатка; також дивіться COPYING.txt у репозиторії.