# python: initialize_gt URL: https://generaltranslation.com/es/docs/python/api/initialize-gt.mdx --- title: initialize_gt description: Referencia de la API para la función de inicialización initialize_gt --- ## Descripción general La función `initialize_gt` configura General Translation para una aplicación de Flask o FastAPI. Debe llamarse una sola vez antes de usar cualquier función de traducción. La configuración se carga automáticamente desde un archivo `gt.config.json` ubicado en el directorio de trabajo actual. Cualquier argumento con palabra clave sobrescribe los valores del archivo de configuración. ```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) ``` ## Referencia ### Parámetros str', optional: true, description: 'Callback personalizado para detectar la configuración regional. De forma predeterminada, analiza el encabezado Accept-Language.', }, "load_translations?": { type: '(locale: str) -> dict[str, str]', optional: true, description: 'Función personalizada para cargar traducciones de una configuración regional.', }, "eager_loading?": { type: 'bool', optional: true, default: 'True', description: 'Carga todas las traducciones al iniciar.', }, "config_path?": { type: 'str', optional: true, description: 'Ruta a un archivo gt.config.json. De forma predeterminada, usa "gt.config.json" en el CWD.', }, "load_config?": { type: '(path: str | None) -> GTConfig', optional: true, description: 'Cargador de configuración personalizado que sustituye al predeterminado.', }, }} /> ### Devuelve `I18nManager` — la instancia configurada del gestor de traducción. *** ## Archivo de configuración Crea un `gt.config.json` en la raíz del proyecto. Todos los campos son opcionales: ```json title="gt.config.json" { "projectId": "your-project-id", "defaultLocale": "en", "locales": ["es", "fr"], "cacheUrl": "https://custom-cache.example.com" } ``` La configuración de `gt.config.json` se usa de forma predeterminada. Cualquier argumento con palabra clave que se pase a `initialize_gt` prevalece. *** ## Ejemplos ### Configuración mínima (con archivo de configuración) ```python from flask import Flask from gt_flask import initialize_gt app = Flask(__name__) initialize_gt(app) ``` ### Con un cargador de traducciones personalizado ```python from flask import Flask from gt_flask import initialize_gt app = Flask(__name__) def load_translations(locale: str) -> dict[str, str]: # Carga las traducciones desde tu propia fuente ... initialize_gt(app, load_translations=load_translations) ``` ### Con detección de configuración regional personalizada ```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) ``` *** ## Notas * Se debe llamar a `initialize_gt` **una sola vez** antes de usar `t` o cualquier otra función de traducción. * En Flask, registra un hook `before_request` para detectar la configuración regional. * En FastAPI, registra un middleware para detectar la configuración regional y envuelve el ciclo de vida de la aplicación para habilitar la carga anticipada.