# General Translation Python SDKs: Быстрый старт
URL: https://generaltranslation.com/ru/docs/python/quickstart.mdx
---
title: Быстрый старт
description: Установите Python SDK от General Translation и переведите своё первое приложение на Flask или FastAPI.
related:
links:
- /docs/python/guides/translating-strings
- /docs/python/guides/detecting-locale
- /docs/python/guides/declaring-variables
- /docs/python/guides/storing-translations
---
Python SDK от General Translation переводит пользовательские строки в приложениях Flask и FastAPI. Вы один раз инициализируете его в приложении, а затем оборачиваете строки в маршрутах функцией [`t`](/docs/python/reference/functions/t), которая переводит их в локаль текущего запроса.
Установите интеграцию для своего фреймворка: `gt-flask` для Flask, `gt-fastapi` для FastAPI. Обе интеграции построены на общем runtime `gt-i18n`, который также можно использовать напрямую в проекте без фреймворка.
Python SDK **экспериментальный и нестабильный** — `gt-i18n`, `gt-flask` и `gt-fastapi` пока находятся на версии 0.3.0, и в них возможны ломающие изменения. Требуется Python 3.10 или новее.
## Что умеет Python SDK [#overview]
SDK предоставляет:
* **Перевод строк** с помощью `t` с использованием синтаксиса сообщений ICU.
* **Определение локали для каждого запроса** по заголовку `Accept-Language` или по вашей собственной логике.
* **Фиксированные варианты** с [`derive`](/docs/python/reference/functions/derive) и непереводимые значения с [`declare_var`](/docs/python/reference/functions/declare-var).
* **Доставку переводов через CDN или локально**, сгенерированных с помощью [General Translation CLI](/docs/cli/quickstart).
## Быстрый старт [#quickstart]
Установите интеграцию, добавьте файл конфигурации, инициализируйте её в приложении и переведите строку.
### 1. Установите интеграцию
```bash
pip install gt-flask
```
```bash
pip install gt-fastapi
```
### 2. Настройте локали
Создайте файл `gt.config.json` в корне проекта и укажите в нём идентификатор проекта и `locales`. Описание каждого ключа см. в [справочнике по конфигурации](/docs/python/reference/config).
```json title="gt.config.json"
{
"projectId": "your-project-id",
"defaultLocale": "en",
"locales": ["es", "fr"]
}
```
### 3. Инициализация в приложении
Вызовите `initialize_gt(app)` один раз при запуске. Функция считывает `gt.config.json`, регистрирует определение локали для каждого запроса и заранее загружает переводы. Параметр ключа API не нужен — загрузка через CDN использует `project_id` и `cache_url`.
```python title="app.py"
from flask import Flask
from gt_flask import initialize_gt, t, get_locale
app = Flask(__name__)
initialize_gt(app)
@app.route("/")
def index():
return {"message": t("Hello, world!"), "locale": get_locale()}
```
```python title="main.py"
from fastapi import FastAPI
from gt_fastapi import initialize_gt, t, get_locale
app = FastAPI()
initialize_gt(app)
@app.get("/")
def index():
return {"message": t("Hello, world!"), "locale": get_locale()}
```
### 4. Перевод с использованием переменных
Используйте плейсхолдеры ICU и передавайте значения в виде именованных аргументов.
```python
t("Hello, {name}!", name="Alice")
```
### 5. Сгенерируйте переводы
Используйте [General Translation CLI](/docs/cli/quickstart), чтобы перевести контент перед развертыванием, — тогда переводы будут доступны во время выполнения.
```bash
gt translate
```
## Используйте основную библиотеку без фреймворка [#core]
Если вы не используете Flask или FastAPI, установите `gt-i18n` напрямую. В основной библиотеке нет [`initialize_gt`](/docs/python/reference/functions/initialize-gt) — создайте [`I18nManager`](/docs/python/reference/classes/i18n-manager), зарегистрируйте его с помощью [`set_i18n_manager`](/docs/python/reference/functions/set-i18n-manager) и самостоятельно задайте локаль запроса.
```bash
pip install gt-i18n
```
```python
from gt_i18n import I18nManager, set_i18n_manager, t
manager = I18nManager(default_locale="en", locales=["es", "fr"])
set_i18n_manager(manager)
manager.set_locale("es")
print(t("Hello, world!"))
```
См. [Перевод строк](/docs/python/guides/translating-strings), чтобы узнать о контексте и переменных, и [Определение локали запроса](/docs/python/guides/detecting-locale), чтобы настроить определение локали.
## Next steps
- /docs/python/guides/translating-strings
- /docs/python/guides/detecting-locale
- /docs/python/guides/declaring-variables
- /docs/python/guides/storing-translations