# General Translation Knowledge Base: General Translation или Tolgee: что выбрать?
URL: https://generaltranslation.com/ru/kb/general-translation-vs-tolgee.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Tolgee объединяет сообщения с ключами, редактирование в контексте и ИИ-перевод в платформе, которую можно развернуть на собственных серверах. General Translation хранит читаемый текст прямо в ваших компонентах и генерирует переводы из размеченного JSX, поэтому новый текст можно выпускать сразу на всех языках, не поддерживая ключи сообщений.
Category: Инструменты для рабочих процессов
Last updated: 2026-10-16
Authors: Kevin Wu, Jackie Chen
Published: 2026-10-16

Tolgee — это платформа локализации с открытым исходным кодом: вы назначаете каждой строке ключ, синхронизируете ключи с проектом Tolgee через его CLI или SDK, переводите их там с помощью машинного перевода, ИИ и своей команды, а затем загружаете результаты обратно в приложение в виде файлов или из CDN Tolgee. Tolgee можно развернуть самостоятельно из Docker-образа или использовать Tolgee Cloud. Его главная особенность — редактирование в контексте: зажмите ALT и щёлкните по любому тексту в запущенном приложении, чтобы перевести его. Однако весь цикл работы с ключами вокруг этого редактора ложится на инженеров. General Translation, напротив, отталкивается от кода: контент остаётся в ваших компонентах, а перевод выполняется в рамках сборки.

## Сильные стороны Tolgee

