# python: initialize_gt
URL: https://generaltranslation.com/fr/docs/python/api/initialize-gt.mdx
---
title: initialize_gt
description: Référence de l’API pour la fonction de configuration initialize_gt
---
## Vue d’ensemble
La fonction `initialize_gt` configure General Translation pour une application Flask ou FastAPI.
Elle doit être appelée une seule fois avant toute utilisation des fonctions de traduction.
Les paramètres sont automatiquement chargés depuis un fichier `gt.config.json` situé dans le répertoire de travail courant.
Les arguments nommés remplacent les valeurs du fichier de configuration.
```python
from flask import Flask
from gt_flask import initialize_gt
app = Flask(__name__)
initialize_gt(app)
```
```python
from fastapi import FastAPI
from gt_fastapi import initialize_gt
app = FastAPI()
initialize_gt(app)
```
## Référence
### Paramètres
str',
optional: true,
description: "Fonction de rappel personnalisée pour détecter le paramètre régional. Par défaut, analyse l’en-tête Accept-Language.",
},
"load_translations?": {
type: '(locale: str) -> dict[str, str]',
optional: true,
description: "Fonction personnalisée pour charger les traductions d’un paramètre régional.",
},
"eager_loading?": {
type: 'bool',
optional: true,
default: 'True',
description: 'Charge toutes les traductions au démarrage.',
},
"config_path?": {
type: 'str',
optional: true,
description: "Chemin vers un fichier gt.config.json. Par défaut, utilise \"gt.config.json\" dans le répertoire de travail courant.",
},
"load_config?": {
type: '(path: str | None) -> GTConfig',
optional: true,
description: 'Chargeur de configuration personnalisé qui remplace celui par défaut.',
},
}}
/>
### Renvoie
`I18nManager` — l’instance du gestionnaire de traduction configuré.
***
## Fichier de configuration
Créez un `gt.config.json` à la racine de votre projet. Tous les champs sont facultatifs :
```json title="gt.config.json"
{
"projectId": "your-project-id",
"defaultLocale": "en",
"locales": ["es", "fr"],
"cacheUrl": "https://custom-cache.example.com"
}
```
Les paramètres de `gt.config.json` sont utilisés par défaut. Tous les arguments nommés passés à `initialize_gt` priment.
***
## Exemples
### Configuration minimale (avec fichier de configuration)
```python
from flask import Flask
from gt_flask import initialize_gt
app = Flask(__name__)
initialize_gt(app)
```
### Avec un chargeur de traduction personnalisé
```python
from flask import Flask
from gt_flask import initialize_gt
app = Flask(__name__)
def load_translations(locale: str) -> dict[str, str]:
# Chargez les traductions depuis votre propre source
...
initialize_gt(app, load_translations=load_translations)
```
### Avec une détection personnalisée du paramètre régional
```python
from flask import Flask
from gt_flask import initialize_gt
app = Flask(__name__)
def get_locale(request):
return request.args.get("lang", "en")
initialize_gt(app, get_locale=get_locale)
```
***
## Remarques
* `initialize_gt` doit être appelée **une seule fois** avant d’utiliser `t` ou toute autre fonction de traduction.
* Avec Flask, elle enregistre un Hook `before_request` pour détecter le paramètre régional.
* Avec FastAPI, elle enregistre un middleware pour détecter le paramètre régional et enveloppe le cycle de vie de l’application pour le chargement anticipé.