# General Translation Python SDKs: 翻訳をローカルに保存する
URL: https://generaltranslation.com/ja/docs/python/guides/storing-translations.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Python で、General Translation の翻訳を CDN ではなくローカルファイルから読み込む方法。

デフォルトでは、Python SDK は General Translation の CDN から翻訳を読み込みます。代わりに、翻訳ファイルを生成してアプリに含め、`load_translations` コールバックを使って読み込むこともできます。これにより、実行時の CDN への依存をなくせますが、翻訳を更新するには再デプロイが必要になります。

## ローカルの出力先パスを設定する [#configure]

`gt.config.json` で、`gt` ファイルの出力先を、`[locale]` プレースホルダーを使ってプロジェクト内のパスに設定します。

```json title="gt.config.json"
{
  "defaultLocale": "en",
  "locales": ["es", "fr"],
  "files": { "gt": { "output": "translations/[locale].json" } }
}
```

## ファイルを生成する [#generate]

[CLI](/docs/cli/quickstart) を実行してコンテンツを翻訳し、ロケールごとに1つのファイルを生成します。

```bash
gt translate
```

## 初期化時に読み込む [#load]

ロケールごとのファイルを読み込んで dict を返す `load_translations` コールバックを [`initialize_gt`](/docs/python/reference/functions/initialize-gt) に渡します。

```python
import json
from pathlib import Path

def load_translations(locale: str) -> dict[str, str]:
    path = Path("translations") / f"{locale}.json"
    return json.loads(path.read_text()) if path.exists() else {}

initialize_gt(
    app,
    default_locale="en",
    locales=["es", "fr"],
    load_translations=load_translations,
)
```

ローカルローダーを設定すると、翻訳はディスクから読み込まれ、CDN へのリクエストは発生しません。CDN 配信に戻すには、`load_translations` を削除し、`project_id` を設定してください ([Python SDK を設定する](/docs/python/guides/configuring#delivery) を参照) 。

## Next steps

- /docs/python/guides/configuring
- /docs/python/guides/translating-strings
- /docs/python/guides/detecting-locale
- /docs/python/guides/declaring-variables

## Sitemap

See the full [sitemap](https://generaltranslation.com/sitemap.md) for all pages.