* **Открытый исходный код и возможность самостоятельного размещения.** Ядро платформы распространяется под лицензией [Apache 2.0](https://tolgee.io/licencing), а функции из каталога `ee` (например, SSO, детальные разрешения, глоссарии, задачи, ветвление и вебхуки) подпадают под лицензию Tolgee EE и требуют лицензионного ключа. [Бесплатная версия для самостоятельного размещения](https://tolgee.io/pricing/self-hosted) включает основные функции, неограниченное количество ключей, до 10 пользовательских мест и машинный перевод с вашими собственными ключами провайдеров.
* **Редактирование в контексте.** В режиме разработки зажмите ALT (Option на Mac) и щёлкните по строке в запущенном приложении, чтобы отредактировать её перевод. Расширение [Tolgee Tools](https://docs.tolgee.io/js-sdk/in-context) для Chrome и Firefox добавляет в то же диалоговое окно создание скриншотов и позволяет редактировать в контексте в рабочей среде.
* **SDK для множества стеков.** [JavaScript SDK](https://docs.tolgee.io/js-sdk) поддерживает React, Vue, Angular, Svelte и чистый JavaScript, а также включает интеграцию, совместимую с i18next. SDK для [iOS](https://docs.tolgee.io/ios-sdk) и Android подтягивают обновлённые строки из CDN Tolgee без нового релиза приложения.
* **CLI, который читает ваш код.** `@tolgee/cli` [извлекает ключи и их значения по умолчанию](https://docs.tolgee.io/tolgee-cli/extraction/parsers) из кода на React, Vue, Svelte и Angular, а команды `push`, `pull`, `sync` и `compare` поддерживают проект Tolgee и ваш репозиторий в синхронизированном состоянии. CLI импортирует и экспортирует множество форматов, включая XLIFF, ARB и Java properties.
* **ИИ с учётом контекста.** [Машинный перевод](https://docs.tolgee.io/platform/translation_process/machine_translation) выполняется через DeepL, Google, Amazon или Azure, а AI Translator использует модели Claude или OpenAI в Tolgee Cloud либо вашего собственного провайдера: OpenAI, Azure OpenAI, Anthropic, Gemini или любого OpenAI-совместимого. При этом он учитывает скриншоты, описания ключей и проекта, память переводов и [связи между ключами, которые фиксирует SDK](https://docs.tolgee.io/platform/translation_process/ai_translator).
* **Варианты доставки.** [Content Delivery](https://docs.tolgee.io/platform/projects_and_organizations/content_delivery) публикует переводы в CDN Tolgee или в ваше собственное хранилище S3 или Azure, так что веб-приложение получает изменения без пересборки.

## Что Tolgee по-прежнему перекладывает на ваших инженеров

В Tolgee каждая строка в UI — это ключ со значением по умолчанию:

```tsx title="src/Inbox.tsx"
import { T, useTranslate } from '@tolgee/react';

export function Inbox({ count }: { count: number }) {
  const { t } = useTranslate();
  return (
    <section>
      <h1>
        <T keyName="inbox_title" defaultValue="Inbox" />
      </h1>
      <p>
        {t('inbox_unread', '{count, plural, one {# unread message} other {# unread messages}}', { count })}
      </p>
    </section>
  );
}
```

Если запустить `npx @tolgee/cli extract print` для этого файла (CLI 2.21.0), команда найдёт оба ключа и их английские значения по умолчанию:

```text title="Output"
2 keys found in src/Inbox.tsx:
	line 8: inbox_title
		default: Inbox
	line 11: inbox_unread
		default: {count, plural, one {# unread message} other {# unread messages}}
```

Извлечение находит ключи, но чтобы новый текст появился на всех языках, по-прежнему приходится раз за разом проходить один и тот же цикл:

1. Придумать имя ключа для каждой строки и указать английский текст в качестве значения по умолчанию.
2. Создать ключи в проекте Tolgee с помощью `tolgee push` или [`tolgee sync`](https://docs.tolgee.io/tolgee-cli/extraction/syncing-strings).
3. Перевести строки машинным переводом, с помощью AI Translator или силами своих переводчиков, а затем проверить результат.
4. Выполнить [`tolgee pull`](https://docs.tolgee.io/tolgee-cli/push-pull-strings) и закоммитить файлы либо настроить Content Delivery и подключить к нему SDK, а затем добавить каждый новый язык в приложение.

Пока ключ не переведён, пользователи видят резервный язык или английский текст по умолчанию. Кроме того, AI Translator опирается на прикреплённые кем-то скриншоты и описания, а также на то, какие ключи отображаются на экране вместе, а не на компонент, который выполняет рендеринг строки.

Стоимость Tolgee Cloud определяется в основном числом размещённых слов, причём базовый язык и каждый перевод учитываются отдельно; кредиты на машинный перевод зависят от тарифа, а число мест в текущих тарифах не ограничено. Лицензии для самостоятельного размещения тарифицируются по числу ключей и мест. (См. [цены Tolgee](https://tolgee.io/pricing), данные проверены в октябре 2026 г.)

## Tolgee и General Translation: краткое сравнение

| Возможность                   | Tolgee                                                                                                                                 | General Translation                                                                                                                          |
| ----------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| Где хранятся строки           | Ключи со значениями по умолчанию в коде, синхронизируемые с проектом Tolgee                                                            | В коде внутри [`<T>`](/docs/react/reference/components/t) или в уже имеющихся файлах ресурсов                                                |
| Как подключается код          | `@tolgee/cli` `push`, `pull` и `sync` или SDK в режиме разработки                                                                      | [`npx gt translate`](/docs/cli/reference/commands/translate) в процессе сборки или пул-реквесты [Locadex](/docs/platform/locadex/quickstart) |
| Кто переводит                 | Машинный перевод, AI Translator или ваши переводчики                                                                                   | ИИ с учётом контекста из кода, Glossary и пользовательских промптов; результат проверяет ваша команда в панели управления                    |
| Контекст для каждой строки    | Описания ключей и проекта, скриншоты, память переводов и связи между ключами                                                           | Структура внутри размеченных JSX-блоков, контекстные заметки, а также общие Glossary и пользовательские промпты                              |
| Редактирование в приложении   | Редактирование по ALT+клику прямо в запущенном приложении, в том числе в рабочей среде — с помощью расширения для браузера             | Проверка и правка в Редакторе переводов в панели управления                                                                                  |
| Размещение                    | Решение для самостоятельного размещения с помощью Docker или Tolgee Cloud                                                                                  | Облачная платформа; библиотеки и CLI с открытым исходным кодом                                                                               |
| Цены                          | Бесплатный тариф; тарифы Cloud зависят от числа размещённых слов; лицензии для самостоятельного размещения — от числа ключей и пользователей | [Оплата по объёму переводов](https://generaltranslation.com/pricing)                                                                         |
| Нативные мобильные приложения | SDK для iOS и [Android](https://docs.tolgee.io/android-sdk) с обновлениями по воздуху (OTA)                                            | CLI переводит строковые файлы iOS и Android, которые затем включаются в релизы приложений                                                    |

## Почему команды выбирают General Translation вместо Tolgee

General Translation отталкивается от кода, поэтому не нужно придумывать имена ключам и синхронизировать их. Компонент [`<T>`](/docs/react/reference/components/t) оборачивает сам контент. Вот тот же почтовый ящик на `gt-react` после [настройки провайдера](/docs/react/react-quickstart):

```tsx title="src/Inbox.tsx"
import { T, Plural, Num } from 'gt-react';

export function Inbox({ count }: { count: number }) {
  return (
    <T>
      <section>
        <h1>Inbox</h1>
        <p>
          <Plural
            n={count}
            singular={<><Num>{count}</Num> unread message</>}
            plural={<><Num>{count}</Num> unread messages</>}
          />
        </p>
      </section>
    </T>
  );
}
```

Заголовок и сообщение остаются рядом в исходном коде. [`npx gt translate`](/docs/cli/reference/commands/translate) генерирует переведённый блок, включая все формы множественного числа, которые нужны каждому языку перевода.

* **Быстрее.** [`npx gt translate`](/docs/cli/reference/commands/translate) запускается во время сборки, а Locadex открывает пул-реквест при изменении кода, поэтому новый текст выходит уже переведённым в том же релизе, в котором он появился. Чтобы добавить язык, достаточно одной строки в `gt.config.json` — следующая сборка переведёт на него весь проект.
* **Дешевле в сопровождении.** Инженеры редактируют читаемый JSX, не придумывая ключ для каждого предложения и не поддерживая отдельный исходный словарь. Изменения текста и использующие его компоненты проходят одно и то же рецензирование кода.
* **Выше качество.** В примере с входящими сообщениями заголовок, структура сообщения и ветви множественного числа передаются вместе. Так переводчик получает гораздо больше смысла, чем из отдельно взятого предложения. Glossary и пользовательские промпты задают продуктовую терминологию и тон через [контекстные группы](/docs/platform/dashboard/guides/defining-context-for-translations).
* **Ниже риски.** Проверяйте сгенерированный текст в [Редакторе переводов в панели управления](/docs/platform/dashboard/guides/reviewing-translations) и храните переводы в собственной сборке. JavaScript-библиотеки под лицензией MIT могут выполнять рендеринг этих файлов без аккаунта General Translation и без обращений к внешним сервисам во время выполнения.

Ramp локализует свою панель управления, лендинг и iOS-приложение более чем на 11 локалей с помощью General Translation. (См. [развёртывания в рабочей среде](https://generaltranslation.com/enterprise).)

## Когда Tolgee подходит лучше

Выбирайте Tolgee, если вам нужно развернуть всю платформу на собственных серверах, если переводчики или продакт-менеджеры хотят редактировать текст, кликая по нему прямо в работающем приложении, если ваш фронтенд написан на Angular или Svelte, если вы обмениваетесь [файлами XLIFF, ARB или CSV](https://docs.tolgee.io/platform/supported_formats) или если нативным приложениям для iOS и Android нужны OTA-обновления строк. Выбирайте General Translation, если большая часть текста вашего продукта находится в коде на React, Next.js или Vue и вы хотите, чтобы каждый релиз сразу выходил на всех языках без этапа синхронизации ключей.

## Переход с Tolgee на General Translation

Переносите функции по одной. Замените каждый `<T keyName="…" defaultValue="…" />` на компонент [`<T>`](/docs/react/reference/components/t) от General Translation, обернув им английский текст, а каждый вызов `t('key', 'default')` — на [`useGT`](/docs/react/reference/hooks/use-gt). Если ваша команда хочет сохранить ключи, поместите английские значения в словарь и получайте их через [`useTranslations`](/docs/react/reference/hooks/use-translations). Продолжайте загружать переводы Tolgee, пока все функции не будут перенесены. (См. [Миграция с других библиотек интернационализации](/docs/react/guides/migrating-i18n-libraries).) Не забудьте перенести и глоссарий: при импорте в контекстную группу поддерживаются файлы CSV, TSV, JSON и текстовые файлы. (См. [Определение контекста для переводов](/docs/platform/dashboard/guides/defining-context-for-translations).)

## Может ли General Translation заменить Tolgee?

Да, если большая часть текста вашего продукта находится в коде на React, Next.js или Vue. General Translation переводит этот контент во время сборки, и вам не нужно создавать или синхронизировать ключи. Tolgee по-прежнему подходит лучше, если вам нужно развернуть платформу на собственных серверах или вы хотите, чтобы переводчики редактировали текст прямо в запущенном приложении.

## Ключевые выводы

* Tolgee — платформа локализации с открытым исходным кодом, которую можно развернуть на собственных серверах. Она поддерживает редактирование в контексте интерфейса, предлагает SDK для многих стеков и использует ИИ, который опирается на скриншоты и описания.
* Её SDK и CLI связывают исходные сообщения, привязанные к ключам, с процессами перевода, проверки и доставки.
* Благодаря написанию текста непосредственно в коде General Translation избавляет от необходимости поддерживать ключи сообщений: исходный текст остаётся читаемым прямо в JSX, переводы создаются во время сборки, а проверить их можно в панели управления.

## Related questions

- [Почему стоит выбрать General Translation вместо TMS (Smartling, Lokalise, Phrase, Crowdin или Transifex)?](https://generaltranslation.com/ru/kb/general-translation-vs-tms.mdx): Система управления переводами (TMS), например Smartling, Lokalise, Phrase, Crowdin или Transifex, координирует работу переводчиков, но инженерам всё равно приходится извлекать строки, отправлять их на перевод, ждать результатов и встраивать переводы обратно в продукт. General Translation переводит контент прямо в вашем коде с учётом контекста, выпускает все языки с каждым релизом и работает на библиотеках с открытым исходным кодом без привязки к поставщику.
- [General Translation или Weblate: что выбрать?](https://generaltranslation.com/ru/kb/general-translation-vs-weblate.mdx): Weblate — это платформа локализации на основе Git, которую можно развернуть на собственном сервере. Она создана для перевода файлов репозитория силами сообщества или команды. General Translation встраивает генерацию переводов в разработку и релизы, опираясь на размеченный JSX и общий контекст продукта. Оставьте свои файлы gettext или перейдите на написание текста непосредственно в коде — тогда отпадёт и необходимость поддерживать каталог исходных сообщений.
- [General Translation или Locize: что выбрать?](https://generaltranslation.com/ru/kb/general-translation-vs-locize.mdx): Locize — система управления переводами от создателей i18next. Она доставляет переводы через CDN, собирает новые ключи из работающего приложения, а также предлагает ИИ-перевод и редактор с контекстом страницы. При этом поддерживать библиотеку интернационализации и её ключи по-прежнему придётся вам. General Translation может стать вашей библиотекой интернационализации и сам переводить строки — или переводить уже имеющиеся у вас файлы i18next.
- [Какое ПО для локализации лучше всего подходит разработчикам?](https://generaltranslation.com/ru/kb/best-localization-software.mdx): Ищите единую систему, которая охватывает весь конвейер — от библиотеки интернационализации в вашем коде до перевода и доставки, — а не собирайте по частям отдельную библиотеку, систему управления переводами и поставщика переводов.
- [Можно ли реализовать i18n без файлов перевода?](https://generaltranslation.com/ru/kb/i18n-without-translation-files.mdx): Да. С gt-react или gt-next контент остаётся встроенным прямо в ваши компоненты внутри компонента `<T>`, а переводы генерируются во время сборки, поэтому не нужно писать ключи и JSON-файлы для каждой локали и следить за их синхронизацией.

## Previous and next questions

- Previous question: [General Translation или Symfony Translation: что выбрать?](https://generaltranslation.com/ru/kb/general-translation-vs-symfony-translation.mdx)
- Next question: [General Translation или vue-i18n: что выбрать?](https://generaltranslation.com/ru/kb/general-translation-vs-vue-i18n.mdx)

## Sitemap

See the [Knowledge Base sitemap](https://generaltranslation.com/ru/kb/sitemap.md) for every article.
