# General Translation Python SDKs: Quickstart
URL: https://generaltranslation.com/es/docs/python/quickstart.mdx
---
title: Quickstart
description: Instala el SDK de Python de General Translation y traduce tu primera app de Flask o FastAPI.
related:
links:
- /docs/python/guides/translating-strings
- /docs/python/guides/detecting-locale
- /docs/python/guides/declaring-variables
- /docs/python/guides/storing-translations
---
El SDK de Python de General Translation traduce las cadenas visibles para el usuario en apps de Flask y FastAPI. Lo inicializas una sola vez en tu app y luego envuelves las cadenas de tus rutas con la función [`t`](/docs/python/reference/functions/t), que las traduce a la configuración regional de la solicitud actual.
Instala la integración para tu framework: `gt-flask` para Flask y `gt-fastapi` para FastAPI. Ambas se basan en el runtime compartido `gt-i18n`, que también puedes usar directamente en un proyecto sin framework.
El SDK de Python es **experimental e inestable**: `gt-i18n`, `gt-flask` y `gt-fastapi` están en la versión 0.3.0 y pueden introducir cambios incompatibles. Requiere Python 3.10 o posterior.
## Qué hace el SDK de Python [#overview]
El SDK te ofrece:
* **traducción de cadenas** con `t`, usando la sintaxis de mensajes ICU.
* **detección de la configuración regional en cada solicitud** a partir de la cabecera `Accept-Language`, o mediante tu propia lógica.
* **variantes finitas** con [`derive`](/docs/python/reference/functions/derive) y valores no traducibles con [`declare_var`](/docs/python/reference/functions/declare-var).
* **entrega de traducciones por CDN o de forma local** generadas por la [CLI de General Translation](/docs/cli/quickstart).
## Quickstart [#quickstart]
Instala la integración, agrega un archivo de configuración, inicialízala en tu aplicación y traduce una cadena.
### 1. Instala la integración
```bash
pip install gt-flask
```
```bash
pip install gt-fastapi
```
### 2. Configura tus locales
Crea un `gt.config.json` en la raíz de tu proyecto con tu ID del proyecto y tus locales. Consulta la [referencia de configuración](/docs/python/reference/config) para ver todas las claves.
```json title="gt.config.json"
{
"projectId": "your-project-id",
"defaultLocale": "en",
"locales": ["es", "fr"]
}
```
### 3. Inicializa con tu aplicación
Llama a `initialize_gt(app)` una vez al iniciar la aplicación. Lee `gt.config.json`, registra la detección de configuración regional para cada solicitud y precarga las traducciones. No hay ningún parámetro de clave de API: la carga desde la CDN usa `project_id` y `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. Traduce con variables
Usa marcadores de posición de ICU y pasa los valores como argumentos con nombre.
```python
t("Hello, {name}!", name="Alice")
```
### 5. Generar traducciones
Usa la [CLI de General Translation](/docs/cli/quickstart) para traducir tu contenido antes de desplegarlo, de modo que las traducciones estén disponibles en tiempo de ejecución.
```bash
gt translate
```
## Usa la biblioteca principal sin un framework [#core]
Si no usas Flask o FastAPI, instala `gt-i18n` directamente. No existe [`initialize_gt`](/docs/python/reference/functions/initialize-gt) en la biblioteca principal; crea un [`I18nManager`](/docs/python/reference/classes/i18n-manager), regístralo con [`set_i18n_manager`](/docs/python/reference/functions/set-i18n-manager) y establece tú mismo la configuración regional de la petición.
```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!"))
```
Consulta [Traducir cadenas](/docs/python/guides/translating-strings) para ver el contexto y las variables, y [Detectar la configuración regional de la solicitud](/docs/python/guides/detecting-locale) para personalizar la detección de la configuración regional.
## Next steps
- /docs/python/guides/translating-strings
- /docs/python/guides/detecting-locale
- /docs/python/guides/declaring-variables
- /docs/python/guides/storing-translations