From a2f0c087d3acbb2028769bb543ae61342915ff19 Mon Sep 17 00:00:00 2001 From: George-br <108298709+George-br@users.noreply.github.com> Date: Tue, 19 May 2026 08:40:52 +0300 Subject: [PATCH] translation update complete update of the Ukrainian translation --- addon/doc/uk/readme.md | 324 +- addon/locale/uk/LC_MESSAGES/nvda.po | 4573 ++++++++++++++++++++++----- 2 files changed, 3927 insertions(+), 970 deletions(-) diff --git a/addon/doc/uk/readme.md b/addon/doc/uk/readme.md index 1065aef..d2fc117 100644 --- a/addon/doc/uk/readme.md +++ b/addon/doc/uk/readme.md @@ -1,183 +1,253 @@ -Якщо вам потрібен окремий настільний застосунок із додатковими сценаріями роботи, перегляньте [BasiliskLLM](https://github.com/SigmaNight/basiliskLLM/) (окремий застосунок і мінімальний додаток для NVDA). AI-Hub залишається повнофункціональним рішенням усередині NVDA. +Якщо вам потрібна повноцінна версія для ПК з додатковими робочими процесами, ознайомтеся з [BasiliskLLM](https://github.com/SigmaNight/basiliskLLM/) (автономний додаток та мінімальний модуль для NVDA). AI-Hub залишається повнофункціональним варіантом для використання в NVDA. # AI-Hub -**AI-Hub** — це додаток для NVDA, який підключає екранний читач до кількох API великих мовних моделей (LLM). Його можна використовувати для написання текстів, узагальнення, допомоги з перекладом, аналізу зображень (зображення та скриншоти), голосових запитань, транскрипції та додаткових діалогів інструментів (TTS, OCR тощо) — не виходячи з NVDA. - -**Назва пакета** додатка в NVDA досі `openai` (для сумісності з наявними встановленнями). **Відображувана назва** в меню та налаштуваннях — **AI-Hub**. - -## Можливості з першого погляду - -- **Чат** в окремому головному діалозі з історією, системним запитом і вибором моделі/акаунта. -- **Зображення та документи** як вкладення з файлів; **URL** віддалених файлів із перевіркою типів відповідно до **вибраного провайдера**. -- **Розумна вставка** в полі запиту: вставлення файлів із буфера обміну, шляхів із тексту або одного URL (також доступно з контекстного меню поля запиту). `Ctrl+V` використовує ту саму логіку, коли поле запиту у фокусі. -- **Збереження розмов та історія** з можливістю перейменувати, видалити й знову відкрити. -- **Поставити запитання** звідусіль (без жесту за замовчуванням): призначте жест у **Жести вводу -> AI-Hub**, щоб записати, надіслати та прослухати або прочитати відповідь. -- **Глобальний опис**: скриншот (`NVDA+E`) або область об'єкта навігатора (`NVDA+O`) надсилаються в чат-сесію. -- Підменю **Tools** (у NVDA -> AI-Hub): утиліти для окремих провайдерів, як-от TTS, OCR, speech-to-text, аудіо Lyria та керування моделями Ollama. -- Параметри **Reasoning / Web search** відображаються лише тоді, коли **поточна модель** їх підтримує (залежить від провайдера). - -У цьому додатку **немає** власної перевірки оновлень. **Оновлення** надаються через **офіційний Магазин додатків NVDA**, якщо ви встановили його звідти. Якщо встановлюєте вручну зі [сторінки релізів](https://github.com/aaclause/nvda-OpenAI/releases), встановлюйте нові збірки `.nvda-addon` так само. - -## Підтримувані провайдери - -Налаштуйте **одного або кількох провайдерів** у NVDA: **Параметри -> Налаштування -> AI-Hub**. Кожен провайдер може містити **кілька іменованих акаунтів** (API-ключі та, за потреби, organization або base URL). - -| Провайдер | Роль | -|----------|------| -| [OpenAI](https://platform.openai.com/) | GPT і пов'язані моделі; офіційні діалоги інструментів транскрипції та TTS | -| [DeepSeek](https://www.deepseek.com/) | API DeepSeek (сумісний з OpenAI) | -| **Custom OpenAI** | Будь-який HTTP API, сумісний з OpenAI (власний base URL + ключ) | -| **Ollama** | Локальні моделі через endpoint, сумісний з OpenAI; інструмент керування моделями | -| [Mistral AI](https://mistral.ai/) | Mistral / Pixtral; інструменти Voxtral TTS, OCR та speech-to-text | -| [OpenRouter](https://openrouter.ai/) | Багато сторонніх моделей за одним ключем | -| [Anthropic](https://www.anthropic.com/) | Claude | -| [xAI](https://x.ai/) | Grok | -| [Google](https://ai.google.dev/) | Gemini; інструмент Lyria 3 Pro | - -Додаток може підхоплювати API-ключі зі **змінних середовища**, якщо їх задано (наприклад, `OPENAI_API_KEY`, `DEEPSEEK_API_KEY`, `MISTRAL_API_KEY`, `OPENROUTER_API_KEY`, `ANTHROPIC_API_KEY`, `XAI_API_KEY`, `GEMINI_API_KEY` / `GOOGLE_API_KEY` та інші). Інтерфейс налаштувань залишається основним місцем керування акаунтами. - -### Бекенди speech-to-text (транскрипції) - -Для **транскрипції з мікрофона / файлу** в основному потоці (не окремий інструмент транскрипції OpenAI) можна обрати **whisper_cpp** (локально), **openai** (Whisper API) або **mistral** у розділі **Audio** налаштувань AI-Hub. +**AI-Hub** — це додаток для NVDA, який підключає ваш екранний зчитувач до декількох API великих мовних моделей (LLM). Використовуйте його для написання текстів, узагальнення, допомоги з перекладом, візуалізації (зображення та знімки екрана), голосових запитань, транскрипції та діалогів додаткових інструментів (TTS, OCR тощо) — не виходячи з NVDA. + +**Назва пакета** цього додатка в NVDA залишається `openai` (для сумісності з існуючими інсталяціями). **Назва, що показується** у меню та налаштуваннях, — **AI-Hub**. + +## Огляд функцій + +- **Чат** у спеціальному головному діалозі з історією, системними підказками та вибором моделі/облікового запису. +- **Зображення та документи** як вкладення з файлів; **URL-адреси** до віддалених файлів із перевіркою типу, що відповідає **обраному постачальнику**. +- **Розумна вставка** у полі для введення запиту: вставляйте файли з буфера обміну, шляхи з тексту або одне посилання (також доступно з контекстного меню поля запиту). `Ctrl+V` використовує ту ж логіку, якщо фокус знаходиться на полі запиту. +- **Збереження та історія розмов** із можливістю перейменування, видалення та повторного відкриття. +- **Поставити запитання** з будь-якого місця (без початкової клавіші): призначте жест у розділі **Жести вводу → AI-Hub**, щоб записати питання, надіслати його та прослухати або прочитати відповідь. +- **Глобальний опис**: знімок екрана (`NVDA+E`) або область об’єкта навігатора (`NVDA+O`) з надсиланням в чат. +- Підменю **Інструменти** (у меню NVDA → AI-Hub): утиліти для конкретних постачальників, такі як TTS, OCR, перетворення мовлення в текст, аудіосервіс Lyria та керування моделями Ollama. +- Параметри **Міркування / веб-пошук** з’являються лише тоді, коли **поточна модель** їх підтримує (залежить від постачальника). + +Цей додаток **не** має власного механізму перевірки оновлень. **Оновлення** здійснюються через **офіційний магазин додатків NVDA**, якщо ви встановлюєте додаток звідти. Якщо ви встановлюєте додаток вручну зі [сторінки випусків](https://github.com/aaclause/nvda-OpenAI/releases), встановлюйте новіші збірки `.nvda-addon` таким самим чином. + +## Підтримувані постачальники + +Налаштуйте **одного або декількох постачальників** у NVDA в розділі **Параметри → Налаштування → AI-Hub**. Кожен постачальник може мати **кілька іменованих облікових записів** (API-ключі, а також, за необхідності, організацію або базову URL). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПостачальникРоль
OpenAIМоделі GPT та пов’язані моделі; офіційні діалоги для транскрипції та перетворення тексту в мовлення
DeepSeekDeepSeek API (сумісний з OpenAI)
Налаштований OpenAIБудь-який HTTP-API, сумісний з OpenAI (налаштована базова URL-адреса + ключ)
OllamaЛокальні моделі через кінцеву точку, сумісну з OpenAI; інструмент для управління моделями
Mistral AIMistral / Pixtral; Voxtral: інструменти для синтезу мовлення (TTS), оптичного розпізнавання символів (OCR) та перетворення мовлення в текст
OpenRouterБагато моделей сторонніх виробників під одним ключем
AnthropicClaude
xAIGrok
GoogleGemini; інструмент Lyria 3 Pro
+ +Додаток може отримувати ключі API з **змінних середовища**, якщо вони встановлені (наприклад, `OPENAI_API_KEY`, `DEEPSEEK_API_KEY`, `MISTRAL_API_KEY`, `OPENROUTER_API_KEY`, `ANTHROPIC_API_KEY`, `XAI_API_KEY`, `GEMINI_API_KEY` / `GOOGLE_API_KEY` та інші). Інтерфейс налаштувань залишається основним місцем для керування обліковими записами. + +### Сервіси перетворення мовлення в текст (транскрипція) + +Для **транскрипції з мікрофона / файлу** у рамках основного робочого процесу (а не за допомогою окремого інструменту транскрипції OpenAI) ви можете вибрати один із варіантів: **whisper_cpp** (локальний), **openai** (API Whisper) або **mistral** у розділі **Запис** налаштувань AI-Hub. ## Встановлення -1. Відкрийте [сторінку релізів додатка](https://github.com/aaclause/nvda-OpenAI/releases). -2. Завантажте останній пакет `.nvda-addon`. +1. Відкрийте [сторінку випусків додатка](https://github.com/aaclause/nvda-OpenAI/releases). +2. Завантажте найновіший пакет `.nvda-addon`. +3. Встановіть його з меню NVDA **Інструменти → Магазин додатків** (або відкрийте файл у Провіднику та підтвердьте встановлення). ## Початкове налаштування -1. Відкрийте **NVDA -> Параметри -> Налаштування**. +1. Відкрийте **NVDA → Параметри → Налаштування**. 2. Виберіть категорію **AI-Hub**. -3. У розділі **API Accounts** виберіть **Add account...**. -4. У діалозі акаунта виберіть провайдера, введіть назву акаунта та заповніть обов'язкові поля (API-ключ для більшості провайдерів; base URL для **Custom OpenAI** та **Ollama**, а Ollama типово використовує локальний http://127.0.0.1:11434/v1, якщо поле порожнє). -5. Збережіть, а потім за потреби додайте інші акаунти, відредагуйте наявні або видаліть невикористовувані зі списку. -6. За потреби налаштуйте **Audio**, **Chat feedback**, **Advanced** / температуру та **Auto-save conversation** (увімкнено типово). +3. У розділі **Облікові записи API** натисніть **Додати обліковий запис...**. +4. У діалозі облікового запису виберіть постачальника, введіть назву облікового запису та заповніть необхідні поля (API-ключ для більшості постачальників; базову URL-адресу для **Custom OpenAI** та **Ollama**, при цьому для Ollama початково використовується локальна адреса `http://127.0.0.1:11434/v1`, якщо поле порожнє). +5. Збережіть, потім за бажанням додайте ще облікові записи, відредагуйте наявні або видаліть непотрібні зі списку облікових записів. +6. За потреби налаштуйте **Звуковий відгук**, **Відповідь у чаті**, **Додатково** / температуру генерації, а також **Автоматичне збереження розмови** (початково увімкнено). -Поки не налаштовано хоча б один акаунт провайдера, під час відкриття головного діалогу додаток запропонує додати ключі в налаштуваннях AI-Hub. +Доки хоча б один обліковий запис постачальника не буде налаштовано, при відкритті головного діалогу з’явиться запит на додавання ключів у налаштуваннях AI-Hub. -## Оновлення зі старих збірок "Open AI" +## Оновлення зі старіших версій «Open AI» -Якщо ви користувалися старішою версією цього додатка: +Якщо ви використовували старішу версію цього додатка: -- **Налаштування** мігрують зі старого розділу конфігурації **`OpenAI`** до **`AIHub`**. Ваші параметри не повинні загубитися. -- **Файли даних** (розмови, сховище ключів, вкладення) мігрують із папки **`openai`** у каталозі користувацької конфігурації NVDA до **`aihub`**. +- **Налаштування** переносяться зі старого розділу конфігурації **`OpenAI`** до **`AIHub`**. Ви не повинні втратити свою конфігурацію. +- **Файли даних** (розмови, сховище ключів, вкладення) переносяться з папки **`openai`** у вашій директорії користувацької конфігурації NVDA до папки **`aihub`**. -Переносити файли вручну не потрібно, якщо ви не використовуєте нестандартну конфігурацію. +Вам не потрібно переміщувати файли вручну, якщо ви не використовуєте спеціальні налаштування. ## Меню NVDA: AI-Hub -У меню NVDA ви знайдете **AI-Hub** (із встановленою версією в підписі). Серед пунктів: +У меню NVDA ви знайдете пункт **AI-Hub** (з зазначенням встановленої версії у назві). Доступні опції: -- **Documentation** — відкриває посібник користувача в браузері (`doc\en\readme.html`). -- **Main dialog...** — відкрити вікно чату (типово `NVDA+G`). -- **Conversation history...** — керування збереженими чатами. -- **Tools** — підменю, що групує утиліти **OpenAI**, **Mistral**, **Google** та **Ollama** (див. нижче). -- **GitHub repository** / **BasiliskLLM** - швидкі посилання. +- **Документація** — відкриває посібник користувача у вашому браузері (`doc\uk\readme.html`). +- **Головний діалог додатка…** — відкриває діалог чату (початково `NVDA+G`). +- **Історія розмов…** — керування збереженими чатами. +- **Інструменти** — підменю, що об’єднує утиліти **OpenAI**, **Mistral**, **Google** та **Ollama** (див. нижче). +- **Репозиторій GitHub** / **BasiliskLLM** — швидкі посилання. ## Головний діалог -Відкрийте через **`NVDA+G`** або **Main dialog...** у меню AI-Hub. +Відкрийте за допомогою **`NVDA+G`** або пункту **Розмова…** у меню AI-Hub. -### Що можна робити +### Що ви можете робити -- Спілкуватися з вибраною моделлю; переглядати **Messages** за допомогою клавіатурної навігації та контекстних меню (наприклад, **j** / **k** для переходу між повідомленнями, коли фокус у області повідомлень — дивіться підказки на екрані для активного поля). -- Додавати **локальні зображення чи документи** і **URL файлів** там, де це підтримує провайдер. Перед надсиланням можуть з'являтися попередження про типи, не підтримувані поточним провайдером. -- Використовувати **Paste (file or text)** з контекстного меню поля запиту або **`Ctrl+V`** в полі запиту: додаток може прикріплювати файли, вставляти текстові шляхи або обробляти одиночний URL як вкладення, коли це доречно. -- Записувати **аудіофрагменти**, додавати аудіофайли та використовувати **TTS** для тексту запиту там, де це підтримує модель. -- **`Escape`** закриває головний діалог (коли не відкрито блокувальне модальне вікно). -- **`Ctrl+R`** перемикає запис із мікрофона (де застосовно). -- **`F2`** перейменовує поточну збережену розмову (після її появи у сховищі). +- Спілкуйтеся з обраною моделлю; переглядайте **повідомлення** за допомогою клавіатурної навігації та контекстних меню (наприклад, **j** / **k** для переходу між повідомленнями, коли фокус знаходиться в області повідомлень — див. підказки на екрані щодо активного поля). +- Додавайте **локальні зображення або документи** та вставляйте **URL-адреси файлів**, якщо це підтримується постачальником. Перед відправленням може з’явитися попередження про типи файлів, що не підтримуються поточним постачальником. +- **Вставте (файл або текст)** з контекстного меню у полі запиту або за допомогою **`Ctrl+V`**. Додаток може додавати файли, вставляти текстові шляхи або розглядати окремий URL як вкладення, якщо це можливо. +- Записуйте фрагменти **аудіо**, додавайте аудіофайли та використовуйте **TTS** для тексту запиту, якщо модель це підтримує. +- **`Escape`** закриває головний діалог (якщо не відкрито жодного блокуючого модального вікна). +- **`Ctrl+R`** вмикає/вимикає запис з мікрофона (якщо це можливо). +- **`F2`** перейменовує поточну збережену розмову (якщо вона вже існує у сховищі). - **`Ctrl+N`** відкриває **новий** екземпляр головного діалогу (сесію). -### Опції, що залежать від моделі +### Параметри, що залежать від моделі -Деякі елементи керування відображаються або застосовуються лише для певних моделей: +Деякі елементи керування з’являються або застосовуються лише для певних моделей: -- **Reasoning** ("thinking") для моделей, які його надають; потоковий reasoning зберігається окремо від видимої відповіді, коли API розрізняє ці дані. -- **Reasoning effort** і пов'язані елементи керування там, де провайдер підтримує рівні. -- **Web search** лише для моделей, що заявляють підтримку вебпошуку. +- **Процес міркування** («міркування») для моделей, які його демонструють; послідовний процес міркування відображається окремо від кінцевої відповіді, якщо API передбачає таке розмежування. +- **Рівень складності міркування** та відповідні параметри налаштування, якщо постачальник підтримує різні рівні. +- **Веб-пошук** лише для моделей, які підтримують функцію веб-пошуку. -Точна доступність змінюється, коли провайдери оновлюють свої API; інтерфейс відображає стан для **поточної вибраної моделі**. +Доступність може змінюватися у міру оновлення API постачальників; інтерфейс показує **поточну вибрану модель**. -### Системний запит +### Системна підказка -Системний запит спрямовує поведінку моделі. За замовчуванням надано варіант, пристосований для допомоги з доступністю; ви можете редагувати його, скидати через контекстне меню й за бажанням зберігати останній використаний запит (налаштовується в параметрах). Системний запит споживає токени так само, як і будь-який інший вхід. +Системна підказка визначає поведінку моделі. Початково надається підказка, пристосована для допомоги з доступністю; її можна редагувати, скинути через контекстне меню та, за бажанням, зберегти останню використану підказку (доступно в меню налаштувань). Системна підказка використовує токени так само, як і будь-який інший запит. ## Історія розмов -Скористайтеся **Conversation history...** у меню AI-Hub або призначте жест у **Жести вводу -> AI-Hub**. +Використовуйте **Історію розмов…** у меню AI-Hub або призначте жест у розділі **Жести вводу → AI-Hub**. -Можна переглядати список, відкривати, перейменовувати, видаляти та створювати розмови. У головному діалозі для керування поточною сесією допомагають **F2** і **Ctrl+N**. +Ви можете створювати списки, відкривати, перейменовувати, видаляти та створювати розмови. У головному діалозі **F2** і **Ctrl+N** допомагають керувати поточним сеансом. ### Автозбереження -Якщо в налаштуваннях увімкнено **Auto-save conversation** (за замовчуванням), додаток зберігає (або оновлює) розмову в сховищі **після кожної завершеної відповіді помічника**, а також може зберігати стан під час закриття діалогу, якщо є що зберегти. Ви також можете зберігати вручну через контекстне меню поля **Messages**. Якщо автозбереження вимкнено, використовуйте ручне збереження, коли хочете зберегти розмову. +Якщо в налаштуваннях увімкнено функцію **Автозбереження розмови** (початково), додаток зберігає (або оновлює) збережену розмову **після кожної завершеної відповіді помічника** і може зберегти стан розмови при її закритті, якщо є що зберегти. Ви також можете зберегти розмову через контекстне меню у полі **Повідомлення**. Якщо автозбереження вимкнено, скористайтеся ручним збереженням, коли потрібно зберегти стан розмови. -## Поставити запитання (голос) +## Поставити запитання (голосом) -Ця команда **не має жесту за замовчуванням**. Призначте його у **Жести вводу -> AI-Hub**. +Ця команда **не має початкової комбінації**. Призначте її в розділі **Жести вводу → AI-Hub**. - Перше натискання: почати запис. -- Друге натискання під час запису: зупинити й надіслати. +- Друге натискання під час запису: зупинити та надіслати. - Якщо відповідь відтворюється як аудіо, натисніть ще раз, щоб зупинити відтворення. **Режими:** -- **Direct audio** — якщо вибрана модель підтримує аудіовхід, ваш запис може бути надіслано як аудіо без окремого етапу транскрипції. -- **Transcribe then chat** — інакше налаштований бекенд транскрипції обробляє запис, а потім текст надсилається чат-моделі. - -Якщо головний діалог у фокусі, використовується його **поточна модель**; інакше додаток обирає відповідну модель серед налаштованих провайдерів. - -## Підменю Tools - -Пункт **Tools** у меню AI-Hub відкриває згруповані за провайдерами діалоги (кожен може вимагати відповідний API-акаунт): - -| Область меню | Інструмент | -|-----------|------| -| Mistral | **Voxtral TTS...**, **OCR...**, **Speech to Text...** | -| Google | **Lyria 3 Pro...** | -| OpenAI | **TTS...**, **Transcription / Translation...** | -| Ollama | **Model manager...** | - -Якщо для провайдера, потрібного інструменту, акаунт не налаштовано, додаток повідомить, що його слід додати в налаштуваннях AI-Hub. +- **Прямий аудіоввід** — якщо обрана модель підтримує аудіоввід, ваш запис може бути надісланий як аудіо без окремого етапу транскрипції. +- **Спочатку транскрипція, потім чат** — якщо ні, вибрана система транскрипції обробляє запис, після чого текст надсилається до моделі чату. + +Якщо фокус знаходиться у головному діалозі, використовується його **поточна модель**; в іншому випадку додаток обирає відповідну модель серед налаштованих постачальників. + +## Підменю інструментів + +Пункт **«Інструменти»** у меню AI-Hub відкриває діалоги, згруповані за постачальниками (для кожного з них може знадобитися відповідний обліковий запис API): + + + + + + + + + + + + + + + + + + + + + + + + + + +
Область менюІнструмент
MistralVoxtral TTS…, OCR…, Мовлення в Текст…
GoogleLyria 3 Pro…
OpenAITTS…, Транскрипція / Переклад…
OllamaМенеджер моделей…
+ +Якщо для постачальника інструмента не налаштовано жодного облікового запису, додаток запропонує вам додати його в налаштуваннях AI-Hub. ## Глобальні команди -Усі жести за замовчуванням можна змінити в **NVDA -> Параметри -> Жести вводу -> AI-Hub**. - -| Жест | Дія | -|---------|--------| -| `NVDA+G` | Показати головний діалог AI-Hub | -| `NVDA+E` | Зробити скриншот і описати (додає зображення до сесії) | -| `NVDA+O` | Описати область поточного об'єкта навігатора | -| *(жест за замовчуванням відсутній)* | Історія розмов. Призначте в Жести вводу -> AI-Hub. | -| *(жест за замовчуванням відсутній)* | Поставити запитання (запис / надсилання / зупинка аудіо). Призначте в Жести вводу -> AI-Hub. | -| *(жест за замовчуванням відсутній)* | Перемкнути запис із мікрофона й транскрипцію. Призначте в Жести вводу -> AI-Hub. | +Усі стандартні жести можна змінити в **NVDA → Параметри → Жести вводу → AI-Hub**. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ЖестДія
NVDA+GВідкрити головний діалог AI-Hub
NVDA+EЗробити знімок екрана та описати його (додати зображення до сеансу)
NVDA+OОписати область поточного об’єкта навігатора
(початково немає жесту)Історія розмов. Призначити в меню «Жести вводу» → «AI-Hub».
(початково немає жесту)Поставити запитання (запис / надсилання / зупинка аудіо). Призначити в «Жестах вводу» → «AI-Hub».
(початково немає жесту)Увімкнути/вимкнути запис мікрофона та транскрипцію. Призначити в «Жестах вводу» → «AI-Hub».
## Де зберігаються дані -Робочі файли, індекс збережених розмов, єдиний `accounts.json` і вкладення зберігаються в каталозі **користувацької конфігурації** NVDA, у папці **`aihub`** (після міграції з `openai`). Тимчасові файли використовують підпапку `tmp` і очищуються, коли це доречно (наприклад, під час завершення додатка або закриття діалогу). - -## Обов'язкові залежності (автозавантажуються під час збірки) - -Збірки використовують `scons` для розміщення runtime-бібліотек у: - -`addon/globalPlugins/AIHub/libs/` - -Коли обов'язкова бібліотека відсутня, `scons` завантажує зафіксовані wheel-пакети й витягає в цю папку лише потрібне. Поточні зафіксовані залежності: - -- **[markdown-it-py](https://pypi.org/project/markdown-it-py/)** `3.0.0` + **[mdurl](https://pypi.org/project/mdurl/)** `0.1.2` — витягується в `libs/` для рендерингу Markdown у чаті. -- **[Pillow](https://pypi.org/project/Pillow/)** `12.1.1` для: - - Python `3.11` `win32` -> `libs/lib_py3.11_win32/` - - Python `3.13` `win_amd64` -> `libs/lib_py3.13/` - -Каталог `libs` навмисно ігнорується git; контриб'юторам не потрібно комітити vendored-артефакти. +Робочі файли, індекс збережених розмов, об’єднаний файл `accounts.json` та вкладення зберігаються у вашому каталозі **конфігурації користувача** NVDA, у папці **`aihub`** (після перенесення з `openai`). Тимчасові файли зберігаються у підпапці `tmp` і видаляються у відповідний момент (наприклад, після завершення роботи додатка або закриття діалогу). ## Усунення несправностей (коротко) -- **"No account configured"** — додайте API-ключ для вибраного провайдера в налаштуваннях **AI-Hub**. -- **Провайдер відхиляє вкладення** — перевірте тип і розмір файлу; спробуйте іншу модель або провайдера, який підтримує потрібний медіатип. +- **«Обліковий запис не налаштовано»** — додайте ключ API для постачальника, який ви вибрали в налаштуваннях **AI-Hub**. +- **Постачальник відхиляє вкладення** — Перевірте тип і розмір файлу; спробуйте скористатися іншою моделлю або постачальником, який підтримує потрібний вам тип медіафайлу. + +Для проблем і внесків скористайтеся посиланням **репозиторій GitHub** у меню AI-Hub. -Для повідомлень про проблеми та внесків скористайтеся посиланням **GitHub repository** в меню AI-Hub. +--- +- Переклад: Георгій Галас. \ No newline at end of file diff --git a/addon/locale/uk/LC_MESSAGES/nvda.po b/addon/locale/uk/LC_MESSAGES/nvda.po index cd34441..2d291ab 100644 --- a/addon/locale/uk/LC_MESSAGES/nvda.po +++ b/addon/locale/uk/LC_MESSAGES/nvda.po @@ -1,376 +1,429 @@ msgid "" msgstr "" "Project-Id-Version: Open AI 24.03.30\n" -"Report-Msgid-Bugs-To: nvda-translations@groups.io\n" -"POT-Creation-Date: 2024-05-18 15:07+0200\n" -"PO-Revision-Date: 2024-05-18 22:24+0300\n" -"Last-Translator: Heorhii Halas \n" +"Report-Msgid-Bugs-To: 'nvda-translations@groups.io'\n" +"POT-Creation-Date: 2026-05-17 18:10+0300\n" +"PO-Revision-Date: 2026-05-19 08:05+0300\n" +"Last-Translator: Volodymyr Pyrih \n" "Language-Team: Heorhi Halas. https://www.nvdaukr.online/\n" "Language: uk\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 3.4.4\n" +"X-Generator: Poedit 3.9\n" "X-Poedit-Basepath: nvda-OpenAI-master/addon/globalPlugins\n" "X-Poedit-Bookmarks: -1,26,47,-1,-1,-1,-1,-1,-1,-1\n" "X-Poedit-SearchPath-0: .\n" -#: addon/globalPlugins/openai/__init__.py:36 -msgid "" -"No API key provided for any provider, please provide at least one API key in " -"the settings dialog" -msgstr "" -"Ключ API не надано для жодного постачальника, будь ласка, надайте принаймні " -"один ключ API у діалозі налаштувань" - -#: addon/globalPlugins/openai/__init__.py:117 -msgid "Update" -msgstr "Оновлення" - -#: addon/globalPlugins/openai/__init__.py:125 -msgid "Check for &updates on startup and periodically" -msgstr "Періодично перевіряти наявність &оновлень під час запуску" +#. Translators: AI-Hub Input Gestures (assignable scripts): description of an assignable NVDA script. +#: addon\globalPlugins\AIHub\__init__.py:91 +#: addon\globalPlugins\AIHub\plugin_mixins.py:46 +msgid "Show or focus the AI-Hub conversation window" +msgstr "Показати або сфокусувати діалог розмови AI-Hub" -#: addon/globalPlugins/openai/__init__.py:131 -msgid "&Channel:" -msgstr "&Канал:" - -#: addon/globalPlugins/openai/__init__.py:141 -msgid "API Access Keys" -msgstr "Ключі доступу до API" - -#: addon/globalPlugins/openai/__init__.py:150 -#, python-format -msgid "%s API &keys..." -msgstr "&Ключі API %s..." - -#: addon/globalPlugins/openai/__init__.py:162 -msgid "Main dialog" -msgstr "Головний діалог" +#. Translators: AI-Hub Input Gestures (assignable scripts): description of an assignable NVDA script. +#: addon\globalPlugins\AIHub\__init__.py:100 +msgid "Take a screenshot and describe it" +msgstr "Зробити знімок екрана і описати його" -#: addon/globalPlugins/openai/__init__.py:167 -msgid "Block the closing using the &escape key" -msgstr "Заблокувати закриття за допомогою клавіші &escape" +#. Translators: AI-Hub Input Gestures (assignable scripts): description of an assignable NVDA script. +#: addon\globalPlugins\AIHub\__init__.py:109 +msgid "Grab the current navigator object and describe it" +msgstr "Захопити поточний об’єкт навігатора й описати його" -#: addon/globalPlugins/openai/__init__.py:175 -msgid "Remember the content of the S&ystem field between sessions" -msgstr "Запам’ятовувати вміст поля &Системної підказки між сеансами" +#. Translators: AI-Hub Input Gestures (assignable scripts): description of an assignable NVDA script. +#: addon\globalPlugins\AIHub\__init__.py:117 +#: addon\globalPlugins\AIHub\plugin_mixins.py:48 +msgid "Manage saved conversations" +msgstr "Керувати збереженими розмовами" -#: addon/globalPlugins/openai/__init__.py:183 -msgid "Enable &advanced settings (including temperature and probability mass)" +#. Translators: AI-Hub Input Gestures (assignable scripts): description of an assignable NVDA script. +#: addon\globalPlugins\AIHub\__init__.py:125 +msgid "Ask a question via voice: record, send to AI, and play the response" msgstr "" -"Увімкнути &розширені параметри (зокрема температуру та маси ймовірності)" - -#: addon/globalPlugins/openai/__init__.py:191 -msgid "Text To Speech" -msgstr "Перетворення тексту в мовлення" - -#: addon/globalPlugins/openai/__init__.py:197 -msgid "&Voice:" -msgstr "&Голос:" - -#: addon/globalPlugins/openai/__init__.py:207 -msgid "&Model:" -msgstr "&Модель:" - -#: addon/globalPlugins/openai/__init__.py:218 -msgid "Image description" -msgstr "Опис зображення" +"Поставити питання голосом: записати його, надіслати ШІ та прослухати " +"відповідь" -#: addon/globalPlugins/openai/__init__.py:223 -msgid "&Resize images before sending them to the API" -msgstr "&Змінити розмір зображення, перш ніж надсилати їх до API" - -#: addon/globalPlugins/openai/__init__.py:236 -msgid "Maximum &width (0 to resize proportionally to the height):" -msgstr "Максимальна &ширина (0 для зміни розміру пропорційно висоті):" - -#: addon/globalPlugins/openai/__init__.py:245 -msgid "Maximum &height (0 to resize proportionally to the width):" -msgstr "Максимальна &висота (0 для зміни розміру пропорційно ширині):" - -#: addon/globalPlugins/openai/__init__.py:254 -msgid "" -"&Quality for JPEG images (0 [worst] to 95 [best], values above 95 should be " -"avoided):" +#. Translators: AI-Hub Input Gestures (assignable scripts): description of an assignable NVDA script. +#: addon\globalPlugins\AIHub\__init__.py:133 +msgid "Toggle the microphone recording and transcribe the audio from anywhere" msgstr "" -"&Якість для зображень у форматі JPEG (де 0 [найгірше] а 95 [найкраще], варто " -"уникати значень вище 95):" - -#: addon/globalPlugins/openai/__init__.py:266 -msgid "Customize default text &prompt" -msgstr "Налаштувати &початковий текст підказки" - -#: addon/globalPlugins/openai/__init__.py:272 -msgid "Default &text prompt:" -msgstr "&Початкова текстова підказка:" - -#: addon/globalPlugins/openai/__init__.py:285 -msgid "Chat feedback" -msgstr "Зворотній зв'язок у чаті" - -#. Translators: This is a setting to play a sound when a task is in progress. -#: addon/globalPlugins/openai/__init__.py:295 -msgid "Play sound when a task is in progress" -msgstr "Відтворювати звук під час виконання завдання" - -#. Translators: This is a setting to play a sound when a response is sent. -#: addon/globalPlugins/openai/__init__.py:302 -msgid "Play sound when a response is sent" -msgstr "Відтворювати звук gпри отриманні відповіді" - -#. Translators: This is a setting to play a sound when a response is pending. -#: addon/globalPlugins/openai/__init__.py:309 -msgid "Play sound when a response is pending" -msgstr "Відтворювати звук при очікуванні відповіді" - -#. Translators: This is a setting to play a sound when a response is received. -#: addon/globalPlugins/openai/__init__.py:316 -msgid "Play sound when a response is received" -msgstr "Відтворювати звук, коли отримано відповідь" - -#. Translators: This is a setting to attach braille to the history if the focus is in the prompt field. -#: addon/globalPlugins/openai/__init__.py:323 -msgid "Attach braille to the history if the focus is in the prompt field" +"Перемкнути запис з мікрофона та транскрибувати аудіо з будь-якого місця" + +#. Translators: Label before the provider drop-down in the Add/Edit API account form. +#: addon\globalPlugins\AIHub\accounts_dialog.py:43 +msgid "&Provider:" +msgstr "&Постачальник:" + +#. Translators: Label before the optional friendly account name in the Add/Edit API account form. +#: addon\globalPlugins\AIHub\accounts_dialog.py:54 +msgid "Account &name:" +msgstr "&Назва облікового запису:" + +#. Translators: Label before the secret API key field in the Add/Edit API account form. +#: addon\globalPlugins\AIHub\accounts_dialog.py:61 +msgid "&API key:" +msgstr "&Ключ API:" + +#. Translators: Label before the custom endpoint URL for Ollama or CustomOpenAI in the Add/Edit API account form. +#: addon\globalPlugins\AIHub\accounts_dialog.py:68 +msgid "Custom base &URL:" +msgstr "Користувацька базова &URL:" + +#. Translators: Label before the optional OpenAI organization display name in the Add/Edit API account form. +#: addon\globalPlugins\AIHub\accounts_dialog.py:75 +msgid "Organization &name:" +msgstr "&Назва організації:" + +#. Translators: Label for the optional OpenAI organization secret key field in the Add/Edit API account form. +#: addon\globalPlugins\AIHub\accounts_dialog.py:82 +msgid "Organization &key:" +msgstr "&Ключ організації:" + +#. Translators: Window title of the modal dialog that lists every AI-Hub API account (NVDA → AI-Hub → API accounts). +#. Translators: NVDA Preferences — AI-Hub category: title of a bordered settings group. +#: addon\globalPlugins\AIHub\accounts_dialog.py:139 +#: addon\globalPlugins\AIHub\settings_dialog.py:29 +msgid "API accounts" +msgstr "облікові записи API" + +#. Translators: Static help sentence above the account list in the API accounts management dialog. +#: addon\globalPlugins\AIHub\accounts_dialog.py:158 +msgid "" +"Stored provider accounts. Space selects the focused row or opens the menu if " +"it is already selected; Enter edits." msgstr "" -"Прикріпити шрифт Брайля до поля повідомлення, якщо фокус знаходиться в полі " -"запиту" - -#: addon/globalPlugins/openai/__init__.py:329 -msgid "Speak response when the focus is in the prompt field" -msgstr "Промовляти відповідь, коли фокус знаходиться в полі запиту" - -#. Translators: This is the name of a group of settings -#: addon/globalPlugins/openai/__init__.py:339 -msgid "Recording" -msgstr "Запис" - -#. Translators: This is the name of a setting in the Recording group -#: addon/globalPlugins/openai/__init__.py:345 -msgid "Use &whisper.cpp for transcription" -msgstr "Використовувати &whisper.cpp для транскрипції" - -#. Translators: This is the name of a setting in the Recording group -#: addon/globalPlugins/openai/__init__.py:361 -msgid "&Host:" -msgstr "&Хост:" - -#: addon/globalPlugins/openai/__init__.py:461 -msgid "Docu&mentation" -msgstr "&Документація" - -#: addon/globalPlugins/openai/__init__.py:462 -msgid "Open the documentation of this addon" -msgstr "Відкрити документацію цього додатка" - -#: addon/globalPlugins/openai/__init__.py:467 -msgid "Main d&ialog..." -msgstr "Головни&й діалог..." - -#: addon/globalPlugins/openai/__init__.py:468 -msgid "Show the Open AI dialog" -msgstr "Показати діалог Open AI" - -#: addon/globalPlugins/openai/__init__.py:476 -msgid "API &keys" -msgstr "&Ключі API" - -#: addon/globalPlugins/openai/__init__.py:477 -msgid "Manage the API keys" -msgstr "Керування ключами API" - -#: addon/globalPlugins/openai/__init__.py:482 -msgid "API &usage" -msgstr "&Використання API" - -#: addon/globalPlugins/openai/__init__.py:483 -msgid "Open the API usage webpage" -msgstr "Відкрити веб-сторінку використання API" - -#: addon/globalPlugins/openai/__init__.py:488 -msgid "Git&Hub repository" -msgstr "Репозиторій Git&Hub" - -#: addon/globalPlugins/openai/__init__.py:489 -msgid "Open the GitHub repository of this addon" -msgstr "Відкрити репозиторій GitHub цього додатка" - -#: addon/globalPlugins/openai/__init__.py:497 -msgid "Check for &updates..." -msgstr "&Перевірити наявність оновлень..." - -#: addon/globalPlugins/openai/__init__.py:498 -msgid "Check for updates" -msgstr "Перевірити наявність оновлень" - -#: addon/globalPlugins/openai/__init__.py:511 +"Збережені облікові записи постачальників. Клавіша «Пробіл» вибирає поточний " +"рядок або відкриває меню, якщо він вже вибраний; клавіша «Enter» підтверджує " +"зміни." + +#. Translators: Column header for the combined provider / account list in API accounts management. +#. Translators: Fallback display name in the API accounts list when the stored account has no custom name. +#. Translators: Stored display name for a new account when the user left the account name field empty (same word as list fallback). +#. Translators: Stored display name after edit when the user cleared the account name field (same word as list fallback). +#. Translators: Stored display name when moving an account to another provider and the name field was left blank. +#. Translators: Fallback account name when no custom name is set. +#. Translators: Fallback account name when loading account list. +#. Translators: NVDA Preferences — AI-Hub category: Recording — fallback account display name when the account has no custom name. +#. Translators: Group box title around the Mistral account selector in the Voxtral TTS tool. +#: addon\globalPlugins\AIHub\accounts_dialog.py:167 +#: addon\globalPlugins\AIHub\accounts_dialog.py:207 +#: addon\globalPlugins\AIHub\accounts_dialog.py:363 +#: addon\globalPlugins\AIHub\accounts_dialog.py:404 +#: addon\globalPlugins\AIHub\accounts_dialog.py:417 +#: addon\globalPlugins\AIHub\modelhandlers_impl.py:62 +#: addon\globalPlugins\AIHub\modelhandlers_impl.py:79 +#: addon\globalPlugins\AIHub\settings_dialog.py:271 +#: addon\globalPlugins\AIHub\tool_voxtral_tts_dialog.py:60 +msgid "Account" +msgstr "Обліковий запис" + +#. Translators: Button in API accounts management — opens the form to register a new provider account. +#: addon\globalPlugins\AIHub\accounts_dialog.py:175 +msgid "&Add..." +msgstr "&Додати..." + +#. Translators: Suffix in the combined provider/account list marking the account that is currently active for that provider. +#. Translators: NVDA Preferences — AI-Hub category: Recording — suffix marking the provider’s active account in account lists. +#: addon\globalPlugins\AIHub\accounts_dialog.py:219 +#: addon\globalPlugins\AIHub\settings_dialog.py:275 +msgid "default" +msgstr "початково" + +#. Translators: API accounts list context menu — delete several accounts; Del when the list has focus. +#: addon\globalPlugins\AIHub\accounts_dialog.py:309 +#, python-format +msgid "&Remove %(count)d accounts (Del)" +msgstr "&Видалити %(count)d облікових записів (Del)" + +#. Translators: API accounts list context menu — create a new stored account. +#: addon\globalPlugins\AIHub\accounts_dialog.py:312 +#: addon\globalPlugins\AIHub\accounts_dialog.py:319 +#: addon\globalPlugins\AIHub\accounts_dialog.py:321 +msgid "&Add account..." +msgstr "&Додати обліковий запис..." + +#. Translators: API accounts list context menu — edit the selected account; Enter when the list has focus. +#: addon\globalPlugins\AIHub\accounts_dialog.py:315 +msgid "&Edit account (Enter)" +msgstr "&Редагувати обліковий запис (Enter)" + +#. Translators: API accounts list context menu — remove the selected account; Del when the list has focus. +#: addon\globalPlugins\AIHub\accounts_dialog.py:317 +msgid "&Remove account (Del)" +msgstr "&Видалити обліковий запис (Del)" + +#. Translators: Title bar of the modal form for creating a new API account. +#: addon\globalPlugins\AIHub\accounts_dialog.py:343 +msgid "Add account" +msgstr "Додати акаунт" + +#. Translators: Error message body when saving a new CustomOpenAI account without a base URL (title is «AI-Hub»). +#. Translators: Error message body when saving an edited CustomOpenAI account without a base URL (title is «AI-Hub»). +#: addon\globalPlugins\AIHub\accounts_dialog.py:352 +#: addon\globalPlugins\AIHub\accounts_dialog.py:391 +msgid "Custom base URL is required for CustomOpenAI accounts." +msgstr "Для облікових записів CustomOpenAI необхідна користувацька базова URL." + +#: addon\globalPlugins\AIHub\accounts_dialog.py:352 +#: addon\globalPlugins\AIHub\accounts_dialog.py:358 +#: addon\globalPlugins\AIHub\accounts_dialog.py:391 +#: addon\globalPlugins\AIHub\accounts_dialog.py:397 +msgid "AI-Hub" +msgstr "AI-Hub" + +#. Translators: Error message body when saving a new account for a provider that requires an API key (title is «AI-Hub»). +#. Translators: Error message body when saving an edited account for a provider that requires an API key (title is «AI-Hub»). +#: addon\globalPlugins\AIHub\accounts_dialog.py:358 +#: addon\globalPlugins\AIHub\accounts_dialog.py:397 +msgid "API key is required." +msgstr "Потрібен ключ API." + +#. Translators: Shown when several API accounts are selected but edit allows only one. +#: addon\globalPlugins\AIHub\accounts_dialog.py:378 +msgid "Select only one account to edit." +msgstr "Виберіть лише один обліковий запис для редагування." + +#. Translators: Title bar of the modal form for editing the selected API account. +#: addon\globalPlugins\AIHub\accounts_dialog.py:382 +msgid "Edit account" +msgstr "Редагувати обліковий запис" + +#. Translators: Confirmation prompt before deleting one stored API account (placeholders are account label and provider id). +#: addon\globalPlugins\AIHub\accounts_dialog.py:435 #, python-brace-format -msgid "Open A&I {addon_version}" -msgstr "Open A&I {addon_version}" - -#: addon/globalPlugins/openai/__init__.py:585 -msgid "Please disable the screen curtain before taking a screenshot" -msgstr "Перш ніж робити знімок екрана, вимкніть екранну завісу" - -#: addon/globalPlugins/openai/__init__.py:600 -msgid "Show Open AI dialog" -msgstr "Показати діалог Open AI" - -#: addon/globalPlugins/openai/__init__.py:623 -msgid "Image added to an existing session" -msgstr "Зображення додано до існуючого сеансу" +msgid "Remove account {name} from provider {provider}?" +msgstr "Видалити обліковий запис {name} від постачальника {provider}?" -#. Translators: This is the description of a command to take a screenshot and describe it. -#: addon/globalPlugins/openai/__init__.py:636 -msgid "Take a screenshot and describe it" -msgstr "Зробити знімок екрана і описати його" +#. Translators: Title of the confirmation dialog for removing an API account. +#: addon\globalPlugins\AIHub\accounts_dialog.py:440 +msgid "Remove account" +msgstr "Видалити обліковий запис" -#: addon/globalPlugins/openai/__init__.py:652 +#. Translators: Confirmation before permanently deleting several stored API accounts. +#: addon\globalPlugins\AIHub\accounts_dialog.py:446 #, python-format -msgid "Screenshot %s" -msgstr "Знімок екрана %s" +msgid "Remove %(count)d selected accounts? This cannot be undone." +msgstr "Видалити %(count)d вибраних облікових записів? Це неможливо скасувати." -#. Translators: This is the description of a command to grab the current navigator object and describe it. -#: addon/globalPlugins/openai/__init__.py:660 -msgid "Grab the current navigator object and describe it" -msgstr "Захопити поточний об’єкт навігатора й описати його" - -#. Translators: This is the name of the screenshot to be described. -#: addon/globalPlugins/openai/__init__.py:683 -#, python-format -msgid "Navigator Object %s" -msgstr "Об'єкт навігатора %s" +#. Translators: Title of the confirmation dialog for removing several API accounts at once. +#: addon\globalPlugins\AIHub\accounts_dialog.py:448 +msgid "Remove accounts" +msgstr "Видалити облікові записи" -#: addon/globalPlugins/openai/__init__.py:699 -msgid "Toggle the microphone recording and transcribe the audio from anywhere" +#. Translators: Brief NVDA message when Ask Question was used with a recording but no model supports direct audio input. +#: addon\globalPlugins\AIHub\ask_question.py:127 +msgid "No audio-capable model found. Enable direct audio in settings." msgstr "" -"Перемикати запис з мікрофона та транскрибувати аудіо з будь-якого місця" - -#. Translators: This is a model description -#: addon/globalPlugins/openai/consts.py:32 -msgid "Points to one of the most recent iterations of gpt-3.5 model." -msgstr "Вказує на одну з останніх ітерацій моделі gpt-3.5." +"Не знайдено моделі з підтримкою аудіо. Увімкніть прямий аудіовихід у " +"налаштуваннях." -#. Translators: This is a model description -#: addon/globalPlugins/openai/consts.py:40 -msgid "" -"The latest GPT-3.5 Turbo model with higher accuracy at responding in " -"requested formats and a fix for a bug which caused a text encoding issue for " -"non-English language function calls." +#. Translators: Brief NVDA message when Ask Question cannot run because no API account is configured. +#: addon\globalPlugins\AIHub\ask_question.py:130 +msgid "No API key configured. Please add one in AI-Hub settings." msgstr "" -"Остання модель GPT-3.5 Turbo з підвищеною точністю обробки запитуваних " -"форматів і виправленням помилки, яка спричиняла проблеми з кодуванням тексту " -"при виклику неанглійських функцій." - -#. Translators: This is a model description -#: addon/globalPlugins/openai/consts.py:48 +"Ключ API не налаштовано. Будь ласка, додайте його в налаштуваннях AI-Hub." + +#. Translators: Brief NVDA message when Ask Question starts playing the synthesized answer through NVDA’s audio path. +#. Translators: Brief NVDA message when Ask Question opens the answer WAV in the default application because in-process playback failed or was skipped. +#: addon\globalPlugins\AIHub\ask_question.py:170 +#: addon\globalPlugins\AIHub\ask_question.py:174 +msgid "Playing audio response" +msgstr "Відтворення аудіовідповіді" + +#. Translators: AI-Hub — audio capture and playback: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\audiohandlers.py:27 +msgid "Playing audio" +msgstr "Відтворення аудіо" + +#. Translators: AI-Hub — audio capture and playback: brief status feedback (speech/braille), not a full dialog. +#. Translators: Generic unexpected-error message in submit handler. +#. Translators: Generic fallback error text for API/result handling failures. +#. Translators: Fallback error body when the background task failed with an exception object that has no message attribute (same wording as the generic API error). +#. Translators: AI-Hub conversation — message history area: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\audiohandlers.py:32 +#: addon\globalPlugins\AIHub\conversation_dialog.py:1659 +#: addon\globalPlugins\AIHub\conversation_dialog.py:1942 +#: addon\globalPlugins\AIHub\conversation_dialog.py:1955 +#: addon\globalPlugins\AIHub\historyhandlers.py:301 +#: addon\globalPlugins\AIHub\historyhandlers.py:335 +#: addon\globalPlugins\AIHub\historyhandlers.py:352 +#: addon\globalPlugins\AIHub\historyhandlers.py:503 +msgid "An error occurred. More information is in the NVDA log." +msgstr "Сталася помилка. Більше інформації в журналі NVDA." + +#. Translators: AI-Hub — audio capture and playback: brief status feedback (speech/braille), not a full dialog. +#. Translators: AI-Hub NVDA menu / global scripts: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\audiohandlers.py:38 +#: addon\globalPlugins\AIHub\plugin_mixins.py:334 +msgid "Audio stopped" +msgstr "Відтворення зупинено" + +#. Translators: AI-Hub — audio capture and playback: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\audiohandlers.py:50 +msgid "No audio in this message" +msgstr "У цьому повідомленні немає аудіо" + +#. Translators: Text in audio processing status and error messages. +#: addon\globalPlugins\AIHub\audiohandlers.py:62 +msgid "Transcribe and describe the content of this audio." +msgstr "Транскрибувати та описати зміст цього аудіо." + +#. Translators: Text in audio processing status and error messages. +#: addon\globalPlugins\AIHub\audiohandlers.py:102 +msgid "Select audio files" +msgstr "Виберіть аудіофайли" + +#. Translators: Text in audio processing status and error messages. +#: addon\globalPlugins\AIHub\audiohandlers.py:105 msgid "" -"Updated GPT 3.5 Turbo. The latest GPT-3.5 Turbo model with improved " -"instruction following, JSON mode, reproducible outputs, parallel function " -"calling, and more." +"Audio files (*.mp3;*.mp4;*.mpeg;*.mpga;*.m4a;*.wav;*.webm)|" +"*.mp3;*.mp4;*.mpeg;*.mpga;*.m4a;*.wav;*.webm" msgstr "" -"Оновлено GPT 3.5 Turbo. Остання модель GPT-3.5 Turbo з покращеним " -"дотриманням інструкцій, режимом JSON, відтворюваними виводами, паралельним " -"викликом функцій тощо." +"Аудіофайли (*.mp3;*.mp4;*.mpeg;*.mpga;*.m4a;*.wav;*.webm)|" +"*.mp3;*.mp4;*.mpeg;*.mpga;*. m4a;*.wav;*.webm" + +#. Translators: AI-Hub — audio capture and playback: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\audiohandlers.py:124 +msgid "Audio file(s) added. Enter your prompt and submit." +msgstr "Аудіофайли додано. Введіть текст запиту та натисніть «Відправити»." + +#. Translators: AI-Hub — audio capture and playback: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\audiohandlers.py:132 +msgid "&Remove selected" +msgstr "&Видалити вибране" + +#. Translators: AI-Hub — audio capture and playback: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\audiohandlers.py:136 +msgid "Remove &all" +msgstr "Видалити &все" + +#. Translators: AI-Hub — audio capture and playback: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\audiohandlers.py:141 +msgid "Add from &file path..." +msgstr "&Додати зі шляху до файлу..." -#. Translators: This is a model description -#: addon/globalPlugins/openai/consts.py:56 +#: addon\globalPlugins\AIHub\chatcompletion.py:356 msgid "" -"Our most advanced, multimodal flagship model that’s cheaper and faster than " -"GPT-4 Turbo" +"Anthropic accepts PDF as native document blocks and inlines plain-text " +"files. Other formats (.docx, .xlsx, .csv, …) must be converted to PDF or " +"plain text." msgstr "" -"Наша найсучасніша мультимодальна флагманська модель, яка дешевша і швидша за " -"GPT-4 Turbo" - -#. Translators: This is a model description -#: addon/globalPlugins/openai/consts.py:65 -msgid "The latest GPT-4 Turbo model with vision capabilities" -msgstr "Остання модель GPT-4 Turbo з баченням" +"Anthropic підтримує PDF як вбудовані блоки документів та вставляє файли у " +"вигляді простого тексту. Інші формати (.docx, .xlsx, .csv тощо) необхідно " +"перетворити у PDF або простий текст." -#. Translators: This is a model description -#: addon/globalPlugins/openai/consts.py:74 -msgid "Points to one of the most recent iterations of gpt-4 model." -msgstr "Вказує на одну з останніх ітерацій моделі gpt-4." - -#. Translators: This is a model description -#: addon/globalPlugins/openai/consts.py:82 +#: addon\globalPlugins\AIHub\chatcompletion.py:362 msgid "" -"The latest GPT-4 model intended to reduce cases of “laziness” where the " -"model doesn’t complete a task." +"Google's chat-completions endpoint does not accept binary documents. Plain-" +"text files are inlined automatically; for PDFs use OpenAI, Anthropic, " +"OpenRouter, Mistral, or xAI." msgstr "" -"Остання модель GPT-4 призначена для зменшення випадків \"лінощів\", коли " -"модель не виконує завдання." +"Кінцева точка Google для автозавершення в чаті не підтримує бінарні " +"документи. Файли у форматі простого тексту вставляються автоматично; для PDF-" +"файлів використовуйте OpenAI, Anthropic, OpenRouter, Mistral або xAI." -#. Translators: This is a model description -#: addon/globalPlugins/openai/consts.py:90 +#: addon\globalPlugins\AIHub\chatcompletion.py:368 msgid "" -"GPT-4 Turbo model featuring improved instruction following, JSON mode, " -"reproducible outputs, parallel function calling, and more." +"OpenRouter parses PDFs into the underlying model. If this file was rejected, " +"the underlying model may not support documents — try another model." msgstr "" -"Модель GPT-4 Turbo із покращеним дотриманням інструкцій, режимом JSON, " -"відтворюваними виводами, паралельним викликом функцій тощо." +"OpenRouter перетворює PDF-файли у базову модель. Якщо цей файл було " +"відхилено, можливо, базова модель не підтримує документи — спробуйте іншу " +"модель." -#. Translators: This is a model description -#: addon/globalPlugins/openai/consts.py:99 +#: addon\globalPlugins\AIHub\chatcompletion.py:374 msgid "" -"GPT-4 Turbo with vision. Ability to understand images, in addition to all " -"other GPT-4 Turbo capabilities." +"Mistral expects documents via the document_url shape (URL or data URI). For " +"OCR of scanned files, use the Mistral OCR tool." msgstr "" -"GPT-4 Turbo з оглядом. Здатність розуміти зображення на додаток до всіх " -"інших можливостей GPT-4 Turbo." +"Mistral очікує документи у форматі document_url (URL або URI даних). Для " +"розпізнавання тексту у відсканованих файлах скористайтеся інструментом " +"Mistral OCR." -#. Translators: This is a model description -#: addon/globalPlugins/openai/consts.py:109 +#: addon\globalPlugins\AIHub\chatcompletion.py:380 msgid "" -"More capable than any GPT-3.5 model, able to do more complex tasks, and " -"optimized for chat" +"The selected OpenAI model rejected this document. Try another OpenAI model " +"with file-input support or use a supported document format." msgstr "" -"Більш потужний, ніж будь-яка модель GPT-3.5, здатний виконувати більш " -"складні завдання та оптимізований для чату" +"Вибрана модель OpenAI відхилила цей документ. Спробуйте іншу модель OpenAI " +"із підтримкою введення файлів або використовуйте підтримуваний формат " +"документа." -#. Translators: This is a model description -#: addon/globalPlugins/openai/consts.py:116 +#: addon\globalPlugins\AIHub\chatcompletion.py:386 msgid "" -"Same capabilities as the standard gpt-4 mode but with 4x the context length." +"The selected provider does not natively accept binary documents on its chat " +"endpoint. Plain-text files are inlined automatically; for PDFs use OpenAI, " +"Anthropic, OpenRouter, Mistral, or xAI." msgstr "" -"Ті ж можливості, що і в стандартному режимі gpt-4, але з 4-кратною довжиною " -"контексту." +"Обраний постачальник послуг не підтримує вбудовану функцію обробки бінарних " +"документів у своєму чат-інтерфейсі. Файли у вигляді простого тексту " +"вбудовуються автоматично; для обробки PDF-файлів використовуйте OpenAI, " +"Anthropic, OpenRouter, Mistral або xAI." + +#. Translators: Text in chat completion status and error messages. +#: addon\globalPlugins\AIHub\chatcompletion.py:433 +msgid "Transcribing audio..." +msgstr "Транскрибування аудіо..." + +#. Translators: Text in chat completion status and error messages. +#: addon\globalPlugins\AIHub\chatcompletion.py:460 +msgid "Invalid temperature" +msgstr "Неправильна температура" + +#. Translators: Text in chat completion status and error messages. +#: addon\globalPlugins\AIHub\chatcompletion.py:464 +msgid "Invalid top P" +msgstr "Неправильна вершина P" -#. Translators: This is a model description -#: addon/globalPlugins/openai/consts.py:124 -#: addon/globalPlugins/openai/consts.py:133 +#. Translators: Text in chat completion status and error messages. +#: addon\globalPlugins\AIHub\chatcompletion.py:483 #, python-format -msgid "aka %s" -msgstr "також відомий як %s" +msgid "Uploading %s, please wait..." +msgstr "Відвантаження %s, зачекайте..." -#. Translators: This is a model description -#: addon/globalPlugins/openai/consts.py:142 -msgid "Simple tasks (Classification, Customer Support, or Text Generation)" -msgstr "" -"Прості завдання (класифікація, підтримка клієнтів або генерація тексту)" +#. Translators: Text in chat completion status and error messages. +#: addon\globalPlugins\AIHub\chatcompletion.py:485 +#, python-format +msgid "%d image(s)" +msgstr "%d зображень" -#. Translators: This is a model description -#: addon/globalPlugins/openai/consts.py:151 -msgid "" -"Intermediate tasks that require moderate reasoning (Data extraction, " -"Summarizing a Document, Writing emails, Writing a Job Description, or " -"Writing Product Descriptions)" -msgstr "" -"Проміжні завдання, які вимагають поміркованих обґрунтувань (витяг даних, " -"узагальнення документа, написання електронних листів, написання посадових " -"інструкцій або опис продукту)" +#. Translators: Text in chat completion status and error messages. +#: addon\globalPlugins\AIHub\chatcompletion.py:487 +#, python-format +msgid "%d audio file(s)" +msgstr "%d аудіофайл(и)" + +#. Translators: Text in chat completion status and error messages. +#: addon\globalPlugins\AIHub\chatcompletion.py:489 +#, python-format +msgid "%d document(s)" +msgstr "%d документ(ів)" + +#. Translators: Text in chat completion status and error messages. +#: addon\globalPlugins\AIHub\chatcompletion.py:491 +msgid "Please wait..." +msgstr "Будь ласка, зачекайте..." -#. Translators: This is a model description -#: addon/globalPlugins/openai/consts.py:160 +#. Translators: Error message when the chat response included audio but NVDA could not play or save it (details in the log). +#: addon\globalPlugins\AIHub\chatcompletion.py:827 msgid "" -"Complex tasks that require large reasoning capabilities or are highly " -"specialized (Synthetic Text Generation, Code Generation, RAG, or Agents)" +"An error occurred playing the audio response. More information is in the " +"NVDA log." msgstr "" -"Складні завдання, які вимагають великих можливостей міркування або є " -"вузькоспеціалізованими (генерація синтетичного тексту, генерація коду, RAG " -"або агенти)" +"Під час відтворення аудіовідповіді сталася помилка. Більше інформації в " +"журналі NVDA." + +#. Translators: Title of the error message box for chat-completion failures in AI-Hub. +#. Translators: Title for generic add-on error dialog. +#. Translators: Title for runtime/API error dialog after submit. +#: addon\globalPlugins\AIHub\chatcompletion.py:829 +#: addon\globalPlugins\AIHub\conversation_dialog.py:1661 +#: addon\globalPlugins\AIHub\conversation_dialog.py:1963 +msgid "OpenAI Error" +msgstr "Помилка OpenAI" -#: addon/globalPlugins/openai/consts.py:174 +#: addon\globalPlugins\AIHub\consts.py:202 msgid "" "You are an accessibility assistant integrated in the NVDA screen reader that " "helps blind screen reader users access visual information that may not be " @@ -402,659 +455,3514 @@ msgid "" "generate a detailed visual description. If the user sends an image alone " "without additional instructions in text, describe the image exactly as " "prescribed in this system prompt. Adhere strictly to the instructions in " -"this system prompt to describe images. Don’t add any additional details " +"this system prompt to describe images. Don't add any additional details " "unless the user specifically ask you." msgstr "" -"You are an accessibility assistant integrated in the NVDA screen reader that " -"helps blind screen reader users access visual information that may not be " -"accessible using the screen reader alone, and answer questions related to " -"the use of Windows and other applications with NVDA. When answering " -"questions, always make very clear to the user when something is a fact that " -"comes from your training data versus an educated guess, and always consider " -"that the user is primarily accessing content using the keyboard and a screen " -"reader. When describing images, keep in mind that you are describing content " -"to a blind screen reader user and they need assistance with accessing visual " -"information in an image that they cannot see. Please describe any relevant " -"details such as names, participant lists, or other information that would be " -"visible to sighted users in the context of a call or application interface. " -"When the user shares an image, it may be the screenshot of an entire window, " -"a partial window or an individual control in an application user interface. " -"Generate a detailed but succinct visual description. If the image is a " -"control, tell the user the type of control and its current state if " -"applicable, the visible label if present, and how the control looks like. If " -"it is a window or a partial window, include the window title if present, and " -"describe the rest of the screen, listing all sections starting from the top, " -"and explaining the content of each section separately. For each control, " -"inform the user about its name, value and current state when applicable, as " -"well as which control has keyboard focus. Ensure to include all visible " -"instructions and error messages. When telling the user about visible text, " -"do not add additional explanations of the text unless the meaning of the " -"visible text alone is not sufficient to understand the context. Do not make " -"comments about the aesthetics, cleanliness or overall organization of the " -"interface. If the image does not correspond to a computer screen, just " -"generate a detailed visual description. If the user sends an image alone " -"without additional instructions in text, describe the image exactly as " -"prescribed in this system prompt. Adhere strictly to the instructions in " -"this system prompt to describe images. Don’t add any additional details " -"unless the user specifically ask you." +"Ви — помічник з питань доступності, інтегрований у екранний зчитувач NVDA, " +"який допомагає незрячим користувачам екранних зчитувачів отримувати доступ " +"до візуальної інформації, яка може бути недоступною при використанні лише " +"екранного зчитувача, а також відповідає на запитання, пов’язані з " +"використанням Windows та інших програм разом із NVDA. Відповідаючи на " +"запитання, завжди чітко роз’яснюйте користувачеві, коли інформація " +"ґрунтується на ваших навчальних даних, а коли є лише обґрунтованим " +"припущенням, і завжди враховуйте, що користувач отримує доступ до вмісту " +"переважно за допомогою клавіатури та екранного зчитувача. Описуючи " +"зображення, майте на увазі, що ви описуєте вміст для незрячого користувача " +"екранного зчитувача, і йому потрібна допомога в отриманні доступу до " +"візуальної інформації на зображенні, яку він не може бачити. Будь ласка, " +"опишіть усі відповідні деталі, такі як імена, списки учасників або іншу " +"інформацію, яка була б видима для зрячих користувачів у контексті дзвінка " +"або інтерфейсу програми. Коли користувач ділиться зображенням, це може бути " +"знімок екрана всього вікна, частини вікна або окремого елемента керування в " +"інтерфейсі користувача програми. Створіть детальний, але лаконічний " +"візуальний опис. Якщо зображення є елементом управління, повідомте " +"користувачеві тип елемента управління та його поточний стан, якщо це " +"доречно, видимий заголовок, якщо він є, та як виглядає елемент керування. " +"Якщо це вікно або частина вікна, вкажіть заголовок вікна, якщо він є, та " +"опишіть решту екрана, перелічивши всі розділи, починаючи зверху, та " +"пояснюючи вміст кожного розділу окремо. Для кожного елемента керування " +"повідомте користувачеві його назву, значення та поточний стан, якщо це " +"доречно, а також вкажіть, який елемент керування сфокусований. Обов’язково " +"включіть усі видимі інструкції та повідомлення про помилки. Повідомляючи " +"користувачеві про видимий текст, не додавайте додаткових пояснень до тексту, " +"якщо тільки значення самого видимого тексту не є достатнім для розуміння " +"контексту. Не робіть коментарів щодо естетики, чистоти або загальної " +"організації інтерфейсу. Якщо зображення не відповідає екрану комп'ютера, " +"просто створіть детальний візуальний опис. Якщо користувач надсилає лише " +"зображення без додаткових інструкцій у тексті, опишіть зображення точно так, " +"як зазначено в цьому системному запиті. Суворо дотримуйтесь інструкцій у " +"цьому системному запиті для опису зображень. Не додавайте жодних додаткових " +"деталей, якщо тільки користувач спеціально не попросить вас про це." + +#. Translators: Fallback title when no conversation tab exists. +#. Translators: Fallback active-tab label used in the window title. +#. Translators: Final conversation window title pattern. +#. Translators: Generic notebook tab caption still treated as «no real title yet» when syncing the window title from the model. +#. Translators: Fallback tab label for a lazily restored conversation tab. +#. Translators: Temporary tab caption while restoring a previous session. +#. Translators: Fallback tab title when restoring a hub session if the saved conversation id has no stored display name. +#. Translators: Fallback tab label when a restored conversation name is missing. +#. Translators: Fallback name when opening an untitled saved conversation from history. +#. Translators: Main dialog title suffix. +#. Translators: NVDA Preferences — AI-Hub category: title of a bordered settings group. +#: addon\globalPlugins\AIHub\conversation_dialog.py:447 +#: addon\globalPlugins\AIHub\conversation_dialog.py:454 +#: addon\globalPlugins\AIHub\conversation_dialog.py:458 +#: addon\globalPlugins\AIHub\conversation_dialog.py:518 +#: addon\globalPlugins\AIHub\conversation_dialog.py:772 +#: addon\globalPlugins\AIHub\conversation_dialog.py:846 +#: addon\globalPlugins\AIHub\conversation_dialog.py:852 +#: addon\globalPlugins\AIHub\conversation_dialog.py:867 +#: addon\globalPlugins\AIHub\conversation_dialog.py:888 +#: addon\globalPlugins\AIHub\conversation_dialog.py:997 +#: addon\globalPlugins\AIHub\conversation_dialog.py:1000 +#: addon\globalPlugins\AIHub\settings_dialog.py:45 +msgid "Conversation" +msgstr "Розмова" + +#. Translators: Tab position in the notebook (e.g. second of three tabs). +#: addon\globalPlugins\AIHub\conversation_dialog.py:456 +#, python-brace-format +msgid "({cur}/{tot})" +msgstr "({cur}/{tot})" -#. Translators: This is a message emitted by the add-on when an operation is in progress. -#: addon/globalPlugins/openai/maindialog.py:72 -msgid "Please wait..." -msgstr "Будь ласка, зачекайте..." +#. Translators: Tab title when first attachment name is followed by more attachments. +#: addon\globalPlugins\AIHub\conversation_dialog.py:483 +#, python-brace-format +msgid "{base} (+{n})" +msgstr "{base} (+{n})" + +#. Translators: Notebook tab caption treated as an automatic placeholder until the conversation gets a real title. +#. Translators: Default tab caption for a new empty conversation. +#. Translators: Fallback saved-conversation title when no explicit name is available. +#. Translators: Default name when opening a saved conversation without title. +#. Translators: Fallback title for loaded conversations missing a name. +#. Translators: Default name suggested in rename dialog for untitled conversations. +#. Translators: Text in conversation metadata/properties shown to the user. +#. Translators: Default conversation title when no name exists. +#: addon\globalPlugins\AIHub\conversation_dialog.py:516 +#: addon\globalPlugins\AIHub\conversation_dialog.py:695 +#: addon\globalPlugins\AIHub\conversation_dialog.py:743 +#: addon\globalPlugins\AIHub\conversation_dialog.py:995 +#: addon\globalPlugins\AIHub\conversation_dialog.py:1483 +#: addon\globalPlugins\AIHub\conversation_dialog.py:1612 +#: addon\globalPlugins\AIHub\conversations.py:309 +#: addon\globalPlugins\AIHub\conversations.py:563 +#: addon\globalPlugins\AIHub\conversations.py:676 +#: addon\globalPlugins\AIHub\conversations.py:768 +#: addon\globalPlugins\AIHub\conversations.py:794 +#: addon\globalPlugins\AIHub\conversations.py:812 +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:250 +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:478 +msgid "Untitled conversation" +msgstr "Розмова без назви" + +#. Translators: Placeholder caption for a brand new conversation tab. +#. Translators: Title used when opening a fresh conversation window. +#. Translators: Spoken status message after creating a new conversation tab. +#: addon\globalPlugins\AIHub\conversation_dialog.py:520 +#: addon\globalPlugins\AIHub\conversation_dialog.py:1000 +#: addon\globalPlugins\AIHub\conversation_dialog.py:1645 +msgid "New conversation" +msgstr "Нова розмова" + +#. Translators: Section title for top action buttons in the conversation window. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1012 +msgid "Toolbar" +msgstr "Панель інструментів" + +#. Translators: AI-Hub conversation window: title of a bordered settings group. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1018 +msgid "Conversation &list..." +msgstr "&Список розмов..." + +#. Translators: Toolbar button to save current conversation immediately. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1025 +msgid "&Save conversation" +msgstr "&Зберегти розмову" + +#. Translators: Toolbar button to open a new conversation tab. +#. Translators: Conversation history list context menu — starts a new AI-Hub chat (no list shortcut). +#: addon\globalPlugins\AIHub\conversation_dialog.py:1032 +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:595 +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:620 +msgid "&New conversation" +msgstr "&Нова розмова" + +#. Translators: Toolbar button to rename the current saved conversation. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1039 +msgid "&Rename conversation" +msgstr "&Перейменувати розмову" + +#. Translators: Section title for model generation options. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1089 +msgid "Generation" +msgstr "Генерація" + +#. Translators: AI-Hub conversation window: title of a bordered settings group. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1096 +msgid "&Reasoning mode" +msgstr "&Режим міркування" + +#. Translators: Checkbox to enable adaptive reasoning behavior when supported. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1104 +msgid "&Adaptive thinking" +msgstr "&Адаптивне міркування" + +#. Translators: Checkbox to allow built-in web search for supporting models. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1112 +msgid "&Web search" +msgstr "&Веб пошук" + +#. Translators: Label for reasoning effort dropdown. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1122 +msgid "Reasoning &effort:" +msgstr "Міркування та зусилля:" + +#. Translators: Label for maximum output tokens numeric input. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1133 +msgid "Max to&kens:" +msgstr "&Максимальна кількість токенів:" -#: addon/globalPlugins/openai/maindialog.py:75 -msgid "Text" -msgstr "Текст" +#. Translators: Checkbox that reveals/hides advanced sampling controls. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1144 +msgid "Ad&vanced sampling (temperature, top-p, seed, stop, …)" +msgstr "" +"Розширена вибірка (температура, верхня температура, початковий рівень, стоп, " +"тощо.)" + +#. Translators: Group title for advanced sampling parameters. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1151 +msgid "Advanced sampling options" +msgstr "Розширені параметри вибірки" + +#. Translators: Label before the temperature spin control (value is hundredths) in Advanced sampling on the conversation window. +#. Translators: Label before the optional sampling temperature field for Lyria music generation. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1161 +#: addon\globalPlugins\AIHub\tool_lyria_dialog.py:99 +msgid "&Temperature:" +msgstr "&Температура:" -#: addon/globalPlugins/openai/maindialog.py:76 -msgid "SubRip (SRT)" -msgstr "SubRip (SRT)" +#. Translators: Label before the top-P (probability mass) spin control in Advanced sampling on the conversation window. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1177 +msgid "Pro&bability Mass (top P):" +msgstr "Мас&а ймовірності (Верхнє P):" + +#. Translators: Label for optional deterministic seed spin control. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1188 +msgid "See&d (−1 = omit):" +msgstr "&Початкове значення (−1 = пропустити):" + +#. Translators: Label for optional top-k spin control. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1199 +msgid "Top &K (0 = omit):" +msgstr "Вверх &K (0 = пропустити):" + +#. Translators: Label for stop sequences multiline input. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1214 +msgid "St&op sequences (one per line):" +msgstr "&Стоп послідовності (по одній на рядок):" + +#. Translators: Label for frequency penalty spin control. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1225 +msgid "&Frequency penalty (−2..2, ×100):" +msgstr "&Штраф за частоту (−2..2, ×100):" + +#. Translators: Label for presence penalty spin control. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1236 +msgid "&Presence penalty (−2..2, ×100):" +msgstr "&Штраф за присутність (−2..2, ×100):" + +#. Translators: Bottom-row toggles and tools button labels. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1251 +msgid "&Stream mode" +msgstr "&Потоковий режим" -#: addon/globalPlugins/openai/maindialog.py:77 -msgid "Web Video Text Tracks (VTT)" -msgstr "Текстові доріжки веб-відео (VTT)" +#. Translators: Checkbox label to enable verbose debugging output. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1257 +msgid "Debu&g mode" +msgstr "Режи&м налагодження" -#: addon/globalPlugins/openai/maindialog.py:215 -msgid "Invalid temperature" -msgstr "Неправильна температура" +#. Translators: Button opening provider-specific tools/actions menu. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1265 +msgid "&Tools..." +msgstr "&Інструменти..." -#: addon/globalPlugins/openai/maindialog.py:218 -msgid "Invalid top P" -msgstr "Неправильна вершина P" +#. Translators: Prefix shown before user message content in history view. +#. Translators: Prefix shown before user message content in streaming history updates. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1384 +#: addon\globalPlugins\AIHub\conversation_dialog.py:2001 +msgid "User:" +msgstr "Користувач:" + +#. Translators: Prefix shown before assistant response content in history view. +#. Translators: Prefix shown before assistant response in streaming history updates. +#. Translators: Prefix shown before assistant response in streaming history updates. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1392 +#: addon\globalPlugins\AIHub\conversation_dialog.py:2010 +msgid "Assistant:" +msgstr "Помічник:" + +#. Translators: Status message after toggling thinking text visibility in history. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1466 +msgid "Thinking content shown in history." +msgstr "Перегляд вмісту, що показується в історії." + +#: addon\globalPlugins\AIHub\conversation_dialog.py:1466 +msgid "Thinking content hidden in history." +msgstr "Перегляд вмісту, що прихований в історії." + +#. Translators: Message when manual save is requested for an empty conversation. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1590 +msgid "No messages or prompt to save." +msgstr "Немає повідомлень або запитів на збереження." + +#. Translators: Confirmation message after successful manual save. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1594 +msgid "Conversation saved." +msgstr "Розмову збережено." + +#. Translators: Error text when manual conversation save fails. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1598 +msgid "Unable to save conversation. Check the NVDA log for details." +msgstr "Не вдалося зберегти розмову. Подробиці перевірте в журналі NVDA." + +#. Translators: Title for manual save error dialog. +#. Translators: AI-Hub conversation — message history area: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1600 +#: addon\globalPlugins\AIHub\historyhandlers.py:608 +msgid "Save conversation" +msgstr "Зберегти розмову" + +#. Translators: Message shown when trying to rename before first save. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1608 +msgid "Save the conversation first before renaming." +msgstr "Перш ніж перейменовувати, збережіть розмову." + +#. Translators: Prompt text in rename conversation dialog. +#. Translators: Prompt in the rename conversation dialog. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1616 +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:757 +msgid "Enter new name for this conversation:" +msgstr "Введіть нову назву для цієї розмови:" + +#. Translators: Title of rename conversation dialog. +#. Translators: Title of the rename conversation dialog. +#. Translators: AI-Hub conversation — message history area: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1618 +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:759 +#: addon\globalPlugins\AIHub\historyhandlers.py:612 +msgid "Rename conversation" +msgstr "Перейменувати розмову" + +#: addon\globalPlugins\AIHub\conversation_dialog.py:1681 +#, python-brace-format +msgid "" +"The selected account provider ({accountProvider}) does not match the " +"selected model provider ({modelProvider}). Please select a compatible " +"account or model." +msgstr "" +"Вибраний постачальник облікових записів ({accountProvider}) не збігається з " +"вибраним постачальником моделі ({modelProvider}). Виберіть сумісний " +"обліковий запис або модель." + +#. Translators: Title for account/provider mismatch dialog. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1688 +msgid "Provider mismatch" +msgstr "Невідповідність постачальника" + +#: addon\globalPlugins\AIHub\conversation_dialog.py:1696 +#, python-brace-format +msgid "" +"This model is only available with the {provider} provider and the selected " +"account is not ready. Please verify your account API key in settings, or " +"select another account/model." +msgstr "" +"Ця модель доступна лише з постачальником {provider}, і вибраний обліковий " +"запис не готовий. Перевірте ключ API свого облікового запису в налаштуваннях " +"або виберіть інший обліковий запис/модель." + +#. Translators: Dynamic error dialog title when API key/account is missing for provider. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1702 +#, python-brace-format +msgid "No API key for {provider}" +msgstr "Немає ключа API для {provider}" + +#. Translators: Title for unsupported-attachments validation error. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1714 +msgid "Unsupported attachments" +msgstr "Непідтримувані вкладення" + +#: addon\globalPlugins\AIHub\conversation_dialog.py:1724 +#, python-brace-format +msgid "" +"This model ({model}) does not support image description. Please select one " +"of the following models: {models}." +msgstr "" +"Ця модель ({model}) не підтримує опис зображення. Виберіть одну з таких " +"моделей: {models}." + +#. Translators: Title for model capability validation errors. +#. Translators: Title of the error dialog when the user attaches audio but the chosen chat model does not accept audio input. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1731 +#: addon\globalPlugins\AIHub\conversation_dialog.py:1748 +msgid "Invalid model" +msgstr "Неправильна модель" + +#: addon\globalPlugins\AIHub\conversation_dialog.py:1740 +#, python-brace-format +msgid "" +"This model ({model}) does not support audio input. Please select one of the " +"following models: {models}." +msgstr "" +"Ця модель ({model}) не підтримує аудіо введення. Будь ласка, виберіть одну з " +"таких моделей: {models}." + +#. Translators: Fallback text when no audio-capable model is available. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1745 +msgid "none available" +msgstr "немає доступних" + +#. Translators: Informational warning about automatic image resize behavior/cost impact. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1758 +msgid "" +"Be aware that the add-on may auto-resize images before API submission to " +"lower request sizes and costs. Adjust this feature in the AI-Hub settings if " +"needed. This message won't show again." +msgstr "" +"Зверніть увагу, що додаток може автоматично змінювати розмір зображень перед " +"відправкою до API, щоб зменшити обсяг запитів та витрати. За потреби " +"налаштуйте цю функцію в налаштуваннях AI-Hub. Це повідомлення більше не " +"з’являтиметься." -#. Translators: This is a message displayed when uploading one image to the API. -#: addon/globalPlugins/openai/maindialog.py:233 -msgid "Uploading one image, please wait..." -msgstr "Відвантаження одного зображення, зачекайте..." +#. Translators: Title for image-resize informational dialog. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1762 +msgid "Image resizing" +msgstr "Зміна розміру зображення" + +#. Translators: Error shown when a temporary file could not be deleted. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1829 +#, python-format +msgid "" +"Unable to delete the file: %s\n" +"Please remove it manually." +msgstr "" +"Не вдалося видалити файл: %s\n" +"Видаліть його вручну." -#. Translators: This is a message displayed when uploading multiple images to the API. -#: addon/globalPlugins/openai/maindialog.py:236 +#. Translators: Status message after attaching recorded/loaded audio input. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1923 +msgid "Audio added for direct model input" +msgstr "Додано аудіо для прямого введення в модель" + +#. Translators: Status message after inserting transcribed text into prompt. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1936 #, python-format -msgid "Uploading %d images, please wait..." -msgstr "Відвантажуються %d зображень, будь ласка, зачекайте..." +msgid "Insertion of: %s" +msgstr "Вставка з: %s" -#. Translators: This is the label for the conversation mode checkbox in the main dialog. -#: addon/globalPlugins/openai/maindialog.py:584 -msgid "&Conversation mode" -msgstr "&Режим розмови" +#. Translators: Prompt appended to error text when it contains a URL. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1959 +msgid "Do you want to open the URL in your browser?" +msgstr "Бажаєте відкрити URL-адресу у своєму браузері?" -#. Translators: This is the label for the system prompt text control in the main dialog. -#: addon/globalPlugins/openai/maindialog.py:592 -msgid "S&ystem prompt:" -msgstr "С&истемна підказка:" +#. Translators: Hint spoken when Escape key is blocked by settings. +#: addon\globalPlugins\AIHub\conversation_dialog.py:1990 +msgid "Press Alt+F4 to close the dialog" +msgstr "Натисніть Alt+F4, щоб закрити діалог" -#. Translators: This is the label for the messages text control in the main dialog. -#: addon/globalPlugins/openai/maindialog.py:612 -msgid "&Messages:" +#. Translators: Label for account selection list in a conversation tab. +#. Translators: Label before the Google account drop-down in the Lyria 3 Pro tool. +#. Translators: Label before the Mistral account drop-down in the Mistral OCR tool. +#. Translators: Label before the Mistral account drop-down in the Mistral Speech-to-Text tool. +#. Translators: Label before the account drop-down choosing which saved Ollama endpoint/credentials to use. +#. Translators: Label before the OpenAI account drop-down in the OpenAI Transcription tool. +#. Translators: Label before the OpenAI account drop-down in the OpenAI TTS tool. +#. Translators: Label before the Mistral account drop-down in the Voxtral TTS tool. +#: addon\globalPlugins\AIHub\conversation_session_panel.py:68 +#: addon\globalPlugins\AIHub\tool_lyria_dialog.py:53 +#: addon\globalPlugins\AIHub\tool_mistral_ocr_dialog.py:54 +#: addon\globalPlugins\AIHub\tool_mistral_transcription_dialog.py:77 +#: addon\globalPlugins\AIHub\tool_ollama_models_dialog.py:68 +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:63 +#: addon\globalPlugins\AIHub\tool_openai_tts_dialog.py:68 +#: addon\globalPlugins\AIHub\tool_voxtral_tts_dialog.py:72 +msgid "&Account:" +msgstr "&Обліковий запис:" + +#. Translators: Label for system prompt text field. +#: addon\globalPlugins\AIHub\conversation_session_panel.py:75 +msgid "Sy&stem prompt:" +msgstr "&Системна підказка:" + +#. Translators: Label for message history text area. +#: addon\globalPlugins\AIHub\conversation_session_panel.py:84 +msgid "Me&ssages:" msgstr "&Повідомлення:" -#. Translators: This is the label for the prompt text control in the main dialog. -#: addon/globalPlugins/openai/maindialog.py:627 +#. Translators: Label for the user prompt input field. +#. Translators: Label before the main multiline music prompt describing what Lyria should generate. +#: addon\globalPlugins\AIHub\conversation_session_panel.py:94 +#: addon\globalPlugins\AIHub\tool_lyria_dialog.py:60 msgid "&Prompt:" msgstr "&Запит:" -#. Translators: This is the label for the images list control in the main dialog. -#: addon/globalPlugins/openai/maindialog.py:641 -msgid "Images:" -msgstr "Зображення:" +#. Translators: Section label for pending attachments in this tab. +#: addon\globalPlugins\AIHub\conversation_session_panel.py:116 +msgid "Attachments" +msgstr "Вкладення" + +#. Translators: AI-Hub conversation tab (one notebook page): column title in a report-style list. +#: addon\globalPlugins\AIHub\conversation_session_panel.py:122 +msgid "&Files:" +msgstr "&Файли:" -#. Translators: This is the label for the name column in the image list control in the main dialog. -#: addon/globalPlugins/openai/maindialog.py:651 +#. Translators: Column headers in attached files list. +#: addon\globalPlugins\AIHub\conversation_session_panel.py:130 msgid "name" msgstr "назва" -#. Translators: This is the label for the path column in the image list control in the main dialog. -#: addon/globalPlugins/openai/maindialog.py:656 +#. Translators: AI-Hub conversation tab (one notebook page): read-only explanatory line next to controls. +#: addon\globalPlugins\AIHub\conversation_session_panel.py:132 msgid "path" msgstr "шлях" -#. Translators: This is the label for the size column in the image list control in the main dialog. -#: addon/globalPlugins/openai/maindialog.py:661 +#. Translators: AI-Hub conversation tab (one notebook page): read-only explanatory line next to controls. +#: addon\globalPlugins\AIHub\conversation_session_panel.py:134 msgid "size" msgstr "розмір" -#. Translators: This is the label for the dimensions column in the image list control in the main dialog. -#: addon/globalPlugins/openai/maindialog.py:666 +#. Translators: AI-Hub conversation tab (one notebook page): read-only explanatory line next to controls. +#: addon\globalPlugins\AIHub\conversation_session_panel.py:136 msgid "Dimensions" msgstr "Розміри" -#. Translators: This is the label for the description column in the image list control in the main dialog. -#: addon/globalPlugins/openai/maindialog.py:671 +#. Translators: AI-Hub conversation tab (one notebook page): read-only explanatory line next to controls. +#: addon\globalPlugins\AIHub\conversation_session_panel.py:138 msgid "description" msgstr "опис" -#. Translators: This is the label for the model list box in the main dialog. -#: addon/globalPlugins/openai/maindialog.py:694 +#. Translators: AI-Hub conversation tab (one notebook page): column title in a report-style list. +#: addon\globalPlugins\AIHub\conversation_session_panel.py:155 +msgid "A&udio files:" +msgstr "&Аудіофайли:" + +#. Translators: Column headers in attached audio list. +#: addon\globalPlugins\AIHub\conversation_session_panel.py:163 +msgid "File" +msgstr "Файл" + +#. Translators: AI-Hub conversation tab (one notebook page): read-only explanatory line next to controls. +#: addon\globalPlugins\AIHub\conversation_session_panel.py:165 +msgid "Path" +msgstr "Шлях" + +#. Translators: Label for model selection list in a conversation tab. +#: addon\globalPlugins\AIHub\conversation_session_panel.py:183 msgid "M&odel:" msgstr "М&одель:" -#. Translators: This is the label for the model name column in the model list control in the main dialog. -#: addon/globalPlugins/openai/maindialog.py:704 -msgid "Name" -msgstr "Назва" +#. Translators: Text in conversation metadata/properties shown to the user. +#. Translators: Placeholder text when a file size cannot be determined. +#. Translators: Placeholder model label when no model is known. +#. Translators: Text in attachment/file handling messages. +#. Translators: AI-Hub conversation — message history area: brief status feedback (speech/braille), not a full dialog. +#. Translators: Placeholder model name in the «Conversation properties» token summary when a message block has no model id. +#. Translators: AI-Hub model details (browseable HTML): label, section heading, capability tag, or table cell in the generated report. +#: addon\globalPlugins\AIHub\conversations.py:529 +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:43 +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:254 +#: addon\globalPlugins\AIHub\filehandlers.py:180 +#: addon\globalPlugins\AIHub\filehandlers.py:186 +#: addon\globalPlugins\AIHub\historyhandlers.py:88 +#: addon\globalPlugins\AIHub\historyhandlers.py:103 +#: addon\globalPlugins\AIHub\modeldetailsutils.py:111 +msgid "unknown" +msgstr "невідома помилка" -#. Translators: This is the label for the model provider column in the model list control in the main dialog. -#: addon/globalPlugins/openai/maindialog.py:709 -msgid "Provider" -msgstr "Постачальник" +#. Translators: Title of the conversation management dialog +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:66 +msgid "Conversation history" +msgstr "Історія розмов" + +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:72 +msgid "Last modified (newest &first)" +msgstr "Останні зміни (спочатку &новіші)" + +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:73 +msgid "Last modified (&oldest first)" +msgstr "Останні зміни (спочатку найдавніші)" + +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:74 +msgid "&Name (A to Z)" +msgstr "&Назва (від А до Я)" + +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:75 +msgid "Na&me (Z to A)" +msgstr "&Назва (Від Я до А)" + +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:76 +msgid "&Tokens (highest first)" +msgstr "&Токени (спочатку найвищі)" + +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:77 +msgid "To&kens (lowest first)" +msgstr "То&кени (спочатку найнижчі)" + +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:78 +msgid "&Messages (most first)" +msgstr "&Повідомлення (спочатку найбільше)" + +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:79 +msgid "Mes&sages (fewest first)" +msgstr "&Повідомлення (спочатку найменше)" + +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:80 +msgid "&Format (A to Z)" +msgstr "&Формат (від А до Я)" + +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:81 +msgid "For&mat (Z to A)" +msgstr "&Формат (від Я до А)" + +#. Translators: Static label above the list of saved conversations in the Manage saved conversations dialog. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:94 +msgid "Saved conversations:" +msgstr "Збережені розмови:" + +#. Translators: Label for the conversation-history filter input. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:100 +msgid "&Filter (F1 for help):" +msgstr "&Фільтр (F1 для довідки):" + +#. Translators: List column header: saved conversation display title in Manage saved conversations. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:114 +msgid "Name" +msgstr "Назва" + +#. Translators: List column header: stored conversation format id (e.g. generic, tool output). +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:116 +msgid "Format" +msgstr "Формат" + +#. Translators: List column header: last modification timestamp of the conversation file. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:118 +msgid "Last modified" +msgstr "Востаннє змінено" + +#. Translators: List column header: number of chat messages in the saved conversation. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:120 +msgid "Messages" +msgstr "Повідомлення" + +#. Translators: List column header: total token count when usage metadata is available. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:122 +msgid "Tokens" +msgstr "Токени" + +#. Translators: List column header: primary model id used in that conversation when known. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:124 +msgid "Main model" +msgstr "Основна модель" + +#. Translators: Static label above the read-only summary of the currently selected saved conversation. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:141 +msgid "Selected conversation properties:" +msgstr "Вибрані властивості розмови:" + +#. Translators: Button that removes every saved conversation that has no messages and no draft text. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:148 +msgid "Delete &empty" +msgstr "Видалити та очистити" + +#. Translators: Button that deletes every conversation in the list after confirmation. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:151 +msgid "Delete a&ll" +msgstr "Видалити &все" + +#. Translators: Heading at the top of the F1 filter-help text in the Manage saved conversations dialog. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:319 +msgid "Filter syntax" +msgstr "Синтаксис фільтра" + +#. Translators: Help line explaining that several key:value filters can be combined with spaces in the history search box. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:322 +msgid "You can combine key:value terms separated by spaces." +msgstr "Ви можете комбінувати пари «ключ:значення», розділяючи їх пробілами." + +#. Translators: Help line explaining that plain words (without key:) only match the saved conversation title. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:324 +msgid "" +"If no key:value term is present, search is done in the conversation title " +"only." +msgstr "" +"Якщо ключ:значення відсутні, пошук виконуватиметься лише в заголовках розмов." + +#. Translators: Label before the example filter queries in the F1 help text. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:327 +msgid "Examples:" +msgstr "Приклади:" + +#. Translators: Label before the list of allowed filter field names in the F1 help text. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:336 +msgid "Supported keys:" +msgstr "Підтримувані клавіші:" + +#. Translators: Comma-separated list of filter keys as shown in F1 help; keep English key names so they match the search box. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:338 +msgid "" +"name/title, model, format/type, id, date/updated, messages/msg/msgs, tokens/" +"token, draft/draftlen, empty, has" +msgstr "" +"назва/заголовок, модель, формат/тип, ідентифікатор, дата/оновлено, " +"повідомлення/msg/msgs, токени/токен, чернетка/довжина чернетки, порожній, " +"містить" + +#. Translators: Help line listing comparison operators allowed for numeric filters; placeholder is backtick-wrapped operator list. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:341 +#, python-format +msgid "Numeric operators: %s (for messages/tokens/draft)." +msgstr "Числові оператори: %s (для повідомлень/токенів/чернеток)." + +#. Translators: Help line listing accepted true/false spellings for the empty: filter; placeholder is literal token list. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:343 +#, python-format +msgid "Boolean values: %s (for empty)." +msgstr "Логічні значення: %s (для порожнього)." + +#. Translators: Help line listing allowed values after has: in the filter box; placeholder is literal token list. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:345 +#, python-format +msgid "has values: %s." +msgstr "містить значення: %s." + +#. Translators: Title of the read-only NVDA browseable window opened with F1 for the saved-conversation filter field. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:350 +msgid "Filter help" +msgstr "Допомога з фільтрами" + +#. Translators: First line of the read-only properties text for one saved conversation: display name (placeholder is title or «Untitled conversation»). +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:478 +#, python-format +msgid "Name: %s" +msgstr "Назва: %s" + +#. Translators: Properties line: stored conversation format id (placeholder is format string, often «generic»). +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:480 +#, python-format +msgid "Format: %s" +msgstr "Формат: %s" + +#. Translators: Properties line: number of chat messages saved in this conversation. +#. Translators: Text in history navigation and context-menu messages. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:482 +#: addon\globalPlugins\AIHub\historyhandlers.py:109 +#, python-format +msgid "Messages: %d" +msgstr "Повідомлення: %d" + +#. Translators: Properties line: character count of the system prompt text. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:484 +#, python-format +msgid "System prompt length: %d characters" +msgstr "Довжина системної підказки: %d символів" + +#. Translators: Properties line: character count of the user’s draft prompt area when saved. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:486 +#, python-format +msgid "Draft prompt length: %d characters" +msgstr "Довжина підказки чернетки: %d символів" + +#. Translators: Properties line: sum of input tokens across all turns (shown only when usage was recorded). +#. Translators: Text in history navigation and context-menu messages. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:491 +#: addon\globalPlugins\AIHub\historyhandlers.py:111 +#, python-format +msgid "Total input tokens: %d" +msgstr "Загальна кількість введених токенів: %d" + +#. Translators: Properties line: sum of output tokens across all turns. +#. Translators: Text in history navigation and context-menu messages. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:493 +#: addon\globalPlugins\AIHub\historyhandlers.py:113 +#, python-format +msgid "Total output tokens: %d" +msgstr "Загальна кількість вихідних токенів: %d" + +#. Translators: Properties line: combined input plus output token total. +#. Translators: Text in history navigation and context-menu messages. +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:495 +#: addon\globalPlugins\AIHub\historyhandlers.py:115 +#: addon\globalPlugins\AIHub\propertiesutils.py:130 +#, python-format +msgid "Total tokens: %d" +msgstr "Усього токенів: %d" + +#. Translators: Property line in «Manage saved conversations» when the conversation file has no stored token totals. +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:499 +#: addon\globalPlugins\AIHub\propertiesutils.py:102 +#: addon\globalPlugins\AIHub\propertiesutils.py:123 +msgid "Token usage: unavailable" +msgstr "Використання токена: недоступне" + +#. Translators: Property line: aggregate reasoning-token count for one saved conversation. +#. Translators: Text in history navigation and context-menu messages. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:502 +#: addon\globalPlugins\AIHub\historyhandlers.py:119 +#, python-format +msgid "Total reasoning tokens: %d" +msgstr "Загальна кількість токенів міркування: %d" + +#. Translators: Property line: aggregate cached prompt-token count for one saved conversation. +#. Translators: Text in history navigation and context-menu messages. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:505 +#: addon\globalPlugins\AIHub\historyhandlers.py:122 +#, python-format +msgid "Total cached input tokens: %d" +msgstr "Загальна кількість кешованих введених токенів: %d" + +#. Translators: Property line: aggregate cache-write token count for one saved conversation. +#. Translators: Text in history navigation and context-menu messages. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:508 +#: addon\globalPlugins\AIHub\historyhandlers.py:125 +#, python-format +msgid "Total cache write tokens: %d" +msgstr "Загальна кількість токенів запису в кеш: %d" + +#. Translators: Property line: aggregate input-audio token count for one saved conversation. +#. Translators: Text in history navigation and context-menu messages. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:511 +#: addon\globalPlugins\AIHub\historyhandlers.py:128 +#, python-format +msgid "Total input audio tokens: %d" +msgstr "Загальна кількість введених аудіотокенів: %d" + +#. Translators: Property line: aggregate output-audio token count for one saved conversation. +#. Translators: Text in history navigation and context-menu messages. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:514 +#: addon\globalPlugins\AIHub\historyhandlers.py:131 +#, python-format +msgid "Total output audio tokens: %d" +msgstr "Загальна кількість токенів аудіо вводу: %d" + +#. Translators: Property line: total estimated API dollar cost for one saved conversation. +#. Translators: Text in history navigation and context-menu messages. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:517 +#: addon\globalPlugins\AIHub\historyhandlers.py:134 +#, python-format +msgid "Total cost: $%.6f" +msgstr "Загальна вартість: $%.6f" + +#. Translators: Section heading before the per-model message counts in the saved-conversation properties list. +#. Translators: Text in history navigation and context-menu messages. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:521 +#: addon\globalPlugins\AIHub\historyhandlers.py:137 +msgid "Models used:" +msgstr "Використовувані моделі:" + +#. Translators: Section heading before listing attachment paths referenced in one saved conversation. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:527 +msgid "Files (input/output):" +msgstr "Файли (введення/виведення):" + +#. Translators: Placeholder when a file entry has no stored path. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:535 +msgid "(no path)" +msgstr "(немає шляху)" + +#. Translators: One file line in the conversation properties list. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:538 +#, python-brace-format +msgid "- [{role}] {name} ({kind}, {size})" +msgstr "- [{role}] {name} ({kind}, {size})" + +#. Translators: Conversation history context menu — opens every selected chat; Enter with focus on the list. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:589 +#, python-format +msgid "Open &these %(count)d conversations (Enter)" +msgstr "Відкрити &ці %(count)d розмов (Enter)" + +#. Translators: Conversation history context menu — deletes every selected chat; Del with focus on the list. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:592 +#, python-format +msgid "&Delete %(count)d conversations (Del)" +msgstr "&Видалити %(count)d розмов (Del)" + +#. Translators: Conversation history list context menu — opens selected chat; Enter opens when the list has focus. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:598 +msgid "&Open (Enter)" +msgstr "&Відкрити (Enter)" + +#. Translators: Conversation history list context menu — rename; F2 when the list has focus. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:600 +msgid "&Rename (F2)" +msgstr "&Перейменувати (F2)" + +#. Translators: Conversation history list context menu — metadata window; Alt+Enter when the list has focus. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:602 +msgid "&Properties (Alt+Enter)" +msgstr "&Властивості (Alt+Enter)" + +#. Translators: Conversation history list — parent item for the sort-order submenu. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:614 +msgid "Sort &by" +msgstr "Сортувати &за" + +#. Translators: Conversation history list context menu — delete; Del when the list has focus. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:617 +msgid "&Delete (Del)" +msgstr "&Видалити (Del)" + +#. Translators: Message shown when properties require exactly one selected conversation. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:681 +msgid "Select only one conversation to show properties." +msgstr "Виберіть лише одну розмову, щоб переглянути її властивості." + +#. Translators: First heading line inside the read-only properties text for one saved conversation (duplicated as window title below). +#. Translators: Title of NVDA’s read-only browseable window showing every line of metadata for the selected saved conversation. +#. Translators: Text in history navigation and context-menu messages. +#. Translators: AI-Hub conversation — message history area: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:689 +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:693 +#: addon\globalPlugins\AIHub\historyhandlers.py:106 +#: addon\globalPlugins\AIHub\historyhandlers.py:141 +#: addon\globalPlugins\AIHub\historyhandlers.py:620 +msgid "Conversation properties" +msgstr "Властивості розмови" + +#. Translators: Error shown when a selected conversation cannot be loaded from disk. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:707 +msgid "Unable to load conversation." +msgstr "Не вдалося завантажити розмову." + +#. Translators: Shown when opening several chats but at least one file failed to load. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:714 +msgid "Some conversations could not be loaded." +msgstr "Деякі розмови не вдалося завантажити." + +#. Translators: Message shown when renaming requires exactly one selected conversation. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:750 +msgid "Select only one conversation to rename." +msgstr "Виберіть лише одну розмову для перейменування." + +#. Translators: Yes/No confirmation question before deleting exactly one saved conversation from the history list. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:780 +msgid "Delete this conversation? This cannot be undone." +msgstr "Видалити цю розмову? Це неможливо скасувати." + +#. Translators: Yes/No confirmation question before deleting several selected conversations; placeholder is the count. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:783 +#, python-format +msgid "Delete %d conversations? This cannot be undone." +msgstr "Видалити %d розмов? Цю дію неможливо скасувати." + +#. Translators: Title of the Yes/No confirmation dialog for deleting one or more saved conversations. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:789 +msgid "Delete conversation" +msgstr "Видалити розмову" + +#. Translators: Yes/No confirmation question before wiping the entire saved-conversation list; placeholder is how many will be removed. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:800 +#, python-format +msgid "Delete all %d conversations? This cannot be undone." +msgstr "Видалити всі розмови (%d)? Це неможливо скасувати." + +#. Translators: Title of the Yes/No confirmation dialog for deleting every saved conversation at once. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:802 +msgid "Delete all conversations" +msgstr "Видалити всі розмови" + +#. Translators: Spoken status after deleting one or many conversations. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:829 +#, python-format +msgid "Deleted %d conversation." +msgstr "Видалено %d розмову." + +#. Translators: AI-Hub conversation history dialog: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:832 +#, python-format +msgid "Deleted %d conversations." +msgstr "Видалено %d розмов." + +#. Translators: Spoken message when no empty conversations match delete-empty action. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:842 +msgid "No empty conversations to delete." +msgstr "Немає порожніх розмов для видалення." + +#. Translators: AI-Hub conversation history dialog: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:848 +#, python-format +msgid "Delete all %d empty conversations? This cannot be undone." +msgstr "Видалити всі порожні розмови (%d)? Це неможливо скасувати." + +#. Translators: AI-Hub conversation history dialog: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:850 +msgid "Delete empty conversations" +msgstr "Видалити порожні розмови" + +#. Translators: Fallback message when no API key is configured. +#: addon\globalPlugins\AIHub\conversations_manager_dialog.py:871 +msgid "No API key provided" +msgstr "Ключ API не надано" + +#. Translators: Text in model/account selection UI and model context menus. +#: addon\globalPlugins\AIHub\filehandlers.py:180 +#: addon\globalPlugins\AIHub\modelhandlers_impl.py:235 +msgid "image" +msgstr "зображення" + +#: addon\globalPlugins\AIHub\filehandlers.py:186 +msgid "document" +msgstr "документ" + +#. Translators: Text in attachment/file handling messages. +#: addon\globalPlugins\AIHub\filehandlers.py:194 +msgid "selected provider" +msgstr "обраний постачальник" + +#: addon\globalPlugins\AIHub\filehandlers.py:201 +#, python-brace-format +msgid "" +"The following attachments are not supported by {provider} and cannot be " +"sent:\n" +"{details}" +msgstr "" +"Наступні вкладення не підтримуються {provider} і не можуть бути надіслані:\n" +"{details}" + +#. Translators: AI-Hub conversation — attachments and files: entry in a right-click or application context menu. +#: addon\globalPlugins\AIHub\filehandlers.py:239 +msgid "Describe the images in as much detail as possible." +msgstr "Описати зображення якомога детальніше." + +#. Translators: AI-Hub conversation — attachments and files: entry in a right-click or application context menu. +#: addon\globalPlugins\AIHub\filehandlers.py:245 +msgid "From f&ile path..." +msgstr "&Зі шляху до файлу..." + +#. Translators: AI-Hub conversation — attachments and files: entry in a right-click or application context menu. +#: addon\globalPlugins\AIHub\filehandlers.py:249 +msgid "From &URL..." +msgstr "З &URL..." + +#. Translators: AI-Hub conversation — attachments and files: entry in a right-click or application context menu. +#: addon\globalPlugins\AIHub\filehandlers.py:253 +msgid "From &screenshot" +msgstr "Зі &знімка екрана" + +#. Translators: AI-Hub conversation — attachments and files: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\filehandlers.py:272 +msgid "&Remove selected files" +msgstr "&Видалити вибрані файли" + +#. Translators: AI-Hub conversation — attachments and files: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\filehandlers.py:276 +msgid "Remove &all files" +msgstr "Видалити &всі файли" + +#. Translators: AI-Hub conversation — attachments and files: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\filehandlers.py:281 +msgid "Add from f&ile path..." +msgstr "&Додати зі шляху до файлу..." + +#. Translators: AI-Hub conversation — attachments and files: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\filehandlers.py:285 +msgid "Add from &URL..." +msgstr "Додати з &URL..." + +#. Translators: Text in attachment/file handling messages. +#: addon\globalPlugins\AIHub\filehandlers.py:391 +msgid "Select files" +msgstr "Виберіть файли" + +#. Translators: Text in attachment/file handling messages. +#: addon\globalPlugins\AIHub\filehandlers.py:394 +msgid "Supported files" +msgstr "Підтримувані файли" + +#. Translators: Error body when the user adds a local file that is already in the conversation’s attachment list (placeholder is the path). +#: addon\globalPlugins\AIHub\filehandlers.py:419 +#, python-format +msgid "" +"The following file has already been added and will be ignored:\n" +"%s" +msgstr "" +"Наступний файл уже додано та буде проігноровано:\n" +"%s" + +#. Translators: Warning body listing attachment paths skipped because the current model’s provider cannot use them (newline-separated list). +#: addon\globalPlugins\AIHub\filehandlers.py:426 +#, python-format +msgid "" +"Some files are not supported by the selected provider and were ignored:\n" +"%s" +msgstr "" +"Деякі файли не підтримуються вибраним постачальником і були проігноровані:\n" +"%s" + +#. Translators: Title of the warning dialog when some dropped or chosen files were skipped as unsupported. +#: addon\globalPlugins\AIHub\filehandlers.py:428 +msgid "Unsupported files" +msgstr "Непідтримувані файли" + +#. Translators: Text in attachment/file handling messages. +#: addon\globalPlugins\AIHub\filehandlers.py:442 +msgid "Enter file URL" +msgstr "Введіть URL файлу" + +#. Translators: Error body when the user entered an attachment URL that does not match the expected URL pattern. +#: addon\globalPlugins\AIHub\filehandlers.py:454 +msgid "Invalid URL, bad format." +msgstr "Недійсна URL-адреса, неправильний формат." + +#. Translators: Error message when adding an attachment URL that fails security or protocol checks in the conversation window. +#: addon\globalPlugins\AIHub\filehandlers.py:464 +msgid "This URL cannot be opened (unsupported scheme or blocked address)." +msgstr "" +"Цю URL неможливо відкрити (непідтримувана схема або заблокована адреса)." + +#. Translators: Title of the error dialog when the attachment URL failed security or protocol validation. +#: addon\globalPlugins\AIHub\filehandlers.py:466 +msgid "Invalid URL" +msgstr "Недійсний URL" + +#. Translators: Error body when a fetched URL’s content type is not allowed for the current provider’s models. +#: addon\globalPlugins\AIHub\filehandlers.py:501 +msgid "This URL file type is not supported by the selected provider." +msgstr "Цей тип файлу URL не підтримується вибраним постачальником." + +#. Translators: Title of the error dialog when the URL attachment’s MIME type is rejected. +#: addon\globalPlugins\AIHub\filehandlers.py:503 +msgid "Unsupported file type" +msgstr "Непідтримуваний тип файлу" + +#. Translators: Error body when NVDA could not read image width/height from a URL attachment (placeholder is the technical error). +#: addon\globalPlugins\AIHub\filehandlers.py:514 +#, python-format +msgid "Failed to get image dimensions. %s" +msgstr "Не вдалося отримати розміри зображення. %s" + +#. Translators: AI-Hub conversation — attachments and files: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\filehandlers.py:530 +#, python-format +msgid "HTTP error %s." +msgstr "Помилка HTTP %s." + +#. Translators: AI-Hub conversation — attachments and files: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\filehandlers.py:541 +msgid "Screenshot reception disabled" +msgstr "Отримання знімків екрана вимкнено" + +#. Translators: AI-Hub conversation — attachments and files: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\filehandlers.py:545 +msgid "Screenshot reception enabled" +msgstr "Отримання знімків екрана увімкнено" + +#. Translators: AI-Hub conversation — message history area: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\historyhandlers.py:85 +msgid "No message selected." +msgstr "Повідомлення не вибрано." + +#. Translators: AI-Hub conversation — message history area: brief status feedback (speech/braille), not a full dialog. +#. Translators: AI-Hub conversation — message history area: entry in a context menu or submenu. +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\historyhandlers.py:90 +#: addon\globalPlugins\AIHub\historyhandlers.py:616 +#: addon\globalPlugins\AIHub\propertiesutils.py:184 +msgid "Message properties" +msgstr "Властивості повідомлення" + +#. Translators: AI-Hub conversation — message history area: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\historyhandlers.py:100 +msgid "No conversation messages yet." +msgstr "Повідомлень у розмові ще немає." + +#. Translators: AI-Hub conversation — message history area: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\historyhandlers.py:214 +msgid "" +"Some files were skipped because they are not supported by the selected " +"provider." +msgstr "" +"Деякі файли було пропущено, оскільки вони не підтримуються вибраним " +"постачальником." + +#. Translators: AI-Hub conversation — message history area: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\historyhandlers.py:221 +#, python-format +msgid "%d file(s) attached." +msgstr "Додано %d файл(ів)." + +#. Translators: AI-Hub conversation — message history area: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\historyhandlers.py:258 +msgid "URL attached." +msgstr "Посилання додано." + +#. Translators: AI-Hub conversation — message history area: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\historyhandlers.py:363 +#: addon\globalPlugins\AIHub\historyhandlers.py:377 +msgid "No thinking block in the current message." +msgstr "У цьому повідомленні немає блоку для роздумів." + +#. Translators: AI-Hub conversation — message history area: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\historyhandlers.py:368 +msgid "Moved to end of thinking block." +msgstr "Переміщено в кінець блоку міркування." + +#. Translators: AI-Hub conversation — message history area: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\historyhandlers.py:381 +msgid "Moved to start of thinking block." +msgstr "Переміщено на початок блоку міркування." + +#. Translators: AI-Hub conversation — message history area: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\historyhandlers.py:395 +msgid "Moved to beginning of content." +msgstr "Перенесено на початок вмісту." + +#. Translators: AI-Hub conversation — message history area: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\historyhandlers.py:410 +msgid "Moved to end of content." +msgstr "Переміщено в кінець вмісту." + +#. Translators: AI-Hub conversation — message history area: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\historyhandlers.py:421 +#, python-format +msgid "Response copied to system: %s" +msgstr "Відповідь скопійовано до system: %s" + +#. Translators: AI-Hub conversation — message history area: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\historyhandlers.py:431 +msgid "Copied to prompt" +msgstr "Скопійовано до запиту" + +#. Translators: Text in history navigation and context-menu messages. +#: addon\globalPlugins\AIHub\historyhandlers.py:437 +msgid "Copy" +msgstr "Копіювати" + +#. Translators: Text in history navigation and context-menu messages. +#: addon\globalPlugins\AIHub\historyhandlers.py:446 +msgid "Copy prompt" +msgstr "Копіювати запит" + +#. Translators: Text in history navigation and context-menu messages. +#: addon\globalPlugins\AIHub\historyhandlers.py:451 +msgid "Copy assistant message" +msgstr "Копіювати повідомлення помічника" + +#: addon\globalPlugins\AIHub\historyhandlers.py:451 +msgid "Copy response" +msgstr "Копіювати відповідь" + +#. Translators: AI-Hub conversation — message history area: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\historyhandlers.py:456 +msgid "as formatted HTML" +msgstr "як форматований HTML" + +#. Translators: AI-Hub conversation — message history area: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\historyhandlers.py:488 +msgid "Block deleted" +msgstr "Блокування видалено" + +#. Translators: Text in history navigation and context-menu messages. +#: addon\globalPlugins\AIHub\historyhandlers.py:523 +msgid "Save history" +msgstr "Зберегти історію" + +#. Translators: Text in history navigation and context-menu messages. +#: addon\globalPlugins\AIHub\historyhandlers.py:526 +msgid "Text file" +msgstr "Текстовий файл" + +#. Translators: AI-Hub conversation — message history area: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\historyhandlers.py:538 +msgid "History saved" +msgstr "Історію збережено" + +#. Translators: AI-Hub conversation — message history area: entry in a right-click or application context menu. +#: addon\globalPlugins\AIHub\historyhandlers.py:544 +msgid "Reset to default" +msgstr "Скинути до початкових" + +#. Translators: AI-Hub conversation — message history area: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\historyhandlers.py:562 +msgid "&Play / Pause audio" +msgstr "&Відтворити / Призупинити аудіо" + +#. Translators: AI-Hub conversation — message history area: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\historyhandlers.py:566 +msgid "S&top audio" +msgstr "З&упинити аудіо" + +#. Translators: AI-Hub conversation — message history area: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\historyhandlers.py:571 +msgid "Show message in web view as formatted HTML" +msgstr "Показати повідомлення у веб-перегляді як форматований HTML" + +#. Translators: AI-Hub conversation — message history area: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\historyhandlers.py:575 +msgid "Show message in web view as HTML source" +msgstr "Показати повідомлення у веб-перегляді як джерело HTML" + +#. Translators: AI-Hub conversation — message history area: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\historyhandlers.py:579 +msgid "Copy message as plain text" +msgstr "Копіювати повідомлення як звичайний текст" + +#. Translators: AI-Hub conversation — message history area: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\historyhandlers.py:583 +msgid "Copy message as formatted HTML" +msgstr "Копіювати повідомлення як форматований HTML" + +#. Translators: AI-Hub conversation — message history area: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\historyhandlers.py:587 +msgid "Hide thinking in history" +msgstr "Приховати «Міркування в історії»" + +#: addon\globalPlugins\AIHub\historyhandlers.py:587 +msgid "Show thinking in history" +msgstr "Показати міркування в історії" + +#. Translators: AI-Hub conversation — message history area: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\historyhandlers.py:592 +msgid "Copy response to system" +msgstr "Копіювати відповідь до system" + +#. Translators: AI-Hub conversation — message history area: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\historyhandlers.py:596 +msgid "Copy prompt to prompt" +msgstr "Копіювати запит до запиту" + +#. Translators: AI-Hub conversation — message history area: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\historyhandlers.py:600 +msgid "Delete block" +msgstr "Видалити блок" + +#. Translators: AI-Hub conversation — message history area: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\historyhandlers.py:604 +msgid "Save history as text file" +msgstr "Зберегти історію у текстовий файл" + +#. Translators: AI-Hub conversation — message history area: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\historyhandlers.py:624 +msgid "Say message" +msgstr "Промовити повідомлення" + +#. Translators: AI-Hub conversation — message history area: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\historyhandlers.py:628 +msgid "Move to previous message" +msgstr "Перейти до попереднього повідомлення" + +#. Translators: AI-Hub conversation — message history area: entry in a right-click or application context menu. +#: addon\globalPlugins\AIHub\historyhandlers.py:632 +msgid "Move to next message" +msgstr "Перейти до наступного повідомлення" + +#. Translators: AI-Hub conversation — message history area: entry in a right-click or application context menu. +#: addon\globalPlugins\AIHub\historyhandlers.py:636 +msgid "Move to start of thinking block" +msgstr "Перейти до початку блоку міркування" + +#. Translators: AI-Hub conversation — message history area: entry in a right-click or application context menu. +#: addon\globalPlugins\AIHub\historyhandlers.py:640 +msgid "Move to end of thinking block" +msgstr "Перейти вкінець ьблоку міркування" + +#. Translators: AI-Hub conversation — message history area: entry in a right-click or application context menu. +#: addon\globalPlugins\AIHub\historyhandlers.py:644 +msgid "Move to beginning of content" +msgstr "Перейти до початку вмісту" + +#. Translators: AI-Hub conversation — message history area: entry in a right-click or application context menu. +#: addon\globalPlugins\AIHub\historyhandlers.py:648 +msgid "Move to end of content" +msgstr "Перейти вкінець вмісту" + +#. Translators: AI-Hub conversation — message history area: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\historyhandlers.py:659 +msgid "Dictate" +msgstr "Диктуйте" + +#. Translators: AI-Hub conversation — message history area: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\historyhandlers.py:664 +msgid "Attach image from f&ile..." +msgstr "Додати зображення з &файлу..." + +#. Translators: AI-Hub conversation — message history area: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\historyhandlers.py:668 +msgid "Attach image from &URL..." +msgstr "Додати зображення з &URL..." + +#. Translators: AI-Hub conversation — message history area: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\historyhandlers.py:672 +msgid "Attach image from &screenshot" +msgstr "Додати зображення зі &знімка екрана" + +#. Translators: AI-Hub conversation — message history area: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\historyhandlers.py:676 +msgid "Attach audio from f&ile..." +msgstr "Додати аудіо з &файлу..." + +#. Translators: AI-Hub conversation — message history area: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\historyhandlers.py:681 +msgid "Paste (file or text)" +msgstr "Вставити (файл або текст)" + +#. Translators: AI-Hub conversation — message history area: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\historyhandlers.py:687 +msgid "Insert previous prompt" +msgstr "Вставити попередній запит" + +#. Translators: Text in model labels and capability descriptions. +#: addon\globalPlugins\AIHub\model.py:93 addon\globalPlugins\AIHub\model.py:113 +#: addon\globalPlugins\AIHub\model.py:121 +#: addon\globalPlugins\AIHub\model.py:132 +msgid "Low" +msgstr "Низький" + +#. Translators: Text in model labels and capability descriptions. +#: addon\globalPlugins\AIHub\model.py:95 addon\globalPlugins\AIHub\model.py:123 +#: addon\globalPlugins\AIHub\model.py:134 +msgid "Medium" +msgstr "Середній" + +#. Translators: Text in model labels and capability descriptions. +#: addon\globalPlugins\AIHub\model.py:97 addon\globalPlugins\AIHub\model.py:115 +#: addon\globalPlugins\AIHub\model.py:125 +#: addon\globalPlugins\AIHub\model.py:136 +msgid "High" +msgstr "Високий" + +#. Translators: Text in model labels and capability descriptions. +#: addon\globalPlugins\AIHub\model.py:99 +msgid "Extra high" +msgstr "Дуже високий" + +#. Translators: Text in model labels and capability descriptions. +#: addon\globalPlugins\AIHub\model.py:101 +msgid "Maximum" +msgstr "Максимальний" + +#. Translators: Text in model labels and capability descriptions. +#: addon\globalPlugins\AIHub\model.py:130 +msgid "Minimal" +msgstr "Мінімальний" + +#. Translators: Text in model labels and capability descriptions. +#: addon\globalPlugins\AIHub\model.py:143 +msgid "preview: not yet suited for production traffic" +msgstr "попередній перегляд: ще не підходить для робочого трафіку" + +#. Translators: Text in model labels and capability descriptions. +#: addon\globalPlugins\AIHub\model.py:161 +#, python-brace-format +msgid "provider: {provider}" +msgstr "постачальник: {provider}" + +#. Translators: Text in model labels and capability descriptions. +#: addon\globalPlugins\AIHub\model.py:165 +#, python-brace-format +msgid "ID: {id}" +msgstr "ID: {id}" + +#. Translators: Text in model labels and capability descriptions. +#: addon\globalPlugins\AIHub\model.py:168 +#, python-brace-format +msgid "context window: {contextWindow}" +msgstr "контекстне вікно: {contextWindow}" + +#. Translators: Text in model labels and capability descriptions. +#: addon\globalPlugins\AIHub\model.py:171 +#, python-brace-format +msgid "max output tokens: {maxOutputToken}" +msgstr "максимальна кількість вихідних токенів: {maxOutputToken}" + +#. Translators: AI-Hub model details (browseable HTML): label, section heading, capability tag, or table cell in the generated report. +#: addon\globalPlugins\AIHub\modeldetailsutils.py:83 +msgid "Yes" +msgstr "Так" + +#: addon\globalPlugins\AIHub\modeldetailsutils.py:83 +msgid "No" +msgstr "Ні" + +#. Translators: AI-Hub model details (browseable HTML): label, section heading, capability tag, or table cell in the generated report. +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\modeldetailsutils.py:119 +#: addon\globalPlugins\AIHub\propertiesutils.py:186 +msgid "Overview" +msgstr "Огляд" + +#. Translators: AI-Hub model details (browseable HTML): label, section heading, capability tag, or table cell in the generated report. +#. Translators: NVDA Preferences — AI-Hub category: title of a bordered settings group. +#: addon\globalPlugins\AIHub\modeldetailsutils.py:122 +#: addon\globalPlugins\AIHub\settings_dialog.py:172 +msgid "Provider" +msgstr "Постачальник" + +#. Translators: AI-Hub model details (browseable HTML): label, section heading, capability tag, or table cell in the generated report. +#: addon\globalPlugins\AIHub\modeldetailsutils.py:124 +msgid "Context window" +msgstr "Контекстне вікно" + +#: addon\globalPlugins\AIHub\modeldetailsutils.py:124 +#, python-format +msgid "%s tokens" +msgstr "%s токенів" + +#. Translators: AI-Hub model details (browseable HTML): label, section heading, capability tag, or table cell in the generated report. +#: addon\globalPlugins\AIHub\modeldetailsutils.py:126 +msgid "Max output tokens" +msgstr "Максимум токенів виводу" + +#. Translators: AI-Hub model details (browseable HTML): label, section heading, capability tag, or table cell in the generated report. +#: addon\globalPlugins\AIHub\modeldetailsutils.py:129 +msgid "Created" +msgstr "Створено" + +#. Translators: AI-Hub model details (browseable HTML): label, section heading, capability tag, or table cell in the generated report. +#: addon\globalPlugins\AIHub\modeldetailsutils.py:131 +msgid "Max temperature" +msgstr "Максимальна температура" + +#. Translators: AI-Hub model details (browseable HTML): label, section heading, capability tag, or table cell in the generated report. +#: addon\globalPlugins\AIHub\modeldetailsutils.py:133 +msgid "Default temperature" +msgstr "Початкова температура" + +#. Translators: AI-Hub model details (browseable HTML): label, section heading, capability tag, or table cell in the generated report. +#: addon\globalPlugins\AIHub\modeldetailsutils.py:137 +msgid "Text" +msgstr "Текст" + +#. Translators: AI-Hub model details (browseable HTML): label, section heading, capability tag, or table cell in the generated report. +#: addon\globalPlugins\AIHub\modeldetailsutils.py:140 +msgid "Image input" +msgstr "Введення зображення" + +#. Translators: AI-Hub model details (browseable HTML): label, section heading, capability tag, or table cell in the generated report. +#: addon\globalPlugins\AIHub\modeldetailsutils.py:143 +msgid "Audio input" +msgstr "Аудіо вхід" + +#. Translators: AI-Hub model details (browseable HTML): label, section heading, capability tag, or table cell in the generated report. +#: addon\globalPlugins\AIHub\modeldetailsutils.py:146 +msgid "Audio output" +msgstr "Аудіовихід" + +#. Translators: AI-Hub model details (browseable HTML): label, section heading, capability tag, or table cell in the generated report. +#: addon\globalPlugins\AIHub\modeldetailsutils.py:149 +msgid "Reasoning" +msgstr "Міркування" + +#. Translators: AI-Hub model details (browseable HTML): label, section heading, capability tag, or table cell in the generated report. +#: addon\globalPlugins\AIHub\modeldetailsutils.py:152 +msgid "Web search" +msgstr "Веб пошук" + +#. Translators: AI-Hub model details (browseable HTML): label, section heading, capability tag, or table cell in the generated report. +#: addon\globalPlugins\AIHub\modeldetailsutils.py:156 +msgid "Capabilities and parameters" +msgstr "Можливості та параметри" + +#. Translators: AI-Hub model details (browseable HTML): label, section heading, capability tag, or table cell in the generated report. +#: addon\globalPlugins\AIHub\modeldetailsutils.py:159 +msgid "Capabilities" +msgstr "Можливості" + +#. Translators: AI-Hub model details (browseable HTML): label, section heading, capability tag, or table cell in the generated report. +#: addon\globalPlugins\AIHub\modeldetailsutils.py:162 +msgid "Supported parameters" +msgstr "Підтримувані параметри" + +#. Translators: AI-Hub model details (browseable HTML): label, section heading, capability tag, or table cell in the generated report. +#: addon\globalPlugins\AIHub\modeldetailsutils.py:164 +msgid "none" +msgstr "немає" + +#. Translators: AI-Hub model details (browseable HTML): label, section heading, capability tag, or table cell in the generated report. +#: addon\globalPlugins\AIHub\modeldetailsutils.py:172 +msgid "Description" +msgstr "Опис" + +#. Translators: AI-Hub model details (browseable HTML): label, section heading, capability tag, or table cell in the generated report. +#: addon\globalPlugins\AIHub\modeldetailsutils.py:180 +msgid "Pricing" +msgstr "Ціноутворення" + +#. Translators: AI-Hub model details (browseable HTML): label, section heading, capability tag, or table cell in the generated report. +#: addon\globalPlugins\AIHub\modeldetailsutils.py:185 +msgid "Input tokens" +msgstr "Токени введення" + +#. Translators: AI-Hub model details (browseable HTML): label, section heading, capability tag, or table cell in the generated report. +#: addon\globalPlugins\AIHub\modeldetailsutils.py:187 +msgid "Output tokens" +msgstr "Токени виводу" + +#. Translators: AI-Hub model details (browseable HTML): label, section heading, capability tag, or table cell in the generated report. +#: addon\globalPlugins\AIHub\modeldetailsutils.py:189 +msgid "Input cache read" +msgstr "Читання кешу Введення" + +#. Translators: AI-Hub model details (browseable HTML): label, section heading, capability tag, or table cell in the generated report. +#: addon\globalPlugins\AIHub\modeldetailsutils.py:191 +msgid "Input cache write" +msgstr "Запис у кеш введення" + +#. Translators: AI-Hub model details (browseable HTML): label, section heading, capability tag, or table cell in the generated report. +#: addon\globalPlugins\AIHub\modeldetailsutils.py:193 +msgid "Audio tokens" +msgstr "Аудіо токени" + +#. Translators: AI-Hub model details (browseable HTML): label, section heading, capability tag, or table cell in the generated report. +#: addon\globalPlugins\AIHub\modeldetailsutils.py:195 +msgid "Image" +msgstr "Зображення" + +#. Translators: AI-Hub model details (browseable HTML): label, section heading, capability tag, or table cell in the generated report. +#: addon\globalPlugins\AIHub\modeldetailsutils.py:197 +msgid "Request" +msgstr "Запит" + +#. Translators: AI-Hub model details (browseable HTML): label, section heading, capability tag, or table cell in the generated report. +#: addon\globalPlugins\AIHub\modeldetailsutils.py:224 +msgid "Additional information" +msgstr "Додаткова інформація" + +#. Translators: Error message shown when no account is selected. +#: addon\globalPlugins\AIHub\modelhandlers_impl.py:99 +msgid "Please select an account." +msgstr "Виберіть обліковий запис." + +#. Translators: Error message shown when no model is selected. +#: addon\globalPlugins\AIHub\modelhandlers_impl.py:181 +msgid "Please select a model." +msgstr "Будь ласка, виберіть модель." + +#. Translators: Capability tags shown in model list labels. +#: addon\globalPlugins\AIHub\modelhandlers_impl.py:232 +msgid "text" +msgstr "текст" + +#. Translators: Text in model/account selection UI and model context menus. +#: addon\globalPlugins\AIHub\modelhandlers_impl.py:238 +msgid "audio" +msgstr "аудіо" + +#. Translators: Text in model/account selection UI and model context menus. +#: addon\globalPlugins\AIHub\modelhandlers_impl.py:241 +msgid "reasoning" +msgstr "міркування" + +#. Translators: Text in model/account selection UI and model context menus. +#: addon\globalPlugins\AIHub\modelhandlers_impl.py:244 +msgid "web search" +msgstr "веб пошук" + +#. Translators: Title for the browseable model details view. +#: addon\globalPlugins\AIHub\modelhandlers_impl.py:469 +msgid "Model details" +msgstr "Деталі моделі" + +#. Translators: Context-menu item for opening model details. +#: addon\globalPlugins\AIHub\modelhandlers_impl.py:526 +msgid "Show model &details" +msgstr "Показати деталі &моделі" + +#. Translators: Context-menu item labels to favorite/unfavorite a model. +#: addon\globalPlugins\AIHub\modelhandlers_impl.py:531 +msgid "Add to &favorites" +msgstr "Додати в &обране" + +#: addon\globalPlugins\AIHub\modelhandlers_impl.py:531 +msgid "Remove from &favorites" +msgstr "Видалити з &обраного" + +#. Translators: Text in model/account selection UI and model context menus. +#: addon\globalPlugins\AIHub\modelhandlers_impl.py:540 +msgid "Most recent first" +msgstr "Спочатку найновіші" + +#. Translators: Text in model/account selection UI and model context menus. +#: addon\globalPlugins\AIHub\modelhandlers_impl.py:542 +msgid "Oldest first" +msgstr "Спочатку найстаріші" + +#. Translators: Text in model/account selection UI and model context menus. +#: addon\globalPlugins\AIHub\modelhandlers_impl.py:544 +msgid "Name (A–Z)" +msgstr "Назва (За зростанням)" + +#. Translators: Text in model/account selection UI and model context menus. +#: addon\globalPlugins\AIHub\modelhandlers_impl.py:546 +msgid "Name (Z–A)" +msgstr "Назва (За спаданням)" + +#. Translators: Text in model/account selection UI and model context menus. +#: addon\globalPlugins\AIHub\modelhandlers_impl.py:548 +msgid "Context window (largest first)" +msgstr "Контекстне вікно (спочатку найбільше)" + +#. Translators: Text in model/account selection UI and model context menus. +#: addon\globalPlugins\AIHub\modelhandlers_impl.py:550 +msgid "Context window (smallest first)" +msgstr "Контекстне вікно (спочатку найменше)" + +#. Translators: Text in model/account selection UI and model context menus. +#: addon\globalPlugins\AIHub\modelhandlers_impl.py:552 +msgid "Max output tokens (highest first)" +msgstr "Макс токенів виводу (спочатку найвищий)" + +#. Translators: AI-Hub conversation — model list: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\modelhandlers_impl.py:554 +msgid "Max output tokens (lowest first)" +msgstr "Макс токенів виводу (спочатку найнижчий)" + +#. Translators: Submenu label for model sort options. +#: addon\globalPlugins\AIHub\modelhandlers_impl.py:564 +msgid "&Sort by" +msgstr "&Сортувати за" + +#. Translators: Context-menu item to refresh provider model list. +#: addon\globalPlugins\AIHub\modelhandlers_impl.py:568 +msgid "&Refresh model list" +msgstr "&Оновити список моделей" + +#: addon\globalPlugins\AIHub\plugin_mixins.py:29 +msgid "" +"No API key provided for any provider, please provide at least one API key in " +"the settings dialog" +msgstr "" +"Ключ API не надано для жодного постачальника, будь ласка, надайте принаймні " +"один ключ API у діалозі налаштувань" + +#. Translators: Text in AI-Hub menu items and script prompts. +#: addon\globalPlugins\AIHub\plugin_mixins.py:42 +msgid "Docu&mentation" +msgstr "&Документація" + +#: addon\globalPlugins\AIHub\plugin_mixins.py:42 +msgid "Open the documentation of this addon" +msgstr "Відкрити документацію цього додатка" + +#. Translators: AI-Hub NVDA menu / global scripts: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\plugin_mixins.py:44 +msgid "API &accounts..." +msgstr "&Облікові записи API..." + +#: addon\globalPlugins\AIHub\plugin_mixins.py:44 +msgid "Manage API keys and provider accounts" +msgstr "Керування ключами API та обліковими записами постачальників" + +#. Translators: AI-Hub NVDA menu / global scripts: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\plugin_mixins.py:46 +msgid "&Conversation..." +msgstr "&Розмова..." + +#. Translators: AI-Hub NVDA menu / global scripts: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\plugin_mixins.py:48 +msgid "Conversation &history..." +msgstr "&Історія розмов..." + +#. Translators: AI-Hub NVDA menu / global scripts: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\plugin_mixins.py:57 +msgid "Git&Hub repository" +msgstr "Репозиторій Git&Hub" + +#: addon\globalPlugins\AIHub\plugin_mixins.py:57 +msgid "Open the GitHub repository of this addon" +msgstr "Відкрити репозиторій GitHub цього додатка" + +#. Translators: AI-Hub NVDA menu / global scripts: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\plugin_mixins.py:63 +msgid "BasiliskLLM" +msgstr "BasiliskLLM" + +#: addon\globalPlugins\AIHub\plugin_mixins.py:63 +msgid "Open the BasiliskLLM website" +msgstr "Відкрити веб-сайт BasiliskLLM" + +#. Translators: Text in AI-Hub menu items and script prompts. +#: addon\globalPlugins\AIHub\plugin_mixins.py:70 +#, python-brace-format +msgid "AI &Hub {addon_version}" +msgstr "AI &Hub {addon_version}" + +#. Translators: Error dialog body when opening AI-Hub without any configured API account (menu path included for the user). +#: addon\globalPlugins\AIHub\plugin_mixins.py:109 +msgid "" +"No account is configured yet. Use API accounts from the AI Hub menu or NVDA " +"Preferences → AI-Hub." +msgstr "" +"Обліковий запис ще не налаштовано. Використовуйте облікові записи API з меню " +"AI Hub або Налаштувань NVDA → AI-Hub." + +#. Translators: AI-Hub NVDA menu / global scripts: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\plugin_mixins.py:215 +msgid "Image added to an existing session" +msgstr "Зображення додано до існуючого сеансу" + +#. Translators: AI-Hub NVDA menu / global scripts: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\plugin_mixins.py:256 +msgid "Failed to capture screenshot" +msgstr "Не вдалося зробити знімок екрана" + +#. Translators: AI-Hub NVDA menu / global scripts: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\plugin_mixins.py:258 +#, python-format +msgid "Screenshot %s" +msgstr "Знімок екрана %s" + +#. Translators: AI-Hub NVDA menu / global scripts: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\plugin_mixins.py:277 +msgid "Failed to capture object region" +msgstr "Не вдалося захопити область об’єкта" + +#. Translators: AI-Hub NVDA menu / global scripts: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\plugin_mixins.py:279 +#, python-format +msgid "Navigator Object %s" +msgstr "Об'єкт навігатора %s" + +#. Translators: AI-Hub NVDA menu / global scripts: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\plugin_mixins.py:347 +#: addon\globalPlugins\AIHub\plugin_mixins.py:372 +msgid "Recording question (direct audio)" +msgstr "Запитання у форматі аудіозапису (пряме аудіо)" + +#. Translators: AI-Hub NVDA menu / global scripts: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\plugin_mixins.py:356 +#: addon\globalPlugins\AIHub\plugin_mixins.py:385 +msgid "Recording question" +msgstr "Запис запитання" + +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\propertiesutils.py:126 +#, python-format +msgid "Input tokens: %d" +msgstr "Токени введення: %d" + +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\propertiesutils.py:128 +#, python-format +msgid "Output tokens: %d" +msgstr "Токени виводу: %d" + +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\propertiesutils.py:134 +#, python-format +msgid "Reasoning tokens: %d" +msgstr "Токени міркування: %d" + +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\propertiesutils.py:137 +#, python-format +msgid "Cached input tokens: %d" +msgstr "Кешовані токени введення: %d" + +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\propertiesutils.py:140 +#, python-format +msgid "Cache write tokens: %d" +msgstr "Токени запису кешу: %d" + +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\propertiesutils.py:143 +#, python-format +msgid "Input audio tokens: %d" +msgstr "Токени для аудіо введення: %d" + +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\propertiesutils.py:146 +#, python-format +msgid "Output audio tokens: %d" +msgstr "Токени для аудіо виводу: %d" + +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\propertiesutils.py:149 +#, python-format +msgid "Cost: $%.6f" +msgstr "Вартість: $%.6f" + +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\propertiesutils.py:189 +msgid "Model" +msgstr "Модель" + +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\propertiesutils.py:191 +msgid "Prompt characters" +msgstr "Символи підказки" + +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\propertiesutils.py:193 +msgid "Response characters" +msgstr "Символи відповіді" + +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\propertiesutils.py:195 +msgid "Files attached" +msgstr "Додані файли" + +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\propertiesutils.py:197 +msgid "Audio files attached" +msgstr "Додані аудіо файли" + +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\propertiesutils.py:201 +msgid "Max tokens" +msgstr "Максимум токенів" + +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\propertiesutils.py:204 +msgid "Temperature" +msgstr "Температура" + +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\propertiesutils.py:207 +msgid "Top P" +msgstr "Верхнє P" + +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\propertiesutils.py:210 +msgid "Seed" +msgstr "Сід" + +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\propertiesutils.py:213 +msgid "Top K" +msgstr "Верхнє K" + +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\propertiesutils.py:219 +msgid "Stop sequences" +msgstr "Зупинити послідовності" + +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\propertiesutils.py:222 +msgid "Frequency penalty" +msgstr "Штраф за частоту" + +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\propertiesutils.py:225 +msgid "Presence penalty" +msgstr "Штраф за повторюваність" + +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\propertiesutils.py:229 +msgid "Token usage" +msgstr "Використання токенів" + +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\propertiesutils.py:242 +msgid "Elapsed time" +msgstr "Час, що минув" + +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\propertiesutils.py:246 +msgid "Time to request sent" +msgstr "Час відправки запиту" + +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\propertiesutils.py:250 +msgid "Time to first token" +msgstr "Час до отримання першого токена" + +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\propertiesutils.py:254 +msgid "Request sent to end" +msgstr "Запит надіслано" + +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\propertiesutils.py:258 +msgid "Generation duration" +msgstr "Тривалість генерації" + +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\propertiesutils.py:262 +#: addon\globalPlugins\AIHub\propertiesutils.py:274 +msgid "Mean output speed" +msgstr "Середня швидкість виводу" + +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\propertiesutils.py:266 +#: addon\globalPlugins\AIHub\propertiesutils.py:277 +msgid "Mean total speed" +msgstr "Середня загальна швидкість" + +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\propertiesutils.py:280 +msgid "Timing and throughput" +msgstr "Час та пропускна здатність" + +#. Translators: Text in message/conversation properties output. +#: addon\globalPlugins\AIHub\propertiesutils.py:287 +msgid "Reasoning text" +msgstr "Текст міркування" + +#. Translators: Text in recording thread status and error messages. +#: addon\globalPlugins\AIHub\recordthread.py:91 +msgid "Transcription copied to clipboard" +msgstr "Транскрипцію скопійовано в буфер обміну" + +#. Translators: Text in recording thread status and error messages. +#: addon\globalPlugins\AIHub\recordthread.py:212 +msgid "Transcribing..." +msgstr "Транскрибування..." + +#. Translators: AI-Hub — global dictation recording: brief status feedback (speech/braille), not a full dialog. +#: addon\globalPlugins\AIHub\recordthread.py:361 +msgid "Audio file ready for direct input" +msgstr "Аудіофайл готовий для прямого введення" + +#. Translators: Text in recording thread status and error messages. +#: addon\globalPlugins\AIHub\recordthread.py:404 +msgid "No Mistral API key configured. Please add one in AI-Hub settings." +msgstr "Ключ Mistral API не налаштовано. Додайте його в налаштуваннях AI-Hub." + +#. Translators: Text in recording thread status and error messages. +#: addon\globalPlugins\AIHub\recordthread.py:412 +msgid "OpenAI client is not available for transcription." +msgstr "Клієнт OpenAI недоступний для транскрипції." + +#. Translators: Title of the error dialog when global dictation transcription fails; body text is a shortened technical error from the engine. +#: addon\globalPlugins\AIHub\recordthread.py:450 +msgid "Transcription Error" +msgstr "Помилка транскрипції" + +#. Translators: NVDA Preferences — AI-Hub category: button in the API accounts group that opens account management. +#: addon\globalPlugins\AIHub\settings_dialog.py:33 +msgid "Manage API &accounts..." +msgstr "Керувати обліковими записами &API..." + +#. Translators: NVDA Preferences — AI-Hub category: helper text under a settings group or next to a field. +#: addon\globalPlugins\AIHub\settings_dialog.py:39 +msgid "Opens a separate dialog to add, edit, or remove provider accounts." +msgstr "" +"Відкриває окремий діалог для додавання, редагування або видалення облікових " +"записів постачальника." + +#. Translators: NVDA Preferences — AI-Hub category: Conversation section — blocks closing the hub with Escape. +#: addon\globalPlugins\AIHub\settings_dialog.py:50 +msgid "Block the closing using the &escape key" +msgstr "Заблокувати закриття за допомогою клавіші &escape" + +#. Translators: NVDA Preferences — AI-Hub category: Conversation section — persist system prompt between sessions. +#: addon\globalPlugins\AIHub\settings_dialog.py:55 +msgid "Remember the content of the S&ystem field between sessions" +msgstr "Запам’ятовувати вміст поля &Системної підказки між сеансами" + +#. Translators: NVDA Preferences — AI-Hub category: Conversation section — auto-save after each assistant reply. +#: addon\globalPlugins\AIHub\settings_dialog.py:60 +msgid "&Auto-save conversations after each response" +msgstr "&Автоматичне збереження розмов після кожної відповіді" + +#. Translators: NVDA Preferences — AI-Hub category: title of a bordered settings group. +#: addon\globalPlugins\AIHub\settings_dialog.py:67 +msgid "Text To Speech" +msgstr "Перетворення тексту в мовлення" + +#. Translators: NVDA Preferences — AI-Hub category: Text To Speech section — TTS voice choice label. +#. Translators: Label before the synthetic voice combo box (alloy, verse, etc.) in the OpenAI TTS tool. +#: addon\globalPlugins\AIHub\settings_dialog.py:70 +#: addon\globalPlugins\AIHub\tool_openai_tts_dialog.py:84 +msgid "&Voice:" +msgstr "&Голос:" + +#. Translators: NVDA Preferences — AI-Hub category: Text To Speech section — TTS model choice label. +#. Translators: Label before the Lyria model id text field (default lyria-3-pro-preview). +#. Translators: Label before the OCR model id text field (default mistral-ocr-latest). +#. Translators: Label before the Mistral speech-to-text model combo box in this tool window. +#. Translators: Label before the Whisper / GPT-transcribe model combo box in the OpenAI Transcription tool. +#. Translators: Label before the TTS model combo box (e.g. gpt-4o-mini-tts) in the OpenAI TTS tool. +#. Translators: Label before the Voxtral TTS model combo box in this tool window. +#: addon\globalPlugins\AIHub\settings_dialog.py:74 +#: addon\globalPlugins\AIHub\tool_lyria_dialog.py:78 +#: addon\globalPlugins\AIHub\tool_mistral_ocr_dialog.py:61 +#: addon\globalPlugins\AIHub\tool_mistral_transcription_dialog.py:105 +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:107 +#: addon\globalPlugins\AIHub\tool_openai_tts_dialog.py:80 +#: addon\globalPlugins\AIHub\tool_voxtral_tts_dialog.py:86 +msgid "&Model:" +msgstr "&Модель:" + +#. Translators: NVDA Preferences — AI-Hub category: title of a bordered settings group. +#: addon\globalPlugins\AIHub\settings_dialog.py:80 +msgid "Image description" +msgstr "Опис зображення" + +#. Translators: NVDA Preferences — AI-Hub category: Image description section — resize images before API upload. +#: addon\globalPlugins\AIHub\settings_dialog.py:85 +msgid "&Resize images before sending them to the API" +msgstr "&Змінити розмір зображення, перш ніж надсилати їх до API" + +#. Translators: NVDA Preferences — AI-Hub category: Image description section — max width spin box label. +#: addon\globalPlugins\AIHub\settings_dialog.py:91 +msgid "Maximum &width (0 to resize proportionally to the height):" +msgstr "Максимальна &ширина (0 для зміни розміру пропорційно висоті):" + +#. Translators: NVDA Preferences — AI-Hub category: Image description section — max height spin box label. +#: addon\globalPlugins\AIHub\settings_dialog.py:99 +msgid "Maximum &height (0 to resize proportionally to the width):" +msgstr "Максимальна &висота (0 для зміни розміру пропорційно ширині):" + +#. Translators: NVDA Preferences — AI-Hub category: Image description section — JPEG quality spin box label. +#: addon\globalPlugins\AIHub\settings_dialog.py:107 +msgid "" +"&Quality for JPEG images (0 [worst] to 95 [best], values above 95 should be " +"avoided):" +msgstr "" +"&Якість для зображень у форматі JPEG (де 0 [найгірше] а 95 [найкраще], варто " +"уникати значень вище 95):" + +#. Translators: NVDA Preferences — AI-Hub category: Image description section — allow editing the default describe-image prompt. +#: addon\globalPlugins\AIHub\settings_dialog.py:115 +msgid "Customize default text &prompt" +msgstr "Налаштувати &початковий текст підказки" + +#. Translators: NVDA Preferences — AI-Hub category: Image description section — custom default prompt for describe-image. +#: addon\globalPlugins\AIHub\settings_dialog.py:121 +msgid "Default &text prompt:" +msgstr "&Початкова текстова підказка:" + +#. Translators: NVDA Preferences — AI-Hub category: title of a bordered settings group. +#: addon\globalPlugins\AIHub\settings_dialog.py:134 +msgid "Chat feedback" +msgstr "Зворотній зв'язок у чаті" + +#. Translators: NVDA Preferences — AI-Hub category: Chat feedback section — sound while a request runs. +#: addon\globalPlugins\AIHub\settings_dialog.py:140 +msgid "Play sound when a task is in progress" +msgstr "Відтворювати звук під час виконання завдання" + +#. Translators: NVDA Preferences — AI-Hub category: Chat feedback section — sound when your prompt is sent. +#: addon\globalPlugins\AIHub\settings_dialog.py:144 +msgid "Play sound when a response is sent" +msgstr "Відтворювати звук gпри отриманні відповіді" + +#. Translators: NVDA Preferences — AI-Hub category: Chat feedback section — sound while waiting for the model. +#: addon\globalPlugins\AIHub\settings_dialog.py:148 +msgid "Play sound when a response is pending" +msgstr "Відтворювати звук при очікуванні відповіді" + +#. Translators: NVDA Preferences — AI-Hub category: Chat feedback section — sound when the reply arrives. +#: addon\globalPlugins\AIHub\settings_dialog.py:152 +msgid "Play sound when a response is received" +msgstr "Відтворювати звук, коли отримано відповідь" + +#. Translators: NVDA Preferences — AI-Hub category: Chat feedback section — focus message history and put the caret right after the «Assistant:» prefix when the first reply token streams in. +#: addon\globalPlugins\AIHub\settings_dialog.py:156 +msgid "" +"Move focus to message history when the first assistant reply token arrives" +msgstr "" +"Перемістити фокус на історію повідомлень, коли надійде перший токен " +"відповіді асистента" + +#. Translators: NVDA Preferences — AI-Hub category: Chat feedback section — speak incoming replies while focus stays in the prompt. +#: addon\globalPlugins\AIHub\settings_dialog.py:160 +msgid "Speak response when the focus is in the prompt field" +msgstr "Промовляти відповідь, коли фокус знаходиться в полі запиту" -#. Translators: This is the label for the model ID column in the model list control in the main dialog. -#: addon/globalPlugins/openai/maindialog.py:714 -msgid "ID" -msgstr "ID" +#. Translators: NVDA Preferences — AI-Hub category: title of a bordered settings group. +#: addon\globalPlugins\AIHub\settings_dialog.py:168 +msgid "Recording" +msgstr "Запис" -#. Translators: This is the label for the model context window column in the model list control in the main dialog. -#: addon/globalPlugins/openai/maindialog.py:719 -msgid "Context window" -msgstr "Контекстне вікно" +#. Translators: NVDA Preferences — AI-Hub category: Recording — Transcription provider list — local whisper.cpp option. +#: addon\globalPlugins\AIHub\settings_dialog.py:176 +msgid "whisper.cpp (local)" +msgstr "whisper.cpp (локальний)" + +#. Translators: NVDA Preferences — AI-Hub category: Recording — Transcription provider list — OpenAI Whisper option. +#: addon\globalPlugins\AIHub\settings_dialog.py:178 +msgid "OpenAI Whisper" +msgstr "OpenAI Whisper" + +#. Translators: NVDA Preferences — AI-Hub category: Recording — Transcription provider list — Mistral Voxtral option. +#: addon\globalPlugins\AIHub\settings_dialog.py:180 +msgid "Mistral Voxtral" +msgstr "Mistral Voxtral" + +#. Translators: NVDA Preferences — AI-Hub category: Recording — Provider — which engine handles dictation transcription. +#: addon\globalPlugins\AIHub\settings_dialog.py:184 +msgid "Transcription &provider:" +msgstr "&Постачальник транскрипції:" + +#. Translators: NVDA Preferences — AI-Hub category: Recording — whisper.cpp HTTP host field label. +#: addon\globalPlugins\AIHub\settings_dialog.py:196 +msgid "&Host (whisper.cpp):" +msgstr "&Хост (whisper.cpp):" + +#. Translators: NVDA Preferences — AI-Hub category: title of a bordered settings group. +#: addon\globalPlugins\AIHub\settings_dialog.py:206 +msgid "Provider account mapping" +msgstr "Прив'язка облікових записів постачальників" + +#. Translators: NVDA Preferences — AI-Hub category: helper text under a settings group or next to a field. +#: addon\globalPlugins\AIHub\settings_dialog.py:212 +msgid "Use these only when dictation must always use a specific account." +msgstr "" +"Використовуйте їх лише тоді, коли для диктування завжди потрібно " +"використовувати певний обліковий запис." + +#. Translators: NVDA Preferences — AI-Hub category: Recording — Provider account mapping — OpenAI account drop-down label. +#: addon\globalPlugins\AIHub\settings_dialog.py:217 +msgid "OpenAI transcription account:" +msgstr "Обліковий запис транскрипції OpenAI:" + +#. Translators: NVDA Preferences — AI-Hub category: Recording — Provider account mapping — Mistral account drop-down label. +#: addon\globalPlugins\AIHub\settings_dialog.py:223 +msgid "Mistral transcription account:" +msgstr "Обліковий запис транскрипції Mistral:" + +#. Translators: NVDA Preferences — AI-Hub category: title of a bordered settings group. +#: addon\globalPlugins\AIHub\settings_dialog.py:231 +msgid "Audio preprocessing" +msgstr "Попередня обробка аудіо" + +#. Translators: NVDA Preferences — AI-Hub category: Recording — Audio preprocessing — trim silence before transcription. +#: addon\globalPlugins\AIHub\settings_dialog.py:237 +msgid "&Trim silence (remove leading/trailing and silence > 2s)" +msgstr "" +"&Видалити тишу (видалити початок/кінець та тишу тривалістю понад 2 секунди)" + +#. Translators: NVDA Preferences — AI-Hub category: Recording — Audio preprocessing — minimum silence length spin box. +#: addon\globalPlugins\AIHub\settings_dialog.py:244 +msgid "Minimum silence &duration to remove (seconds):" +msgstr "Мінімальна тривалість тиші для видалення (у секундах):" + +#. Translators: NVDA Preferences — AI-Hub category: Recording — first item in OpenAI/Mistral transcription account drop-downs. +#: addon\globalPlugins\AIHub\settings_dialog.py:263 +msgid "Use provider active account (default)" +msgstr "Використовувати активний обліковий запис постачальника (початково)" + +#. Translators: Title bar of the modal progress window shown during long AI-Hub tool requests (label kept as «OpenAI» for compatibility). +#: addon\globalPlugins\AIHub\tool_dialog_base.py:71 +msgid "OpenAI" +msgstr "OpenAI" + +#. Translators: Short status text repeatedly pulsed in the tool progress dialog while the background HTTP task is still running. +#: addon\globalPlugins\AIHub\tool_dialog_base.py:105 +msgid "Task in progress..." +msgstr "Завдання виконується..." + +#. Translators: Information message after the user stops a long tool task from the progress dialog; the tool window then closes. +#: addon\globalPlugins\AIHub\tool_dialog_base.py:122 +msgid "Cancellation requested. The dialog will now close." +msgstr "Запит на скасування. Діалог закриється." + +#. Translators: Sole visible entry in the tool’s account drop-down when no accounts exist for this provider (control is disabled). +#: addon\globalPlugins\AIHub\tool_dialog_base.py:160 +msgid "No account configured" +msgstr "Обліковий запис не налаштовано" + +#. Translators: Error message when the user starts a tool action but no usable account id is selected (OK-only message box). +#: addon\globalPlugins\AIHub\tool_dialog_base.py:186 +msgid "No account configured for this tool/provider." +msgstr "Для цього інструменту/постачальника не налаштовано обліковий запис." + +#. Translators: Internal error message when a tool tries to use the API client but the parent conversation has no active client (user should configure accounts). +#: addon\globalPlugins\AIHub\tool_dialog_base.py:193 +msgid "No API client available. Configure at least one account first." +msgstr "" +"Клієнт API недоступний. Спочатку налаштуйте хоча б один обліковий запис." -#. Translators: This is the label for the model max output token column in the model list control in the main dialog. -#: addon/globalPlugins/openai/maindialog.py:724 -msgid "Max output token" -msgstr "Максимальний вихідний токен" +#. Translators: Error message when a tool tries to open an http(s) link in the browser and the OS reports a failure (placeholder is the system error). +#: addon\globalPlugins\AIHub\tool_dialog_base.py:237 +#, python-format +msgid "Unable to open URL: %s" +msgstr "Неможливо відкрити URL: %s" -#. Translators: This is the label for the max tokens spin control in the main dialog. -#: addon/globalPlugins/openai/maindialog.py:742 -msgid "Max to&kens:" -msgstr "&Максимальна кількість токенів:" +#. Translators: Error message when a tool tries to open a local file path that no longer exists (placeholder is the full path). +#: addon\globalPlugins\AIHub\tool_dialog_base.py:241 +#, python-format +msgid "" +"File not found:\n" +"%s" +msgstr "" +"Файл не знайдено:\n" +"%s" -#. Translators: This is the label for the temperature spin control in the main dialog. -#: addon/globalPlugins/openai/maindialog.py:755 -msgid "&Temperature:" -msgstr "&Температура:" +#. Translators: Error message when a tool tries to open an existing local file and the OS shell reports a failure (placeholder is the system error). +#: addon\globalPlugins\AIHub\tool_dialog_base.py:248 +#, python-format +msgid "Unable to open file: %s" +msgstr "Неможливо відкрити файл: %s" + +#. Translators: Window title of the AI-Hub Google Lyria 3 Pro music-generation tool dialog. +#: addon\globalPlugins\AIHub\tool_lyria_dialog.py:37 +msgid "Tool: Lyria 3 Pro" +msgstr "Інструмент: Lyria 3 Pro" + +#. Translators: Button that opens the last generated music audio file from Lyria 3 Pro. +#. Translators: Button that opens the last generated speech file in the default Windows application. +#. Translators: Button that opens the last synthesized audio file from the Voxtral TTS tool. +#: addon\globalPlugins\AIHub\tool_lyria_dialog.py:64 +#: addon\globalPlugins\AIHub\tool_openai_tts_dialog.py:75 +#: addon\globalPlugins\AIHub\tool_voxtral_tts_dialog.py:141 +msgid "Open generated audio" +msgstr "Відкрити згенероване аудіо" + +#. Translators: Label before the optional multiline negative prompt listing what Lyria should avoid. +#: addon\globalPlugins\AIHub\tool_lyria_dialog.py:71 +msgid "Negative prompt (&optional):" +msgstr "Негативна підказка (&необов'язково):" + +#. Translators: Label before the requested clip duration in seconds for Lyria generation. +#: addon\globalPlugins\AIHub\tool_lyria_dialog.py:85 +msgid "&Duration seconds:" +msgstr "&Тривалість у секундах:" + +#. Translators: Label before the optional random seed field for reproducible Lyria generations. +#: addon\globalPlugins\AIHub\tool_lyria_dialog.py:92 +msgid "See&d:" +msgstr "&Сід:" + +#. Translators: Label before the optional nucleus sampling top-p parameter for Lyria. +#: addon\globalPlugins\AIHub\tool_lyria_dialog.py:106 +msgid "Top &P:" +msgstr "Верхнє &P:" + +#. Translators: Label before the optional top-k truncation parameter for Lyria. +#: addon\globalPlugins\AIHub\tool_lyria_dialog.py:113 +msgid "Top &K:" +msgstr "Верхнє &K:" + +#. Translators: Label before the optional classifier-free guidance scale field for Lyria. +#: addon\globalPlugins\AIHub\tool_lyria_dialog.py:120 +msgid "&CFG scale:" +msgstr "&масштаб CFG:" + +#. Translators: Label before the output audio sample rate in hertz (default 48000) for Lyria. +#: addon\globalPlugins\AIHub\tool_lyria_dialog.py:127 +msgid "Sam&ple rate:" +msgstr "&Частота дискретизації:" + +#. Translators: Label before the container format drop-down (wav, mp3, flac) for exported Lyria audio. +#: addon\globalPlugins\AIHub\tool_lyria_dialog.py:134 +msgid "Output f&ormat:" +msgstr "Формат виведення:" + +#. Translators: Button that starts Lyria 3 Pro music generation with the current form settings. +#: addon\globalPlugins\AIHub\tool_lyria_dialog.py:141 +msgid "Generate music" +msgstr "Генерувати музику" + +#. Translators: Error body when Lyria 3 Pro music generation raises an exception; placeholder is the error text (title is «OpenAI»). +#: addon\globalPlugins\AIHub\tool_lyria_dialog.py:303 +#, python-format +msgid "Lyria 3 Pro generation failed: %s" +msgstr "Помилка створення Lyria 3 Pro: %s" -#. Translators: This is the label for the top P spin control in the main dialog. -#: addon/globalPlugins/openai/maindialog.py:768 -msgid "Pro&bability Mass (top P):" -msgstr "Мас&а ймовірності (Верхнє P):" +#. Translators: Error body when the Lyria API JSON contained no usable base64 audio block after a nominally successful response (title is «OpenAI»). +#: addon\globalPlugins\AIHub\tool_lyria_dialog.py:308 +msgid "" +"Lyria request completed but no audio payload was returned by the provider." +msgstr "Запит Lyria виконано, але постачальник не повернув аудіофайл." -#: addon/globalPlugins/openai/maindialog.py:781 -msgid "&Whisper Response Format:" -msgstr "&Формат відповіді Whisper:" +#. Translators: Error body when base64-decoding the Lyria audio chunk fails; placeholder is the decode error (title is «OpenAI»). +#: addon\globalPlugins\AIHub\tool_lyria_dialog.py:314 +#, python-format +msgid "Invalid audio payload: %s" +msgstr "Недійсний аудіо пакет: %s" -#: addon/globalPlugins/openai/maindialog.py:793 -msgid "&Stream mode" -msgstr "&Потоковий режим" +#. Translators: Error body when writing the decoded Lyria WAV/MP3 to the temp folder fails; placeholder is the OS error (title is «OpenAI»). +#: addon\globalPlugins\AIHub\tool_lyria_dialog.py:323 +#, python-format +msgid "Unable to save generated audio: %s" +msgstr "Неможливо зберегти створене аудіо: %s" + +#. Translators: Title stored on the synthetic «tool output» conversation tab after Lyria 3 Pro finishes successfully. +#: addon\globalPlugins\AIHub\tool_lyria_dialog.py:333 +msgid "Tool output: Lyria 3 Pro" +msgstr "Інструмент виводу: Lyria 3 Pro" + +#. Translators: Short assistant reply stored with the tool run when Lyria 3 Pro produced an audio file (shown in chat history). +#: addon\globalPlugins\AIHub\tool_lyria_dialog.py:337 +msgid "Audio generated with Lyria 3 Pro." +msgstr "Аудіо згенероване за допомогою Lyria 3 Pro." + +#. Translators: Error body when Generate is pressed with an empty main prompt in the Lyria 3 Pro tool (title is «OpenAI»). +#: addon\globalPlugins\AIHub\tool_lyria_dialog.py:419 +msgid "Please enter a prompt for Lyria 3 Pro." +msgstr "Будь ласка, введіть запит для Lyria 3 Pro." + +#. Translators: Error body when Lyria cannot run because the chosen Google API account has no key stored (title is «OpenAI»). +#: addon\globalPlugins\AIHub\tool_lyria_dialog.py:439 +msgid "No API key available for the selected Google account." +msgstr "Ключ API не доступний для вибраного облікового запису Google." + +#. Translators: Status line on the modal progress window while Lyria 3 Pro is generating music. +#: addon\globalPlugins\AIHub\tool_lyria_dialog.py:444 +msgid "Music generation in progress..." +msgstr "Триває генерація музики..." + +#. Translators: Window title of the AI-Hub Mistral OCR tool dialog. +#: addon\globalPlugins\AIHub\tool_mistral_ocr_dialog.py:37 +msgid "Tool: Mistral OCR" +msgstr "Інструмент: Mistral OCR" + +#. Translators: Label before the path or https URL of the image or PDF to send to Mistral OCR. +#: addon\globalPlugins\AIHub\tool_mistral_ocr_dialog.py:68 +msgid "Source file or &URL:" +msgstr "Вихідний файл або &URL:" + +#. Translators: Button that opens a file picker for the local image or PDF used as OCR input. +#: addon\globalPlugins\AIHub\tool_mistral_ocr_dialog.py:73 +msgid "Browse OCR source..." +msgstr "Огляд джерела OCR..." + +#. Translators: Button that opens the current source path or URL in the default application. +#: addon\globalPlugins\AIHub\tool_mistral_ocr_dialog.py:77 +msgid "Open source" +msgstr "Відкритий код" + +#. Translators: Button that opens the plain-text OCR output file from the last successful run. +#: addon\globalPlugins\AIHub\tool_mistral_ocr_dialog.py:81 +msgid "Open OCR text result" +msgstr "Відкрити результат OCR тексту" + +#. Translators: Button that opens the structured JSON OCR output file from the last successful run. +#: addon\globalPlugins\AIHub\tool_mistral_ocr_dialog.py:85 +msgid "Open OCR JSON result" +msgstr "Відкрити результат OCR у форматі JSON" + +#. Translators: Label before the optional PDF page index list sent to Mistral OCR (comma-separated page numbers). +#: addon\globalPlugins\AIHub\tool_mistral_ocr_dialog.py:92 +msgid "&Pages (e.g. 0,1,2):" +msgstr "&Сторінки (наприклад, 0,1,2):" + +#. Translators: Label before the optional maximum number of images Mistral should process from the document. +#: addon\globalPlugins\AIHub\tool_mistral_ocr_dialog.py:99 +msgid "Image &limit:" +msgstr "&Ліміт зображення:" + +#. Translators: Label before the optional minimum image dimension filter for OCR preprocessing. +#: addon\globalPlugins\AIHub\tool_mistral_ocr_dialog.py:106 +msgid "Image min si&ze:" +msgstr "Мінімальний розмір зображення:" + +#. Translators: Label before the table output format drop-down (markdown, html, or none) for Mistral OCR. +#: addon\globalPlugins\AIHub\tool_mistral_ocr_dialog.py:113 +msgid "Table f&ormat:" +msgstr "Формат таблиці:" + +#. Translators: Label before the document-level annotation output format drop-down for Mistral OCR. +#: addon\globalPlugins\AIHub\tool_mistral_ocr_dialog.py:120 +msgid "Document annotation for&mat:" +msgstr "Анотація документа для&формату:" + +#. Translators: Label before the bounding-box annotation output format drop-down for Mistral OCR. +#: addon\globalPlugins\AIHub\tool_mistral_ocr_dialog.py:127 +msgid "BBo&x annotation format:" +msgstr "&Формат анотацій BBox:" + +#. Translators: Checkbox asking Mistral to embed base64 image data in the OCR JSON response. +#: addon\globalPlugins\AIHub\tool_mistral_ocr_dialog.py:131 +msgid "Include image base64 in response" +msgstr "Додати зображення base64 у відповідь" + +#. Translators: Checkbox enabling extraction of document header regions in Mistral OCR. +#: addon\globalPlugins\AIHub\tool_mistral_ocr_dialog.py:133 +msgid "Extract header" +msgstr "Видобути заголовок" + +#. Translators: Checkbox enabling extraction of document footer regions in Mistral OCR. +#: addon\globalPlugins\AIHub\tool_mistral_ocr_dialog.py:135 +msgid "Extract footer" +msgstr "Видобути нижній колонтитул" + +#. Translators: Label before the optional multiline instructions for document-level annotations in Mistral OCR. +#: addon\globalPlugins\AIHub\tool_mistral_ocr_dialog.py:140 +msgid "Document annotation &prompt:" +msgstr "Підказка до анотації &документа:" + +#. Translators: Button that sends the configured document to the Mistral OCR API and writes result files. +#: addon\globalPlugins\AIHub\tool_mistral_ocr_dialog.py:151 +msgid "Run OCR" +msgstr "Запустити OCR" + +#. Translators: Title of the file picker for the source image or PDF in the Mistral OCR tool. +#: addon\globalPlugins\AIHub\tool_mistral_ocr_dialog.py:174 +msgid "Select image or document file" +msgstr "Виберіть зображення або файл документа" + +#. Translators: File-type filter in the Mistral OCR source file picker. +#: addon\globalPlugins\AIHub\tool_mistral_ocr_dialog.py:177 +msgid "" +"Supported files (*.png;*.jpg;*.jpeg;*.gif;*.bmp;*.webp;*.pdf)|" +"*.png;*.jpg;*.jpeg;*.gif;*.bmp;*.webp;*.pdf" +msgstr "" +"Підтримувані файли (*.png;*.jpg;*.jpeg;*.gif;*.bmp;*.webp;*.pdf)|" +"*.png;*.jpg;*.jpeg;*.gif;*.bmp;*.webp;*.pdf" -#: addon/globalPlugins/openai/maindialog.py:800 -msgid "Debu&g mode" -msgstr "Режи&м налагодження" +#. Translators: Error body for an unexpected Mistral OCR failure (title is «OpenAI»; technical details only in the NVDA log). +#: addon\globalPlugins\AIHub\tool_mistral_ocr_dialog.py:246 +msgid "Mistral OCR failed. See NVDA log for details." +msgstr "" +"OCR Mistral завершилося невдало. Детальнішу інформацію дивіться у журналі " +"NVDA." + +#. Translators: Short completion line stored with the tool run when Mistral OCR produced files but no inline text preview. +#: addon\globalPlugins\AIHub\tool_mistral_ocr_dialog.py:257 +msgid "OCR completed. See attached output files." +msgstr "OCR завершено. Дивіться додані файли результату." + +#. Translators: Title stored on the synthetic «tool output» conversation tab after Mistral OCR finishes successfully. +#: addon\globalPlugins\AIHub\tool_mistral_ocr_dialog.py:260 +msgid "Tool output: Mistral OCR" +msgstr "Результат роботи інструменту: Mistral OCR" + +#. Translators: Error body when Run is pressed without a local path or http(s) URL in the Mistral OCR source field (title is «OpenAI»). +#: addon\globalPlugins\AIHub\tool_mistral_ocr_dialog.py:365 +msgid "Please provide a file path or URL for OCR." +msgstr "Укажіть шлях до файлу або URL-адресу для OCR." + +#. Translators: Error body when Mistral OCR cannot run because the selected Mistral account has no API key (title is «OpenAI»). +#. Translators: Error raised before the HTTP request when the chosen Mistral account has no API key. +#: addon\globalPlugins\AIHub\tool_mistral_ocr_dialog.py:372 +#: addon\globalPlugins\AIHub\tool_mistral_transcription_dialog.py:257 +msgid "No API key available for the selected Mistral account." +msgstr "Немає доступного ключа API для вибраного облікового запису Mistral." + +#. Translators: Error body when the entered local OCR path is not found on disk (title is «OpenAI»). +#: addon\globalPlugins\AIHub\tool_mistral_ocr_dialog.py:379 +msgid "File does not exist." +msgstr "Файл не існує." + +#. Translators: Error body when the local image or PDF cannot be read for upload; placeholder is the OS error (title is «OpenAI»). +#: addon\globalPlugins\AIHub\tool_mistral_ocr_dialog.py:389 +#, python-format +msgid "Unable to read source file: %s" +msgstr "Не вдається прочитати вихідний файл: %s" + +#. Translators: Status line on the modal progress window while Mistral OCR is processing the selected file. +#: addon\globalPlugins\AIHub\tool_mistral_ocr_dialog.py:424 +msgid "OCR in progress..." +msgstr "Виконується OCR..." + +#. Translators: Window title of the AI-Hub Mistral Speech-to-Text tool dialog. +#: addon\globalPlugins\AIHub\tool_mistral_transcription_dialog.py:62 +msgid "Tool: Mistral Speech to Text" +msgstr "Інструмент: Mistral Мовлення в Текст" + +#. Translators: Label before the path field for the audio file to transcribe in the Mistral Speech-to-Text tool. +#. Translators: Label before the path field for the audio file to transcribe or translate in this tool. +#: addon\globalPlugins\AIHub\tool_mistral_transcription_dialog.py:81 +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:85 +msgid "&Input audio file:" +msgstr "&Аудіофайл введення:" + +#. Translators: Button that opens a file picker for the input recording in Mistral Speech-to-Text. +#. Translators: Button that opens a file picker for the input audio file in the OpenAI Transcription tool. +#: addon\globalPlugins\AIHub\tool_mistral_transcription_dialog.py:85 +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:90 +msgid "Browse input audio..." +msgstr "Обрати аудіо..." + +#. Translators: Button that opens the selected input audio file in the default application. +#: addon\globalPlugins\AIHub\tool_mistral_transcription_dialog.py:89 +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:94 +msgid "Open input audio" +msgstr "Відкрити аудіо введення" + +#. Translators: Button that opens the plain-text transcript file from the last Mistral Speech-to-Text run. +#. Translators: Button that opens the plain-text transcript file from the last OpenAI audio run. +#: addon\globalPlugins\AIHub\tool_mistral_transcription_dialog.py:93 +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:98 +msgid "Open transcription text result" +msgstr "Відкрити результат транскрипції тексту" + +#. Translators: Button that opens the raw JSON API dump from the last Mistral Speech-to-Text run. +#. Translators: Button that opens the raw API response file (JSON or text) from the last OpenAI audio run. +#: addon\globalPlugins\AIHub\tool_mistral_transcription_dialog.py:97 +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:102 +msgid "Open raw transcription result" +msgstr "Відкрити необроблений результат транскрипції" + +#. Translators: Label before the optional ISO-639 language code hint field for Mistral transcription. +#: addon\globalPlugins\AIHub\tool_mistral_transcription_dialog.py:117 +msgid "&Language (ISO code, optional):" +msgstr "&Мова (код ISO, необов’язково):" + +#. Translators: Checkbox turning on speaker diarization in the Mistral Speech-to-Text request. +#: addon\globalPlugins\AIHub\tool_mistral_transcription_dialog.py:121 +msgid "Enable speaker diarization" +msgstr "Увімкнути розпізнавання мовлення" + +#. Translators: Label before the optional comma-separated vocabulary hints sent as context bias to Mistral. +#: addon\globalPlugins\AIHub\tool_mistral_transcription_dialog.py:127 +msgid "Context bias terms (comma-separated, optional):" +msgstr "Пріоритетні терміни (розділяйте комами, необов'язково)" + +#. Translators: Label before the optional segment/word timestamp granularity list for Mistral transcription. +#: addon\globalPlugins\AIHub\tool_mistral_transcription_dialog.py:134 +msgid "Timestamp granularities (segment,word; optional):" +msgstr "Рівень деталізації часових міток (сегмент, слово; необов’язково):" + +#. Translators: Label before the optional sampling temperature text field for Mistral transcription. +#. Translators: Label before the optional sampling temperature text field for the OpenAI transcription API. +#: addon\globalPlugins\AIHub\tool_mistral_transcription_dialog.py:141 +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:124 +msgid "&Temperature (optional):" +msgstr "&Температура (необов'язково):" + +#. Translators: Button that starts the Mistral Speech-to-Text HTTP request with the current form settings. +#. Translators: Button that starts the OpenAI audio transcription or translation request with the current form settings. +#: addon\globalPlugins\AIHub\tool_mistral_transcription_dialog.py:147 +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:149 +msgid "Run transcription" +msgstr "Запустити транскрипцію" + +#. Translators: Title of the file picker for the input recording in the Mistral speech-to-text tool. +#. Translators: Title of the file picker for the input recording in the OpenAI transcription/translation tool. +#: addon\globalPlugins\AIHub\tool_mistral_transcription_dialog.py:196 +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:207 +msgid "Select audio file" +msgstr "Вибрати аудіофайл" -#. Translators: This is the label for the record button in the main dialog. -#: addon/globalPlugins/openai/maindialog.py:812 -#: addon/globalPlugins/openai/maindialog.py:2044 -msgid "Start &recording" -msgstr "&Почати запис" - -#: addon/globalPlugins/openai/maindialog.py:815 -msgid "Record audio from microphone" -msgstr "Запис звуку з мікрофона" - -#. Translators: This is the label for the transcribe from audio file button in the main dialog. -#: addon/globalPlugins/openai/maindialog.py:820 -msgid "Transcribe from &audio file" -msgstr "Транскрибувати з &аудіофайлу" - -#: addon/globalPlugins/openai/maindialog.py:823 -msgid "Transcribe audio from a file path" -msgstr "Транскрибувати аудіо зі шляху до файлу" - -#. Translators: This is the label for the image description button in the main dialog. -#: addon/globalPlugins/openai/maindialog.py:828 -msgid "&Image description" -msgstr "&Опис зображення" - -#: addon/globalPlugins/openai/maindialog.py:831 -msgid "Describe an image from a file path or an URL" -msgstr "Описати зображення за допомогою шляху до файлу або URL-адреси" - -#. Translators: This is the label for the text to speech button in the main dialog. -#: addon/globalPlugins/openai/maindialog.py:836 -msgid "&Vocalize the prompt" -msgstr "&Промовити запит" - -#. Translators: This is the label for the submit button in the main dialog. -#: addon/globalPlugins/openai/maindialog.py:855 -msgid "Submit" -msgstr "Надіслати" - -#: addon/globalPlugins/openai/maindialog.py:920 -msgid "Describe the images in as much detail as possible." -msgstr "Описати зображення якомога детальніше." +#. Translators: File-type filter in the Mistral transcription tool’s input-audio picker. +#. Translators: File-type filter in the OpenAI transcription tool’s input-audio picker. +#: addon\globalPlugins\AIHub\tool_mistral_transcription_dialog.py:199 +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:210 +msgid "" +"Audio files (*.flac;*.mp3;*.mp4;*.mpeg;*.mpga;*.m4a;*.ogg;*.wav;*.webm)|" +"*.flac;*.mp3;*.mp4;*.mpeg;*.mpga;*.m4a;*.ogg;*.wav;*.webm" +msgstr "" +"Аудіофайли (*.flac;*.mp3;*.mp4;*.mpeg;*.mpga;*.m4a;*.ogg;*.wav;*.webm)|" +"*.flac;*.mp3;*.mp4;*.mpeg;*.mpga;*.m4a;*.ogg;*.wav;*.webm" -#: addon/globalPlugins/openai/maindialog.py:1011 -msgid "Model details" -msgstr "Деталі моделі" +#. Translators: Error body when Mistral Speech-to-Text fails with a network or HTTP error; placeholder is the provider message (title is «OpenAI»). +#: addon\globalPlugins\AIHub\tool_mistral_transcription_dialog.py:323 +#, python-format +msgid "Mistral Speech to Text failed: %s" +msgstr "Помилка в роботі функції «Mistral Мовлення в Текст»: %s" -#: addon/globalPlugins/openai/maindialog.py:1085 -msgid "Please select a model." -msgstr "Будь ласка, виберіть модель." +#. Translators: Error body for an unexpected Mistral Speech-to-Text failure (title is «OpenAI»; details in the log). +#: addon\globalPlugins\AIHub\tool_mistral_transcription_dialog.py:327 +msgid "Mistral Speech to Text failed. See NVDA log for details." +msgstr "" +"Помилка в роботі функції «Mistral Мовлення в Текст». Детальнішу інформацію " +"дивіться в журналі NVDA." -#: addon/globalPlugins/openai/maindialog.py:1092 +#. Translators: Error body when saving Mistral transcript or JSON dump fails; placeholder is the OS error (title is «OpenAI»). +#. Translators: Error body when writing the transcript or raw API dump to disk fails; placeholder is the OS error (title is «OpenAI»). +#: addon\globalPlugins\AIHub\tool_mistral_transcription_dialog.py:341 +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:332 #, python-format +msgid "Unable to save transcription outputs: %s" +msgstr "Неможливо зберегти результати транскрипції: %s" + +#. Translators: Short completion line stored with the tool run when Mistral transcription returns no text body. +#. Translators: Short completion line stored with the tool run when OpenAI transcription returns no text body. +#: addon\globalPlugins\AIHub\tool_mistral_transcription_dialog.py:351 +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:346 +msgid "Transcription completed." +msgstr "Транскрипцію завершено." + +#. Translators: Title stored on the synthetic «tool output» conversation tab after Mistral Speech-to-Text finishes successfully. +#: addon\globalPlugins\AIHub\tool_mistral_transcription_dialog.py:354 +msgid "Tool output: Mistral Speech to Text" +msgstr "Інструмент виводу: Mistral Мовлення в Текст" + +#. Translators: Error body when Run is pressed without a valid on-disk audio file in the Mistral Speech-to-Text tool (title is «OpenAI»). +#. Translators: Error body when Run is pressed without a real on-disk audio path in the OpenAI transcription tool (title is «OpenAI»). +#: addon\globalPlugins\AIHub\tool_mistral_transcription_dialog.py:423 +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:457 +msgid "Please select a valid audio file." +msgstr "Виберіть дійсний аудіофайл." + +#. Translators: Error body when the comma-separated timestamp granularity field contains tokens other than segment or word (title is «OpenAI»). +#: addon\globalPlugins\AIHub\tool_mistral_transcription_dialog.py:434 +msgid "Timestamp granularities must only contain 'segment' and/or 'word'." +msgstr "Деталізація позначок часу має містити лише «сегмент» та/або «слово»." + +#. Translators: Error body when diarization is on but the timestamp granularity list is not exactly the single value «segment» (title is «OpenAI»). +#: addon\globalPlugins\AIHub\tool_mistral_transcription_dialog.py:444 msgid "" -"This model is only available with the %s provider. Please provide an API key " -"for this provider in the add-on settings. Otherwise, please select another " -"model with a different provider." +"When diarization is enabled, timestamp granularities must be exactly " +"'segment'." msgstr "" -"Ця модель доступна лише у постачальника %s. Вкажіть ключ API для цього " -"постачальника в налаштуваннях додатка. В іншому випадку виберіть іншу модель " -"від іншого постачальника." +"Коли розпізнавання мовлення увімкнено, деталізація часових міток повинна " +"бути саме 'segment'." + +#. Translators: Error body when the optional temperature field is not a valid decimal number in Mistral Speech-to-Text (title is «OpenAI»). +#. Translators: Validation error raised (and shown) when the optional temperature field is not numeric in the OpenAI transcription tool. +#: addon\globalPlugins\AIHub\tool_mistral_transcription_dialog.py:456 +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:231 +msgid "Temperature must be a valid number." +msgstr "Температура має бути дійсним числом." + +#. Translators: Status line on the modal progress window while Mistral is transcribing the selected audio file. +#. Translators: Status line on the modal progress window while OpenAI is transcribing or translating the selected audio file. +#: addon\globalPlugins\AIHub\tool_mistral_transcription_dialog.py:462 +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:471 +msgid "Transcription in progress..." +msgstr "Виконується транскрипція..." + +#. Translators: Ollama model manager — label in the Action drop-down for listing models installed on the local Ollama server. +#: addon\globalPlugins\AIHub\tool_ollama_models_dialog.py:32 +msgid "List installed models" +msgstr "Список встановлених моделей" + +#. Translators: Ollama model manager — label in the Action drop-down for listing models currently loaded in Ollama memory. +#: addon\globalPlugins\AIHub\tool_ollama_models_dialog.py:34 +msgid "List running models" +msgstr "Список запущених моделей" + +#. Translators: Ollama model manager — label in the Action drop-down for fetching JSON details of one named model. +#: addon\globalPlugins\AIHub\tool_ollama_models_dialog.py:36 +msgid "Show model details" +msgstr "Показати деталі моделі" + +#. Translators: Ollama model manager — label in the Action drop-down for downloading a model from a registry into Ollama. +#: addon\globalPlugins\AIHub\tool_ollama_models_dialog.py:38 +msgid "Pull model (add)" +msgstr "Модель отримання (додати)" + +#. Translators: Ollama model manager — label in the Action drop-down for uploading a local model to a registry. +#: addon\globalPlugins\AIHub\tool_ollama_models_dialog.py:40 +msgid "Push model" +msgstr "Модель відправлення" + +#. Translators: Ollama model manager — label in the Action drop-down for duplicating a model under a new name on the same machine. +#: addon\globalPlugins\AIHub\tool_ollama_models_dialog.py:42 +msgid "Copy model" +msgstr "Копіювати модель" + +#. Translators: Ollama model manager — label in the Action drop-down for creating a model from pasted Modelfile text. +#: addon\globalPlugins\AIHub\tool_ollama_models_dialog.py:44 +msgid "Create model from Modelfile" +msgstr "Створити модель із файлу моделі" + +#. Translators: Ollama model manager — label in the Action drop-down for removing one installed model from Ollama. +#: addon\globalPlugins\AIHub\tool_ollama_models_dialog.py:46 +msgid "Delete model (remove)" +msgstr "Видалити модель" + +#. Translators: Window title of the AI-Hub tool dialog for running Ollama admin commands (list, pull, delete, etc.). +#: addon\globalPlugins\AIHub\tool_ollama_models_dialog.py:53 +msgid "Tool: Ollama model manager" +msgstr "Інструмент: менеджер моделі Ollama" + +#. Translators: Label before the drop-down that selects which Ollama admin action to run (list, pull, delete, etc.). +#: addon\globalPlugins\AIHub\tool_ollama_models_dialog.py:74 +msgid "&Action:" +msgstr "&Дія:" + +#. Translators: Label before the primary model name or id text field in the Ollama models tool. +#: addon\globalPlugins\AIHub\tool_ollama_models_dialog.py:84 +msgid "&Model name:" +msgstr "&Назва моделі:" + +#. Translators: Label before the destination model name field used only for the Copy model action. +#: addon\globalPlugins\AIHub\tool_ollama_models_dialog.py:91 +msgid "Destination model (for copy):" +msgstr "Цільова модель (для копіювання):" + +#. Translators: Label before the multiline Modelfile editor used only for the Create model from Modelfile action. +#: addon\globalPlugins\AIHub\tool_ollama_models_dialog.py:98 +msgid "&Modelfile (for create):" +msgstr "&Файл моделі (для створення):" + +#. Translators: Checkbox allowing non-TLS or otherwise insecure registry connections when pulling or pushing models. +#: addon\globalPlugins\AIHub\tool_ollama_models_dialog.py:102 +msgid "Allow insecure registry (pull/push)" +msgstr "Дозволити незахищений реєстр (отримання/відправка)." + +#. Translators: Label before the read-only multiline area showing formatted command output from Ollama. +#: addon\globalPlugins\AIHub\tool_ollama_models_dialog.py:109 +msgid "&Result:" +msgstr "&Результат:" + +#. Translators: Button that runs the Ollama HTTP action selected in the Action drop-down. +#: addon\globalPlugins\AIHub\tool_ollama_models_dialog.py:115 +msgid "Run action" +msgstr "Виконати дію" + +#. Translators: Button opening a dialog with the raw JSON or text response from the last Ollama command. +#: addon\globalPlugins\AIHub\tool_ollama_models_dialog.py:119 +msgid "Show raw result" +msgstr "Показати необроблений результат" + +#. Translators: Validation error when the Ollama models tool action needs a model name but the field is empty. +#: addon\globalPlugins\AIHub\tool_ollama_models_dialog.py:190 +msgid "Model name is required for this action." +msgstr "Для цієї дії потрібна назва моделі." + +#. Translators: Validation error when the copy action is chosen but source or destination model name is missing. +#: addon\globalPlugins\AIHub\tool_ollama_models_dialog.py:196 +msgid "Source and destination model names are required for copy." +msgstr "Для копіювання необхідно вказати імена моделей джерела та призначення." + +#. Translators: Validation error when create-from-Modelfile is chosen but the Modelfile text box is empty. +#: addon\globalPlugins\AIHub\tool_ollama_models_dialog.py:202 +msgid "Modelfile content is required for create action." +msgstr "Вміст файлу моделі є обов’язковим для створення дії." + +#. Translators: Result text when list_models succeeds but Ollama reports no locally installed models. +#: addon\globalPlugins\AIHub\tool_ollama_models_dialog.py:235 +msgid "No installed models found." +msgstr "Немає встановлених моделей." + +#. Translators: Heading line before the bullet list of installed Ollama models in the tool result view. +#: addon\globalPlugins\AIHub\tool_ollama_models_dialog.py:237 +#, python-format +msgid "Installed models (%d):" +msgstr "Встановлені моделі (%d):" + +#. Translators: Result text when list_running succeeds but no model is currently loaded in Ollama. +#: addon\globalPlugins\AIHub\tool_ollama_models_dialog.py:251 +msgid "No running models." +msgstr "Немає запущених моделей." + +#. Translators: Heading line before the bullet list of models currently loaded in Ollama. +#: addon\globalPlugins\AIHub\tool_ollama_models_dialog.py:253 +#, python-format +msgid "Running models (%d):" +msgstr "Запущені моделі (%d):" -#: addon/globalPlugins/openai/maindialog.py:1095 +#. Translators: Error body after an Ollama HTTP call fails in the Ollama models tool; placeholder is the error text (title is «OpenAI»). +#: addon\globalPlugins\AIHub\tool_ollama_models_dialog.py:306 #, python-format -msgid "No API key for %s" -msgstr "Немає ключа API для %s" +msgid "Ollama action failed: %s" +msgstr "Помилка дії Ollama: %s" + +#. Translators: Single line shown in the Ollama models tool result text box when the action succeeded but returned no printable output. +#: addon\globalPlugins\AIHub\tool_ollama_models_dialog.py:310 +msgid "Done." +msgstr "Готово." + +#. Translators: Message on the modal progress bar while the Ollama models tool waits for the local Ollama HTTP action to finish. +#: addon\globalPlugins\AIHub\tool_ollama_models_dialog.py:326 +msgid "Running Ollama action..." +msgstr "Виконується дія Ollama..." + +#. Translators: Information message when «Show raw» is used before any Ollama command has produced a response body (title is «OpenAI»). +#: addon\globalPlugins\AIHub\tool_ollama_models_dialog.py:336 +msgid "No raw result available yet." +msgstr "Необроблених результатів ще немає." + +#. Translators: Title of the read-only dialog that shows up to the first 20 000 characters of the last Ollama JSON response (body is technical text). +#: addon\globalPlugins\AIHub\tool_ollama_models_dialog.py:339 +msgid "Raw result" +msgstr "Необроблений результат" + +#. Translators: Window title of the AI-Hub OpenAI Transcription / Translation tool dialog. +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:48 +msgid "Tool: OpenAI Transcription" +msgstr "Інструмент: транскрипція OpenAI" + +#. Translators: OpenAI Transcription tool — Task drop-down entry: transcribe audio in the original language. +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:71 +msgid "Transcription" +msgstr "Транскрипція" + +#. Translators: OpenAI Transcription tool — Task drop-down entry: translate speech into English text. +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:73 +msgid "Translation to English" +msgstr "Переклад на англійську мову" + +#. Translators: Label before the Task drop-down selecting transcription versus translation to English. +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:79 +msgid "Task:" +msgstr "Завдання:" + +#. Translators: Label before the optional ISO-639-1 language hint used for transcription (not for translation task). +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:111 +msgid "&Language (ISO-639-1, optional):" +msgstr "&Мова (ISO-639-1, необов’язково):" + +#. Translators: Label before the optional vocabulary or style hint multiline field passed to the transcription API. +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:115 +msgid "&Prompt (optional):" +msgstr "&Підказка (необов'язково):" + +#. Translators: Label before the API response format drop-down (json, srt, diarized_json, etc.) in this tool. +#. Translators: Label before the audio container format drop-down (mp3, wav, etc.) in the OpenAI TTS tool. +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:119 +#: addon\globalPlugins\AIHub\tool_openai_tts_dialog.py:92 +msgid "Response &format:" +msgstr "&Формат відповіді:" + +#. Translators: Label before the optional comma-separated timestamp granularity tokens for verbose transcripts. +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:128 +msgid "Timestamp granularities (comma-separated, optional):" +msgstr "Деталізація часових позначок (розділені комами, необов’язково):" + +#. Translators: Label before the optional comma-separated list of extra response segments to request from the API. +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:132 +msgid "Include fields (comma-separated, optional):" +msgstr "Вкажіть поля (розділені комами, необов’язково):" + +#. Translators: Label before the optional multiline JSON for the audio chunking strategy sent to the API. +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:136 +msgid "Chunking strategy JSON (optional):" +msgstr "Стратегія поділу на частини JSON (необов'язково):" + +#. Translators: Label before the optional comma-separated known speaker names for diarized transcription. +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:140 +msgid "Known speaker names (comma-separated, optional):" +msgstr "Відомі імена голосів (розділені комами, необов’язково):" + +#. Translators: Label before the optional comma-separated speaker reference ids for diarized transcription. +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:144 +msgid "Known speaker references (comma-separated, optional):" +msgstr "Посилання на відомі голоси (через кому, необов’язково):" + +#. Translators: Validation error when the optional chunking-strategy field is not valid JSON in the OpenAI transcription tool. +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:247 +msgid "Chunking strategy must be valid JSON." +msgstr "Стратегія фрагментації має бути дійсним JSON." + +#. Translators: Lowercase noun inserted into the OpenAI audio error sentence when the tool ran in translation mode. +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:295 +msgid "translation" +msgstr "переклад" + +#. Translators: Lowercase noun inserted into the OpenAI audio error sentence when the tool ran in transcription mode. +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:298 +msgid "transcription" +msgstr "транскрипція" + +#. Translators: Error dialog when OpenAI translation/transcription fails with a connection or HTTP status error. +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:301 +#, python-brace-format +msgid "OpenAI {action} failed: {error}" +msgstr "OpenAI {action} не вдалася: {error}" -#: addon/globalPlugins/openai/maindialog.py:1103 +#. Translators: Error body for an unexpected failure during OpenAI transcription or translation (title is «OpenAI»; details in the log). +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:311 +msgid "OpenAI audio task failed. See NVDA log for details." +msgstr "" +"Завдання OpenAI з обробки аудіо не виконано. Дивіться журнал NVDA для " +"деталей." + +#. Translators: Error body when the API response could not be interpreted as a transcription/translation result object (title is «OpenAI»). +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:315 +msgid "Invalid transcription result." +msgstr "Недійсний результат транскрипції." + +#. Translators: Short completion line stored with the tool run when OpenAI translation returns no text body. +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:343 +msgid "Translation completed." +msgstr "Переклад завершено." + +#. Translators: Title stored on the synthetic «tool output» tab after OpenAI speech-to-English translation finishes. +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:349 +msgid "Tool output: OpenAI translation" +msgstr "Інструмент виводу: переклад OpenAI" + +#. Translators: Title stored on the synthetic «tool output» tab after OpenAI speech-to-text transcription finishes. +#: addon\globalPlugins\AIHub\tool_openai_transcription_dialog.py:352 +msgid "Tool output: OpenAI transcription" +msgstr "Інструмент виводу: транскрипція OpenAI" + +#. Translators: Window title of the AI-Hub OpenAI text-to-speech tool dialog. +#: addon\globalPlugins\AIHub\tool_openai_tts_dialog.py:54 +msgid "Tool: OpenAI TTS" +msgstr "Інструмент: OpenAI TTS" + +#. Translators: Label before the multiline text box for the words to synthesize in the OpenAI TTS tool. +#: addon\globalPlugins\AIHub\tool_openai_tts_dialog.py:72 +msgid "&Input text:" +msgstr "&Введіть текст:" + +#. Translators: Label before the optional style or delivery instructions multiline field for OpenAI TTS. +#: addon\globalPlugins\AIHub\tool_openai_tts_dialog.py:88 +msgid "&Instructions (optional):" +msgstr "&Інструкції (необов'язково):" + +#. Translators: Label before the speech speed numeric field (allowed range 0.25–4.0) in the OpenAI TTS tool. +#: addon\globalPlugins\AIHub\tool_openai_tts_dialog.py:97 +msgid "&Speed (0.25-4.0):" +msgstr "&Швидкість (0,25-4,0):" + +#. Translators: Label before the optional streaming mode drop-down (empty, audio, or sse) for OpenAI TTS advanced use. +#: addon\globalPlugins\AIHub\tool_openai_tts_dialog.py:101 +msgid "Stream format (optional):" +msgstr "Формат потоку (необов'язково):" + +#. Translators: Button that starts OpenAI TTS synthesis with the current form settings. +#. Translators: Button that starts Voxtral TTS synthesis with the current form settings. +#: addon\globalPlugins\AIHub\tool_openai_tts_dialog.py:107 +#: addon\globalPlugins\AIHub\tool_voxtral_tts_dialog.py:147 +msgid "Generate speech" +msgstr "Генерувати мовлення" + +#. Translators: Error body when OpenAI TTS fails with a network or HTTP error; placeholder is the provider error text (title is «OpenAI»). +#: addon\globalPlugins\AIHub\tool_openai_tts_dialog.py:174 +#, python-format +msgid "OpenAI TTS failed: %s" +msgstr "Помилка OpenAI TTS: %s" + +#. Translators: Error body when OpenAI TTS fails with an unexpected exception (title is «OpenAI»; details only in the log). +#: addon\globalPlugins\AIHub\tool_openai_tts_dialog.py:178 +msgid "OpenAI TTS failed. See NVDA log for details." +msgstr "Помилка OpenAI TTS. Дивіться журнал NVDA для деталей." + +#. Translators: Title stored on the synthetic «tool output» conversation tab after OpenAI TTS finishes successfully. +#: addon\globalPlugins\AIHub\tool_openai_tts_dialog.py:185 +msgid "Tool output: OpenAI TTS" +msgstr "Інструмент виводу: OpenAI TTS" + +#. Translators: Short assistant reply text stored with the tool run when OpenAI TTS produced an audio file (shown in chat history). +#: addon\globalPlugins\AIHub\tool_openai_tts_dialog.py:189 +msgid "Audio generated with OpenAI TTS." +msgstr "Аудіо, згенероване за допомогою OpenAI TTS." + +#. Translators: Error body when Generate is pressed with an empty text box in the OpenAI TTS tool (title is «OpenAI»). +#: addon\globalPlugins\AIHub\tool_openai_tts_dialog.py:254 +msgid "Please enter text to synthesize." +msgstr "Будь ласка, введіть текст для синтезу." + +#. Translators: Error body when the speech speed value in OpenAI TTS is outside the allowed numeric range (title is «OpenAI»). +#: addon\globalPlugins\AIHub\tool_openai_tts_dialog.py:260 +msgid "Speed must be between 0.25 and 4.0." +msgstr "Швидкість має бути від 0,25 до 4,0." + +#. Translators: Status line on the modal progress window while OpenAI TTS is synthesizing speech. +#. Translators: Status line on the modal progress window while Voxtral TTS is synthesizing speech. +#: addon\globalPlugins\AIHub\tool_openai_tts_dialog.py:279 +#: addon\globalPlugins\AIHub\tool_voxtral_tts_dialog.py:444 +msgid "Speech generation in progress..." +msgstr "Виконується генерація мовлення..." + +#. Translators: Window title of the AI-Hub Mistral Voxtral text-to-speech tool dialog. +#: addon\globalPlugins\AIHub\tool_voxtral_tts_dialog.py:44 +msgid "Tool: Voxtral TTS" +msgstr "Інструмент: Voxtral TTS" + +#. Translators: Group box title around the main synthesis request fields (text, model, output format) in Voxtral TTS. +#: addon\globalPlugins\AIHub\tool_voxtral_tts_dialog.py:62 +msgid "Synthesis" +msgstr "Синтез" + +#. Translators: Group box title around voice ID, reference audio, and voice refresh in the Voxtral TTS tool. +#: addon\globalPlugins\AIHub\tool_voxtral_tts_dialog.py:64 +msgid "Voice" +msgstr "Голос" + +#. Translators: Group box title around opening the generated file and the main action buttons in Voxtral TTS. +#: addon\globalPlugins\AIHub\tool_voxtral_tts_dialog.py:66 +msgid "Output" +msgstr "Вивід" + +#. Translators: Label before the multiline text to speak in the Voxtral TTS tool. +#: addon\globalPlugins\AIHub\tool_voxtral_tts_dialog.py:79 +msgid "&Text input:" +msgstr "&Введення тексту:" + +#. Translators: Label before the optional saved voice id combo box used for Voxtral voice selection or cloning. +#: addon\globalPlugins\AIHub\tool_voxtral_tts_dialog.py:98 +msgid "Saved &voice ID (optional):" +msgstr "Збережений &голосовий ідентифікатор (необов'язково):" + +#. Translators: Label before the output audio format drop-down (wav, mp3, etc.) in the Voxtral TTS tool. +#: addon\globalPlugins\AIHub\tool_voxtral_tts_dialog.py:110 +msgid "Output &format:" +msgstr "&Формат виводу:" + +#. Translators: Label before the optional path field for a reference audio clip used in voice cloning. +#: addon\globalPlugins\AIHub\tool_voxtral_tts_dialog.py:118 +msgid "Reference &audio (optional):" +msgstr "Посилання &аудіо (необов’язково):" + +#. Translators: Button that opens a file picker for the optional Voxtral reference-audio clip. +#: addon\globalPlugins\AIHub\tool_voxtral_tts_dialog.py:123 +msgid "Browse reference audio..." +msgstr "Переглянути зразки аудіо..." + +#. Translators: Button that opens the selected reference audio file from disk or URL handler. +#: addon\globalPlugins\AIHub\tool_voxtral_tts_dialog.py:127 +msgid "Open reference audio" +msgstr "Відкритий еталонний аудіозапис" + +#. Translators: Static hint under the voice section explaining how saved voice IDs and reference clips interact. +#: addon\globalPlugins\AIHub\tool_voxtral_tts_dialog.py:133 +msgid "" +"Use a saved voice ID or provide a reference audio clip for voice cloning." +msgstr "" +"Використовуйте збережений ідентифікатор голосу або надайте еталонний " +"аудіозапис для клонування голосу." + +#. Translators: Button that re-fetches the list of saved voice IDs from the Mistral API for the combo box. +#: addon\globalPlugins\AIHub\tool_voxtral_tts_dialog.py:137 +msgid "Refresh voices" +msgstr "Оновити голоси" + +#. Translators: Title of the file picker for the optional Voxtral reference-voice clip. +#: addon\globalPlugins\AIHub\tool_voxtral_tts_dialog.py:177 +msgid "Select reference audio file" +msgstr "Виберіть еталонний аудіофайл" + +#. Translators: File-type filter in the reference-audio picker for Voxtral TTS. +#: addon\globalPlugins\AIHub\tool_voxtral_tts_dialog.py:180 +msgid "Audio files (*.wav;*.mp3;*.flac;*.opus)|*.wav;*.mp3;*.flac;*.opus" +msgstr "Аудіофайли (*.wav;*.mp3;*.flac;*.opus)|*.wav;*.mp3;*.flac;*.opus" + +#. Translators: Error body when Voxtral TTS fails with a network or HTTP error; placeholder is the provider error text (title is «OpenAI»). +#: addon\globalPlugins\AIHub\tool_voxtral_tts_dialog.py:239 +#, python-format +msgid "Voxtral TTS failed: %s" +msgstr "Помилка Voxtral TTS: %s" + +#. Translators: Error body when Voxtral TTS fails with an unexpected exception (title is «OpenAI»; details in the log). +#: addon\globalPlugins\AIHub\tool_voxtral_tts_dialog.py:243 +msgid "Voxtral TTS failed. See NVDA log for details." +msgstr "Помилка Voxtral TTS. Дивіться журнал NVDA для деталей." + +#. Translators: Title stored on the synthetic «tool output» conversation tab after Voxtral TTS finishes successfully. +#: addon\globalPlugins\AIHub\tool_voxtral_tts_dialog.py:251 +msgid "Tool output: Voxtral TTS" +msgstr "Інструмент виводу: Voxtral TTS" + +#. Translators: Short assistant reply stored with the tool run when Voxtral TTS produced an audio file (shown in chat history). +#: addon\globalPlugins\AIHub\tool_voxtral_tts_dialog.py:255 +msgid "Audio generated with Voxtral TTS." +msgstr "Аудіо, згенероване за допомогою Voxtral TTS." + +#. Translators: Error body when Generate is pressed with an empty main text field in the Voxtral TTS tool (title is «OpenAI»). +#: addon\globalPlugins\AIHub\tool_voxtral_tts_dialog.py:424 +msgid "Please enter text for speech synthesis." +msgstr "Будь ласка, введіть текст для синтезу мовлення." + +#. Translators: Error body when the optional reference-audio file cannot be read before synthesis; placeholder is the OS error (title is «OpenAI»). +#: addon\globalPlugins\AIHub\tool_voxtral_tts_dialog.py:439 +#, python-format +msgid "Could not read reference audio: %s" +msgstr "Не вдалося прочитати еталонний аудіофайл: %s" + +#. Translators: AI-Hub Tools menu: label for a submenu or action that opens a provider tool. +#: addon\globalPlugins\AIHub\toolsmenu.py:37 +msgid "Voxtral TTS..." +msgstr "Voxtral TTS..." + +#. Translators: AI-Hub Tools menu: label for a submenu or action that opens a provider tool. +#: addon\globalPlugins\AIHub\toolsmenu.py:46 +msgid "OCR..." +msgstr "OCR..." + +#. Translators: AI-Hub Tools menu: label for a submenu or action that opens a provider tool. +#: addon\globalPlugins\AIHub\toolsmenu.py:55 +msgid "Speech to Text..." +msgstr "Мовлення в Текст..." + +#. Translators: AI-Hub Tools menu: label for a submenu or action that opens a provider tool. +#: addon\globalPlugins\AIHub\toolsmenu.py:64 +msgid "Lyria 3 Pro..." +msgstr "Lyria 3 Pro..." + +#. Translators: AI-Hub Tools menu: label for a submenu or action that opens a provider tool. +#: addon\globalPlugins\AIHub\toolsmenu.py:73 +msgid "TTS..." +msgstr "TTS..." + +#. Translators: AI-Hub Tools menu: label for a submenu or action that opens a provider tool. +#: addon\globalPlugins\AIHub\toolsmenu.py:82 +msgid "Transcription / Translation..." +msgstr "Транскрипція / Переклад..." + +#. Translators: AI-Hub Tools menu: label for a submenu or action that opens a provider tool. +#: addon\globalPlugins\AIHub\toolsmenu.py:91 +msgid "Model manager..." +msgstr "Менеджер моделей..." + +#. Translators: AI-Hub Tools menu: label for a submenu or action that opens a provider tool. +#: addon\globalPlugins\AIHub\toolsmenu.py:161 #, python-format msgid "" -"This model (%s) does not support image description. Please select one of the " -"following models: %s." +"No account configured for %s. Please add an account for this provider in AI-" +"Hub settings." msgstr "" -"Ця модель (%s) не підтримує опис зображення. Виберіть одну з наступних " -"моделей: %s." +"Для %s не налаштовано обліковий запис. Додайте обліковий запис для цього " +"постачальника в налаштуваннях AI-Hub." -#: addon/globalPlugins/openai/maindialog.py:1107 -msgid "Invalid model" -msgstr "Неправильна модель" +#. Translators: AI-Hub main window — Tools menu: entry in a context menu or submenu. +#: addon\globalPlugins\AIHub\toolsmenu.py:200 +msgid "&Tools" +msgstr "&Інструменти" -#: addon/globalPlugins/openai/maindialog.py:1116 +#: buildVars.py:42 msgid "" -"Be aware that the add-on may auto-resize images before API submission to " -"lower request sizes and costs. Adjust this feature in the Open AI settings " -"if needed. This message won't show again." +"AI-Hub is an NVDA add-on that connects your screen reader to multiple AI " +"providers for writing, summarizing, translation, image description, voice " +"questions, and transcription without leaving NVDA." msgstr "" -"Майте на увазі, що додаток може автоматично змінювати розміри зображень " -"перед надсиланням API, щоб зменшити розмір запиту та витрати. За потреби " -"налаштуйте цю функцію в налаштуваннях Open AI. Це повідомлення більше не " -"з'явиться." +"AI-Hub — це додаток для NVDA, який підключає ваш екранний зчитувач до різних " +"постачальників штучного інтелекту для написання текстів, створення резюме, " +"перекладу, опису зображень, голосових запитів та транскрипції, не виходячи з " +"NVDA." -#: addon/globalPlugins/openai/maindialog.py:1119 -msgid "Image resizing" -msgstr "Зміна розміру зображення" - -#: addon/globalPlugins/openai/maindialog.py:1158 -#, python-format +#: buildVars.py:44 msgid "" -"Unable to delete the file: %s\n" -"Please remove it manually." +"It supports OpenAI, Mistral, OpenRouter, Anthropic, xAI, Google, DeepSeek, " +"Custom OpenAI-compatible endpoints, and local Ollama models, with provider-" +"specific tools such as TTS, OCR, and speech-to-text." msgstr "" -"Не вдалося видалити файл: %s\n" -"Видаліть його вручну." +"Він підтримує OpenAI, Mistral, OpenRouter, Anthropic, xAI, Google, DeepSeek, " +"власні кінцеві точки, сумісні з OpenAI, та локальні моделі Ollama, а також " +"інструменти конкретних постачальників, такі як TTS, OCR та перетворення " +"мовлення в текст." -#: addon/globalPlugins/openai/maindialog.py:1216 -#, python-format -msgid "Insertion of: %s" -msgstr "Вставка з: %s" +#~ msgid "" +#~ "Custom OpenAI-compatible endpoint. Include /v1 according to your server." +#~ msgstr "" +#~ "Користувацька сумісна з OpenAI кінцева точка. Додайте /v1 згідно з вашим " +#~ "сервером." -#: addon/globalPlugins/openai/maindialog.py:1225 -msgid "Unknown error" -msgstr "Невідома помилка" +#~ msgid "Provider accounts used by AI-Hub. Double-click an entry to edit." +#~ msgstr "" +#~ "Облікові записи постачальників, які використовує AI-Hub. Двічі натисніть " +#~ "таб, щоб редагувати." -#: addon/globalPlugins/openai/maindialog.py:1241 -msgid "Do you want to open the URL in your browser?" -msgstr "Бажаєте відкрити URL-адресу у своєму браузері?" +#~ msgid "&Edit..." +#~ msgstr "&Редагувати..." -#: addon/globalPlugins/openai/maindialog.py:1244 -msgid "OpenAI Error" -msgstr "Помилка OpenAI" +#~ msgid "&Remove" +#~ msgstr "&Видалити" -#: addon/globalPlugins/openai/maindialog.py:1257 -msgid "Press Alt+F4 to close the dialog" -msgstr "Натисніть Alt+F4, щоб закрити діалог" +#~ msgid "&Close" +#~ msgstr "&Закрити" -#: addon/globalPlugins/openai/maindialog.py:1267 -msgid "User:" -msgstr "Користувач:" +#~ msgid "Close the AI Hub window (same as the Close button below)." +#~ msgstr "Закрити діалог AI Hub (те саме, що й кнопка \"Закрити\" нижче)." -#: addon/globalPlugins/openai/maindialog.py:1269 -msgid "Assistant:" -msgstr "Помічник:" +#~ msgid "Sessions" +#~ msgstr "Сеанси" -#: addon/globalPlugins/openai/maindialog.py:1413 -msgid "Begin" -msgstr "Початок" +#~ msgid "" +#~ "When set (≥ 0), requests best-effort deterministic sampling where the " +#~ "provider supports it (e.g. OpenAI seed)." +#~ msgstr "" +#~ "Якщо встановлено (≥ 0), вимагається найкраща детермінована вибірка, якщо " +#~ "постачальник підтримує це (наприклад, початкове значення OpenAI)." -#: addon/globalPlugins/openai/maindialog.py:1433 -msgid "End" -msgstr "Кінець" +#~ msgid "" +#~ "Sent as the API “stop” field (OpenAI-compatible). Providers limit count " +#~ "and length; extra lines may be ignored." +#~ msgstr "" +#~ "Надсилається як поле «стоп» API (сумісне з OpenAI). Постачальники " +#~ "обмежують кількість та довжину; зайві рядки можуть ігноруватися." -#: addon/globalPlugins/openai/maindialog.py:1473 -#, python-format -msgid "Response copied to system: %s" -msgstr "Відповідь скопійовано до system: %s" +#~ msgid "Open tools menu (OpenAI, Mistral, Google)." +#~ msgstr "Відкрити меню інструментів (OpenAI, Mistral, Google)." -#: addon/globalPlugins/openai/maindialog.py:1482 -msgid "Compied to prompt" -msgstr "Скопійовано до запиту" +#~ msgid "Submit" +#~ msgstr "Надіслати" -#: addon/globalPlugins/openai/maindialog.py:1486 -msgid "Copy" -msgstr "Копіювати" +#~ msgid "&Open" +#~ msgstr "&Відкрито" -#: addon/globalPlugins/openai/maindialog.py:1494 -msgid "Copy prompt" -msgstr "Копіювати запит" +#~ msgid "Clos&e" +#~ msgstr "&Закрити" -#: addon/globalPlugins/openai/maindialog.py:1497 -msgid "Copy response" -msgstr "Копіювати відповідь" +#~ msgid "Attach braille to the history if the focus is in the prompt field" +#~ msgstr "" +#~ "Прикріпити шрифт Брайля до поля повідомлення, якщо фокус знаходиться в " +#~ "полі запиту" -#: addon/globalPlugins/openai/maindialog.py:1504 -msgid "as formatted HTML" -msgstr "як форматований HTML" +#, fuzzy +#~| msgid "Show Open AI dialog" +#~ msgid "Show AI-Hub dialog" +#~ msgstr "Показати діалог Open AI" -#: addon/globalPlugins/openai/maindialog.py:1530 -msgid "Block deleted" -msgstr "Блокування видалено" +#~ msgid "" +#~ "Anthropic document support is best-effort here (PDF as document blocks, " +#~ "text files inlined). If this file is rejected, try OpenAI provider for " +#~ "native Responses file-input support." +#~ msgstr "" +#~ "Підтримка документів у форматі Anthropic тут здійснюється за принципом " +#~ "«максимальних зусиль» (PDF у вигляді блоків документів, текстові файли " +#~ "вбудовані). Якщо цей файл не приймається, спробуйте скористатися " +#~ "провайдером OpenAI, який підтримує введення файлів у форматі Відповіді." -#: addon/globalPlugins/openai/maindialog.py:1563 -msgid "Save history" -msgstr "Зберегти історію" +#~ msgid "" +#~ "Google document support is best-effort through compatibility endpoints. " +#~ "Try OpenAI provider for native Responses file-input support, or convert " +#~ "the file to PDF/text." +#~ msgstr "" +#~ "Підтримка документів Google здійснюється в міру можливостей через кінцеві " +#~ "точки сумісності. Спробуйте скористатися постачальником OpenAI для " +#~ "вбудованої підтримки введення файлів у форматі Відповіді, або перетворіть " +#~ "файл у PDF чи текст." -#: addon/globalPlugins/openai/maindialog.py:1565 -msgid "Text file" -msgstr "Текстовий файл" +#~ msgid "" +#~ "This provider uses a best-effort document compatibility path and may " +#~ "reject some file types. Try OpenAI provider for native Responses file-" +#~ "input support." +#~ msgstr "" +#~ "Цей постачальник використовує найкращий можливий шлях сумісності " +#~ "документів і може відхилити деякі типи файлів. Спробуйте постачальника " +#~ "OpenAI, який підтримує введення файлів у форматі Відповіді." -#: addon/globalPlugins/openai/maindialog.py:1576 -msgid "History saved" -msgstr "Історію збережено" +#~ msgid "Main d&ialog..." +#~ msgstr "Головни&й діалог..." -#: addon/globalPlugins/openai/maindialog.py:1581 -msgid "Reset to default" -msgstr "Скинути до початкових" +#, fuzzy +#~| msgid "Show the Open AI dialog" +#~ msgid "Show the AI-Hub dialog" +#~ msgstr "Показати діалог Open AI" -#: addon/globalPlugins/openai/maindialog.py:1591 -msgid "Show message in web view as formatted HTML" -msgstr "Показати повідомлення у веб-перегляді як форматований HTML" +#~ msgid "Main dialog" +#~ msgstr "Головний діалог" -#: addon/globalPlugins/openai/maindialog.py:1594 -msgid "Show message in web view as HTML source" -msgstr "Показати повідомлення у веб-перегляді як джерело HTML" +#~ msgid "" +#~ "Enable &advanced settings (including temperature and probability mass)" +#~ msgstr "" +#~ "Увімкнути &розширені параметри (зокрема температуру та маси ймовірності)" -#: addon/globalPlugins/openai/maindialog.py:1597 -msgid "Copy message as plain text" -msgstr "Копіювати повідомлення як звичайний текст" +#~ msgid "Update" +#~ msgstr "Оновлення" -#: addon/globalPlugins/openai/maindialog.py:1600 -msgid "Copy message as formatted HTML" -msgstr "Копіювати повідомлення як форматований HTML" +#~ msgid "Check for &updates on startup and periodically" +#~ msgstr "Періодично перевіряти наявність &оновлень під час запуску" -#: addon/globalPlugins/openai/maindialog.py:1603 -msgid "Copy response to system" -msgstr "Копіювати відповідь до system" +#~ msgid "&Channel:" +#~ msgstr "&Канал:" -#: addon/globalPlugins/openai/maindialog.py:1606 -msgid "Copy prompt to prompt" -msgstr "Копіювати запит до запиту" +#~ msgid "API Access Keys" +#~ msgstr "Ключі доступу до API" -#: addon/globalPlugins/openai/maindialog.py:1609 -msgid "Delete block" -msgstr "Видалити блок" +#, python-format +#~ msgid "%s API &keys..." +#~ msgstr "&Ключі API %s..." -#: addon/globalPlugins/openai/maindialog.py:1612 -msgid "Save history as text file" -msgstr "Зберегти історію у текстовий файл" +#~ msgid "Use &whisper.cpp for transcription" +#~ msgstr "Використовувати &whisper.cpp для транскрипції" -#: addon/globalPlugins/openai/maindialog.py:1615 -msgid "Say message" -msgstr "Промовити повідомлення" +#~ msgid "&Host:" +#~ msgstr "&Хост:" -#: addon/globalPlugins/openai/maindialog.py:1618 -msgid "Move to previous message" -msgstr "Перейти до попереднього повідомлення" +#~ msgid "API &keys" +#~ msgstr "&Ключі API" -#: addon/globalPlugins/openai/maindialog.py:1621 -msgid "Move to next message" -msgstr "Перейти до наступного повідомлення" +#~ msgid "Manage the API keys" +#~ msgstr "Керування ключами API" -#: addon/globalPlugins/openai/maindialog.py:1632 -msgid "Insert previous prompt" -msgstr "Вставити попередній запит" +#~ msgid "API &usage" +#~ msgstr "&Використання API" -#: addon/globalPlugins/openai/maindialog.py:1684 -msgid "Show model &details" -msgstr "Показати деталі &моделі" +#~ msgid "Open the API usage webpage" +#~ msgstr "Відкрити веб-сторінку використання API" -#: addon/globalPlugins/openai/maindialog.py:1688 -msgid "Add to &favorites" -msgstr "Додати в &обране" +#~ msgid "Check for &updates..." +#~ msgstr "&Перевірити наявність оновлень..." -#: addon/globalPlugins/openai/maindialog.py:1688 -msgid "Remove from &favorites" -msgstr "Видалити з &обраного" +#~ msgid "Check for updates" +#~ msgstr "Перевірити наявність оновлень" -#: addon/globalPlugins/openai/maindialog.py:1702 -msgid "From f&ile path..." -msgstr "&Зі шляху до файлу..." +#~ msgid "Please disable the screen curtain before taking a screenshot" +#~ msgstr "Перш ніж робити знімок екрана, вимкніть екранну завісу" -#: addon/globalPlugins/openai/maindialog.py:1706 -msgid "From &URL..." -msgstr "З &URL..." +#~ msgid "Points to one of the most recent iterations of gpt-3.5 model." +#~ msgstr "Вказує на одну з останніх ітерацій моделі gpt-3.5." -#: addon/globalPlugins/openai/maindialog.py:1710 -msgid "From &screenshot" -msgstr "Зі &знімка екрана" +#~ msgid "" +#~ "The latest GPT-3.5 Turbo model with higher accuracy at responding in " +#~ "requested formats and a fix for a bug which caused a text encoding issue " +#~ "for non-English language function calls." +#~ msgstr "" +#~ "Остання модель GPT-3.5 Turbo з підвищеною точністю обробки запитуваних " +#~ "форматів і виправленням помилки, яка спричиняла проблеми з кодуванням " +#~ "тексту при виклику неанглійських функцій." -#: addon/globalPlugins/openai/maindialog.py:1732 -msgid "&Remove selected images" -msgstr "&Видалити вибрані зображення" +#~ msgid "" +#~ "Updated GPT 3.5 Turbo. The latest GPT-3.5 Turbo model with improved " +#~ "instruction following, JSON mode, reproducible outputs, parallel function " +#~ "calling, and more." +#~ msgstr "" +#~ "Оновлено GPT 3.5 Turbo. Остання модель GPT-3.5 Turbo з покращеним " +#~ "дотриманням інструкцій, режимом JSON, відтворюваними виводами, " +#~ "паралельним викликом функцій тощо." -#: addon/globalPlugins/openai/maindialog.py:1735 -msgid "Remove &all images" -msgstr "Видалити &всі зображення" +#~ msgid "" +#~ "Our most advanced, multimodal flagship model that’s cheaper and faster " +#~ "than GPT-4 Turbo" +#~ msgstr "" +#~ "Наша найсучасніша мультимодальна флагманська модель, яка дешевша і швидша " +#~ "за GPT-4 Turbo" -#: addon/globalPlugins/openai/maindialog.py:1739 -msgid "Add from f&ile path..." -msgstr "&Додати зі шляху до файлу..." +#~ msgid "The latest GPT-4 Turbo model with vision capabilities" +#~ msgstr "Остання модель GPT-4 Turbo з баченням" -#: addon/globalPlugins/openai/maindialog.py:1742 -msgid "Add from &URL..." -msgstr "Додати з &URL..." +#~ msgid "Points to one of the most recent iterations of gpt-4 model." +#~ msgstr "Вказує на одну з останніх ітерацій моделі gpt-4." -#. Translators: This is a message displayed in a dialog to select one or more images. -#: addon/globalPlugins/openai/maindialog.py:1848 -msgid "Select image files" -msgstr "Вибрати файли зображень" +#~ msgid "" +#~ "The latest GPT-4 model intended to reduce cases of “laziness” where the " +#~ "model doesn’t complete a task." +#~ msgstr "" +#~ "Остання модель GPT-4 призначена для зменшення випадків \"лінощів\", коли " +#~ "модель не виконує завдання." -#: addon/globalPlugins/openai/maindialog.py:1850 -msgid "Image files" -msgstr "Файли зображень" +#~ msgid "" +#~ "GPT-4 Turbo model featuring improved instruction following, JSON mode, " +#~ "reproducible outputs, parallel function calling, and more." +#~ msgstr "" +#~ "Модель GPT-4 Turbo із покращеним дотриманням інструкцій, режимом JSON, " +#~ "відтворюваними виводами, паралельним викликом функцій тощо." -#. Translators: This message is displayed when the image has already been added. -#: addon/globalPlugins/openai/maindialog.py:1866 -#, python-format -msgid "" -"The following image has already been added and will be ignored:\n" -"%s" -msgstr "" -"Наступне зображення вже додано та буде проігноровано:\n" -"%s" +#~ msgid "" +#~ "GPT-4 Turbo with vision. Ability to understand images, in addition to all " +#~ "other GPT-4 Turbo capabilities." +#~ msgstr "" +#~ "GPT-4 Turbo з оглядом. Здатність розуміти зображення на додаток до всіх " +#~ "інших можливостей GPT-4 Turbo." -#. Translators: This is a message displayed in a dialog to enter an image URL. -#: addon/globalPlugins/openai/maindialog.py:1885 -msgid "Enter image URL" -msgstr "Введіть URL зображення" +#~ msgid "" +#~ "More capable than any GPT-3.5 model, able to do more complex tasks, and " +#~ "optimized for chat" +#~ msgstr "" +#~ "Більш потужний, ніж будь-яка модель GPT-3.5, здатний виконувати більш " +#~ "складні завдання та оптимізований для чату" -#: addon/globalPlugins/openai/maindialog.py:1899 -msgid "Invalid URL, bad format." -msgstr "Недійсна URL-адреса, неправильний формат." +#~ msgid "" +#~ "Same capabilities as the standard gpt-4 mode but with 4x the context " +#~ "length." +#~ msgstr "" +#~ "Ті ж можливості, що і в стандартному режимі gpt-4, але з 4-кратною " +#~ "довжиною контексту." -#. Translators: This message is displayed when the image URL returns an HTTP error. -#: addon/globalPlugins/openai/maindialog.py:1910 #, python-format -msgid "HTTP error %s." -msgstr "Помилка HTTP %s." +#~ msgid "aka %s" +#~ msgstr "також відомий як %s" -#. Translators: This message is displayed when the image URL does not point to an image. -#: addon/globalPlugins/openai/maindialog.py:1918 -msgid "The URL does not point to an image." -msgstr "URL-адреса не вказує на зображення." +#~ msgid "Simple tasks (Classification, Customer Support, or Text Generation)" +#~ msgstr "" +#~ "Прості завдання (класифікація, підтримка клієнтів або генерація тексту)" -#. Translators: This message is displayed when the add-on fails to get the image dimensions. -#: addon/globalPlugins/openai/maindialog.py:1941 -#, python-format -msgid "Failed to get image dimensions. %s" -msgstr "Не вдалося отримати розміри зображення. %s" +#~ msgid "" +#~ "Intermediate tasks that require moderate reasoning (Data extraction, " +#~ "Summarizing a Document, Writing emails, Writing a Job Description, or " +#~ "Writing Product Descriptions)" +#~ msgstr "" +#~ "Проміжні завдання, які вимагають поміркованих обґрунтувань (витяг даних, " +#~ "узагальнення документа, написання електронних листів, написання посадових " +#~ "інструкцій або опис продукту)" -#. Translators: This message is displayed when a chat session stops receiving images. -#: addon/globalPlugins/openai/maindialog.py:1969 -msgid "Screenshot reception disabled" -msgstr "Отримання знімків екрана вимкнено" +#~ msgid "" +#~ "Complex tasks that require large reasoning capabilities or are highly " +#~ "specialized (Synthetic Text Generation, Code Generation, RAG, or Agents)" +#~ msgstr "" +#~ "Складні завдання, які вимагають великих можливостей міркування або є " +#~ "вузькоспеціалізованими (генерація синтетичного тексту, генерація коду, " +#~ "RAG або агенти)" -#. Translators: This message is displayed when a chat session starts to receive images. -#: addon/globalPlugins/openai/maindialog.py:1975 -msgid "Screenshot reception enabled" -msgstr "Отримання знімків екрана увімкнено" +#~ msgid "SubRip (SRT)" +#~ msgstr "SubRip (SRT)" -#: addon/globalPlugins/openai/maindialog.py:1991 -msgid "Stop &recording" -msgstr "Зупинити &запис" +#~ msgid "Web Video Text Tracks (VTT)" +#~ msgstr "Текстові доріжки веб-відео (VTT)" -#: addon/globalPlugins/openai/maindialog.py:2005 -msgid "Select audio file" -msgstr "Вибрати аудіофайл" +#~ msgid "Uploading one image, please wait..." +#~ msgstr "Відвантаження одного зображення, зачекайте..." -#: addon/globalPlugins/openai/maindialog.py:2007 -msgid "" -"Audio files (*.mp3;*.mp4;*.mpeg;*.mpga;*.m4a;*.wav;*.webm)|*.mp3;*.mp4;*." -"mpeg;*.mpga;*.m4a;*.wav;*.webm" -msgstr "" -"Аудіофайли (*.mp3;*.mp4;*.mpeg;*.mpga;*.m4a;*.wav;*.webm)|*.mp3;*.mp4;*.mpeg;" -"*.mpga;*. m4a;*.wav;*.webm" +#~ msgid "ID" +#~ msgstr "ID" -#: addon/globalPlugins/openai/maindialog.py:2027 -msgid "Please enter some text in the prompt field first." -msgstr "Спочатку введіть текст у поле запиту." +#~ msgid "Start &recording" +#~ msgstr "&Почати запис" -#: addon/globalPlugins/openai/model.py:41 -msgid "preview: not yet suited for production traffic" -msgstr "попередній перегляд: ще не підходить для робочого трафіку" +#~ msgid "Record audio from microphone" +#~ msgstr "Запис звуку з мікрофона" -#: addon/globalPlugins/openai/model.py:55 -#, python-brace-format -msgid "provider: {provider}" -msgstr "постачальник: {provider}" +#~ msgid "Transcribe from &audio file" +#~ msgstr "Транскрибувати з &аудіофайлу" -#: addon/globalPlugins/openai/model.py:60 -#, python-brace-format -msgid "ID: {id}" -msgstr "ID: {id}" +#~ msgid "Transcribe audio from a file path" +#~ msgstr "Транскрибувати аудіо зі шляху до файлу" -#: addon/globalPlugins/openai/model.py:63 -#, python-brace-format -msgid "context window: {contextWindow}" -msgstr "контекстне вікно: {contextWindow}" +#~ msgid "&Image description" +#~ msgstr "&Опис зображення" -#: addon/globalPlugins/openai/model.py:69 -#, python-brace-format -msgid "max output tokens: {maxOutputToken}" -msgstr "максимальна кількість вихідних токенів: {maxOutputToken}" +#~ msgid "Describe an image from a file path or an URL" +#~ msgstr "Описати зображення за допомогою шляху до файлу або URL-адреси" -#: addon/globalPlugins/openai/recordthread.py:47 -msgid "Transcription copied to clipboard" -msgstr "Транскрипцію скопійовано в буфер обміну" +#~ msgid "&Vocalize the prompt" +#~ msgstr "&Промовити запит" -#: addon/globalPlugins/openai/recordthread.py:102 -msgid "Transcribing..." -msgstr "Транскрибування..." +#~ msgid "Unknown error" +#~ msgstr "Невідома помилка" -#: addon/globalPlugins/openai/recordthread.py:178 -#: addon/globalPlugins/openai/recordthread.py:187 -#: addon/globalPlugins/openai/recordthread.py:203 -msgid "Error!" -msgstr "Помилка!" +#~ msgid "Begin" +#~ msgstr "Початок" -#: addon/globalPlugins/openai/updatecheck.py:89 -#, python-format -msgid "" -"New version available: %s. Your version is %s. You can update from the add-" -"on store or from the GitHub repository." -msgstr "" -"Доступна нова версія: %s. Ваша версія: %s. Ви можете оновитися з магазину " -"додатків або з репозиторію GitHub." +#~ msgid "End" +#~ msgstr "Кінець" + +#~ msgid "Image files" +#~ msgstr "Файли зображень" -#. Translators: This is the title of the message displayed when a new version of the add-on is available. -#. Translators: This is the title of the message displayed when the user checks for updates manually and there are no updates available. -#: addon/globalPlugins/openai/updatecheck.py:99 -#: addon/globalPlugins/openai/updatecheck.py:108 -msgid "OpenAI update" -msgstr "Оновлення OpenAI" +#~ msgid "The URL does not point to an image." +#~ msgstr "URL-адреса не вказує на зображення." -#. Translators: This is the message displayed when the user checks for updates manually and there are no updates available. -#: addon/globalPlugins/openai/updatecheck.py:104 -msgid "You have the latest version of OpenAI add-on installed." -msgstr "У вас встановлена остання версія додатка OpenAI." +#~ msgid "Stop &recording" +#~ msgstr "Зупинити &запис" + +#~ msgid "Error!" +#~ msgstr "Помилка!" -#. Translators: This is the message displayed when a new version of the OpenAI dependencies is available. -#: addon/globalPlugins/openai/updatecheck.py:146 #, python-format -msgid "" -"New OpenAI dependencies revision available: %s. Your version is %s. Update " -"now?" -msgstr "" -"Доступна нова версія залежностей OpenAI: %s. Ваша версія %s. Оновити зараз?" +#~ msgid "" +#~ "New version available: %s. Your version is %s. You can update from the " +#~ "add-on store or from the GitHub repository." +#~ msgstr "" +#~ "Доступна нова версія: %s. Ваша версія: %s. Ви можете оновитися з магазину " +#~ "додатків або з репозиторію GitHub." -#: addon/globalPlugins/openai/updatecheck.py:148 -msgid "unknown" -msgstr "невідома помилка" +#~ msgid "You have the latest version of OpenAI add-on installed." +#~ msgstr "У вас встановлена остання версія додатка OpenAI." -#. Translators: This is the title of the message displayed when a new version of the OpenAI dependencies is available. -#: addon/globalPlugins/openai/updatecheck.py:154 -msgid "OpenAI dependencies update" -msgstr "Оновлення залежностей OpenAI" +#, python-format +#~ msgid "" +#~ "New OpenAI dependencies revision available: %s. Your version is %s. " +#~ "Update now?" +#~ msgstr "" +#~ "Доступна нова версія залежностей OpenAI: %s. Ваша версія %s. Оновити " +#~ "зараз?" -#. Translators: This is the message emitted when updating the OpenAI dependencies. -#: addon/globalPlugins/openai/updatecheck.py:164 -msgid "Updating OpenAI dependencies... Please wait" -msgstr "Оновлення залежностей OpenAI... Зачекайте" +#~ msgid "Updating OpenAI dependencies... Please wait" +#~ msgstr "Оновлення залежностей OpenAI... Зачекайте" -#. Translators: This is the message displayed when the OpenAI dependencies are updated successfully. -#: addon/globalPlugins/openai/updatecheck.py:187 -msgid "" -"Dependencies updated successfully. NVDA will now restart to apply the " -"changes." -msgstr "" -"Залежності успішно оновлено. NVDA буде перезапущено для застосування змін." +#~ msgid "" +#~ "Dependencies updated successfully. NVDA will now restart to apply the " +#~ "changes." +#~ msgstr "" +#~ "Залежності успішно оновлено. NVDA буде перезапущено для застосування змін." -#. Translators: This is the title of the message displayed when the OpenAI dependencies are updated successfully. -#: addon/globalPlugins/openai/updatecheck.py:189 -msgid "Success" -msgstr "Успішно" +#~ msgid "Success" +#~ msgstr "Успішно" -#. Translators: This is the message displayed when the OpenAI dependencies cannot be updated. -#: addon/globalPlugins/openai/updatecheck.py:203 -msgid "Error updating dependencies. Please restart NVDA and try again." -msgstr "Помилка оновлення залежностей. Перезапустіть NVDA та повторіть спробу." +#~ msgid "Error updating dependencies. Please restart NVDA and try again." +#~ msgstr "" +#~ "Помилка оновлення залежностей. Перезапустіть NVDA та повторіть спробу." -#. Translators: This is the title of the message displayed when the OpenAI dependencies cannot be updated. -#: addon/globalPlugins/openai/updatecheck.py:205 -msgid "Error" -msgstr "Помилка" +#~ msgid "Error" +#~ msgstr "Помилка" -#: buildVars.py:42 -msgid "" -"Open AI is an NVDA add-on designed to seamlessly integrate the capabilities " -"of the Open AI API into your workflow. Whether you're looking to craft " -"comprehensive text, translate passages with precision, concisely summarize " -"documents, or even interpret and describe visual content, this add-on does " -"it all with ease." -msgstr "" -"Цей додаток призначений для безперешкодної інтеграції можливостей API Open " -"AI у ваш робочий процес. Незалежно від того, чи потрібно вам створити " -"вичерпний текст, точно перекласти уривки, стисло підсумувати документи або " -"навіть інтерпретувати й описати візуальний вміст, цей додаток легко " -"впорається з усіма цими завданнями." +#~ msgid "" +#~ "Open AI is an NVDA add-on designed to seamlessly integrate the " +#~ "capabilities of the Open AI API into your workflow. Whether you're " +#~ "looking to craft comprehensive text, translate passages with precision, " +#~ "concisely summarize documents, or even interpret and describe visual " +#~ "content, this add-on does it all with ease." +#~ msgstr "" +#~ "Цей додаток призначений для безперешкодної інтеграції можливостей API " +#~ "Open AI у ваш робочий процес. Незалежно від того, чи потрібно вам " +#~ "створити вичерпний текст, точно перекласти уривки, стисло підсумувати " +#~ "документи або навіть інтерпретувати й описати візуальний вміст, цей " +#~ "додаток легко впорається з усіма цими завданнями." -#: buildVars.py:44 -msgid "" -"The add-on also supports integration with Mistral and OpenRouter services, " -"thanks to their shared API format." -msgstr "" -"Додаток також підтримує інтеграцію з сервісами Mistral і OpenRouter завдяки " -"спільному формату API." +#~ msgid "" +#~ "The add-on also supports integration with Mistral and OpenRouter " +#~ "services, thanks to their shared API format." +#~ msgstr "" +#~ "Додаток також підтримує інтеграцію з сервісами Mistral і OpenRouter " +#~ "завдяки спільному формату API." #~ msgid "" #~ "Same capabilities as the standard gpt-3.5-turbo model but with 4 times " @@ -1070,15 +3978,9 @@ msgstr "" #~ "Будь ласка, скористайтеся кнопкою \"Опис зображення\" і виберіть одне або " #~ "кілька зображень. В іншому випадку, виберіть іншу модель." -#~ msgid "No image provided" -#~ msgstr "Зображення не надано" - #~ msgid "&History:" #~ msgstr "&Історія:" -#~ msgid "Attached ima&ges:" -#~ msgstr "&Вкладені зображення:" - #~ msgid "Maximum to&kens for the completion:" #~ msgstr "Максимальна кількість то&кенів для завершення:" @@ -1105,21 +4007,9 @@ msgstr "" #~ "Ключ автентифікації не надано. Будь ласка, встановіть його в діалозі " #~ "Налаштування." -#~ msgid "API Key:" -#~ msgstr "Ключ API:" - -#~ msgid "Organization" -#~ msgstr "Організація" - #~ msgid "Use or&ganization" #~ msgstr "Використовувати &організацію" -#~ msgid "Organization &name:" -#~ msgstr "&Назва організації:" - -#~ msgid "&Organization key:" -#~ msgstr "&Ключ організації:" - #~ msgid "Ready" #~ msgstr "Готово" @@ -1385,9 +4275,6 @@ msgstr "" #~ msgid "Whisper through whisper.cpp" #~ msgstr "Whisper.cpp aracılığıyla fısılda" -#~ msgid "Open AI" -#~ msgstr "Open AI" - #~ msgid "One image to analyze..." #~ msgstr "Одне зображення для аналізу..."