設定の優先順位
N.E.K.O. はレイヤード優先順位システムで設定値を解決します。優先度の高いソースが低いものをオーバーライドします。
優先順位
┌─────────────────────────────────┐ 最高優先度
│ 1. 環境変数 │ NEKO_* プレフィックス
│ (シェルまたは .env で設定) │
├─────────────────────────────────┤
│ 2. ユーザー設定ファイル │ core_config.json
│ (~/Documents/N.E.K.O/) │ user_preferences.json
├─────────────────────────────────┤
│ 3. API プロバイダー設定 │ config/api_providers.json
│ (プロジェクトディレクトリ) │
├─────────────────────────────────┤
│ 4. コードのデフォルト値 │ config/__init__.py
│ (ハードコードされたフォールバック)│
└─────────────────────────────────┘ 最低優先度解決の例
要約モデルの場合:
NEKO_SUMMARY_MODEL環境変数を確認core_config.jsonのカスタム要約モデル URL/名前を確認- 選択された Assist プロバイダーの
api_providers.json内のsummary_modelを確認 config/__init__.pyのDEFAULT_SUMMARY_MODEL = "qwen-plus"にフォールバック
各レイヤーの使い分け
| レイヤー | 最適な用途 |
|---|---|
| 環境変数 | Docker デプロイ、CI/CD、シークレット管理 |
| ユーザー設定ファイル | Web UI による設定(自動管理) |
| API プロバイダー設定 | プロバイダーごとのデフォルトモデル割り当て |
| コードのデフォルト値 | 他に何も設定されていない場合のフォールバック値 |
Docker 固有の注意事項
Docker デプロイでは、環境変数が主要な設定メカニズムです。entrypoint.sh スクリプトは起動時に NEKO_* 環境変数から core_config.json を自動的に生成します。
詳細は Docker デプロイ を参照してください。
