メインコンテンツまでスキップ

設定

ChatWalaʻau は .env ファイルで設定します。chatwalaau init でテンプレートを生成 し、値を編集して再起動します。

必須設定

ChatWalaʻau には少なくとも 1 つのチャットプロバイダー(Azure OpenAIAnthropic (Claude)OpenAIMicrosoft Foundry、またはその組み合わせ)が 必要です。利用できるものを設定してください。開始に必要なのは 1 つだけです。設定した 全プロバイダーのモデルは同じセレクターに表示され、ターンごとに切り替えられます。

v0.107.0 で変更

チャットモデルは モデルオファリングカタログmodel_offerings.jsonc)で のみ設定します。レガシーのプロバイダ別モデル変数(AZURE_OPENAI_MODELS, ANTHROPIC_MODELS, OPENAI_MODELS, FOUNDRY_MODELS, MODEL_MAX_CONTEXT_TOKENS, ANTHROPIC_HOSTING、およびプロバイダ別のチャット endpoint/key 変数)は 削除されましたchatwalaau init(最初のモデル設定ウィザード)、 chatwalaau models add、またはアプリ内の Model Settings 画面で設定してください。

プロバイダーの認証情報を .env に設定します(画像・RAG・音声と共有):

AZURE_OPENAI_ENDPOINT=https://<your-resource>.openai.azure.com/
AZURE_OPENAI_API_KEY=<your-key> # または Entra ID で認証(「認証」節を参照)
# 必要に応じて ANTHROPIC_API_KEY / OPENAI_API_KEY -- カタログから NAME で参照

次に model_offerings.jsoncchat offering を最低 1 つ記述します。各 offering は provider(azure-openai / anthropic / openai / foundry)、model_ref(実際のモデル / デプロイ名)、任意の endpoint / base_url / hosting / context_window、および api_key_env(キーを保持する環境変数の NAME)を自己記述します。1 つのエンドポイントで 複数のモデルファミリーを提供でき、direct と Foundry ホストの Claude は offering ごとの hosting で併用できます:

{
"offerings": [
{ "id": "gpt-5.5", "provider": "azure-openai", "model_ref": "gpt-5.5",
"endpoint": "${AZURE_OPENAI_ENDPOINT}", "default": true, "context_window": 1050000 },
{ "id": "claude", "provider": "anthropic", "hosting": "direct",
"model_ref": "claude-sonnet-4-5-20250929", "api_key_env": "ANTHROPIC_API_KEY" },
{ "id": "gpt-5.1", "provider": "openai", "model_ref": "gpt-5.1", "api_key_env": "OPENAI_API_KEY" },
{ "id": "deepseek", "provider": "foundry", "model_ref": "deepseek-v4-pro",
"endpoint": "https://<resource>.services.ai.azure.com/api/projects/<project>" }
]
}

azure-openai の offering は endpoint/api_key_env を省略すると、共有の AZURE_OPENAI_ENDPOINT + Azure 認証レーンにフォールバックします。カタログが無い 非 demo デプロイは起動時に警告を出してそのまま起動し(Model Settings 画面で 修正可能)、チャットは利用できず、実行しようとした時点で案内メッセージを返します。

このファイルは手で編集する必要はありません。最初のモデルは chatwalaau init の任意 ステップ(--no-model でスキップ)として、あるいは任意のタイミングで chatwalaau models add で設定でき、以降はチャットサイドバーのモデル設定画面から 管理できます -- 保存はホットリロードで即座に適用され、再起動は不要です。

マルチモデル切り替え、モデルオファリングカタログ、Anthropic の foundry ホスティング、OpenAI / Microsoft Foundry プロバイダー、メッセージ単位オプションは モデルと推論 を参照。

認証

各プロバイダーへの認証方法を選べます。API キーは(提供されるプロバイダーでは) 最も簡単で、Azure CLI もテナントも不要です。Microsoft Entra ID レーンは Azure OpenAI、Foundry 上の Anthropic、そして Microsoft Foundry(Entra 専用)で利用できます。

Azure OpenAI

バックエンドは Azure OpenAI の資格情報を 4 つのレーンで解決し、2 つの変数で 選択します。動作環境に合うものを選んでください。

レーン使う場面.env 設定
api-key初回 / PoC / CI / コンテナ、テナント跨ぎAZURE_OPENAI_API_KEY=<key>
cli(既定)az login 可能なローカル開発(Entra ID)AZURE_CREDENTIAL_MODE=cli(未設定可)
managed-identityAzure App Service / Container Apps / AKS / Functions / VM(Entra ID)AZURE_CREDENTIAL_MODE=managed-identity
default1 つのイメージを複数環境で(Entra ID 自動判別)AZURE_CREDENTIAL_MODE=default

優先順位: AZURE_OPENAI_API_KEY は常に AZURE_CREDENTIAL_MODE より優先されます。 つまり API キーを設定すれば az login は不要です。プロセスごとに、最初の資格情報解決 時にアクティブなレーンが INFO ログ 1 行で示されます(キー値は決してログ出力されません)。

クラウドデプロイ

managed-identity では、コンピュートにマネージド ID を割り当て、Azure OpenAI リソースに Cognitive Services OpenAI User ロールを付与します。ユーザー割り当て ID では AZURE_CLIENT_ID も必要です。フェデレーション ID を使う AKS ワークロードは AZURE_CREDENTIAL_MODE=default を使うと SDK の WorkloadIdentityCredential が自動 選択されます。chatwalaau CLI は、アクティブなレーンが cli 以外のとき az account show の事前チェックを省略します。

Anthropic (Claude)

Anthropic には 2 つのホスティング(ANTHROPIC_HOSTING=direct(既定)または foundry)があり、それぞれ認証が異なります:

ホスティング認証.env
direct(Anthropic 公開 API)API キーANTHROPIC_API_KEY=sk-ant-...
foundry(Azure AI Foundry 上の Anthropic)API キーANTHROPIC_FOUNDRY_API_KEY=<key>
foundryMicrosoft Entra IDANTHROPIC_FOUNDRY_API_KEY を空にし、AZURE_CREDENTIAL_MODE + AZURE_TENANT_ID を再利用

Foundry のエンドポイント変数と注意点は モデルと推論 -> Anthropic プロバイダー を参照。

OpenAI(direct)

OpenAI 公開 API の認証は API キーのみです -- Entra ID レーンはありません。

認証.env
API キーOPENAI_API_KEY=sk-...(OpenAI 互換ゲートウェイ用に任意の OPENAI_BASE_URL

詳細は モデルと推論 -> OpenAI プロバイダー を参照。

Microsoft Foundry

Foundry プロジェクトエンドポイントの認証は Entra ID のみです -- API キーレーンは ありません。このプロバイダーは Azure OpenAI の Entra レーン (AZURE_CREDENTIAL_MODE + AZURE_TENANT_ID)を再利用します。 AZURE_OPENAI_API_KEY は適用されません。

認証.env
Microsoft Entra IDFOUNDRY_PROJECT_ENDPOINT=https://<resource>.services.ai.azure.com/api/projects/<project>AZURE_CREDENTIAL_MODE + AZURE_TENANT_ID を再利用

サインインする ID にプロジェクトの Foundry データプレーンロール(例: Azure AI User)を付与してください。詳細は モデルと推論 -> Microsoft Foundry プロバイダー を参照。

.env の構成

テンプレートは設定を機能ごとにまとめています。ほとんどの機能は オプトインで既定 オフのため、必須の Azure 設定だけでサーバは動作します。各機能ページに使用する変数 が記載されており、本ページはその入口です(全変数表ではありません)。

リリース間で .env を最新に保つ

新しいリリースは多くの場合、既定オフの新設定で価値を追加するため、pip install -U 後もサーバは動き続けます。しかし、どの設定が増えたかは自分の .env からは分からず、 古いキーも溜まります。2 つのオフラインコマンドが、インストール済みリリース同梱の テンプレートに対して .env を突き合わせます:

chatwalaau env diff # 生成時以降に追加 / 削除された設定
chatwalaau env diff --json # 機械可読

chatwalaau env sync # 突き合わせのプレビュー(ドライラン)
chatwalaau env sync --write # タイムスタンプ付きバックアップ後に適用
  • 値はそのまま保持 -- 更新されるのはレイアウトとキーごとのコメントのみ。
  • 何も削除しない -- テンプレートにないキーは Unmanaged keys セクションへ移動。
  • --write の前に必ず タイムスタンプ付きバックアップ.env.<UTC>.bak)を作成。

起動時、追加された新キーが .env に不足していると 1 行ログで通知します。

次のステップ