この記事を使用して Foundry プロジェクトを作成し、エージェント、評価、ファイルの構築を開始する前に環境の準備ができていることを確認します。
この記事では、Microsoft Foundry で Foundry プロジェクトを作成する方法について説明します。 プロジェクトを使用すると、ステートフル アプリを構築し、新しいアイデアを探索するときに、エージェント、評価、ファイルなどの作業を整理できます。
組織で、代替名、セキュリティ制御、コスト タグなどのカスタマイズされたAzure構成が必要な場合は、組織のAzure Policy要件に準拠するために、Azure ポータル または template オプションを使用する必要があります。
[前提条件]
Foundry projectの作成に使用する方法を選択するには、次のタブを使用します。
- ポータルを使用する場合は、他の前提条件は必要ありません。
開発環境を設定します。
コードを実行する前に、環境内で az login または az login --use-device-code を実行します。
パッケージのインストール: pip install azure-identity azure-mgmt-cognitiveservices~=13.7.0。 ノートブック セルを使用している場合は、代わりに %pip install を使用します。
pip show azure-mgmt-cognitiveservices を使用して、バージョンが 13.7 以上であることを確認します。
クイック検証: プロジェクトを作成する前に、クライアントをテストして SDK と認証を確認します。
from azure.identity import DefaultAzureCredential
from azure.mgmt.cognitiveservices import CognitiveServicesManagementClient
# Test authentication by instantiating the client
credential = DefaultAzureCredential()
subscription_id = "<your-subscription-id>" # Replace with your subscription ID
client = CognitiveServicesManagementClient(credential, subscription_id)
print("✓ Authentication successful! Ready to create a project.")
次のコードでスクリプトを開始し、この記事全体で使用される client 接続と変数を作成します。 この例では、米国東部にprojectを作成します。
from azure.identity import DefaultAzureCredential
from azure.mgmt.cognitiveservices import CognitiveServicesManagementClient
subscription_id = 'your-subscription-id'
resource_group_name = 'your-resource-group-name'
foundry_resource_name = 'your-foundry-resource-name'
foundry_project_name = 'your-foundry-project-name'
location = 'eastus'
client = CognitiveServicesManagementClient(
credential=DefaultAzureCredential(),
subscription_id=subscription_id,
api_version="2025-04-01-preview"
)
(省略可能)複数のアカウントがある場合は、使用するMicrosoft Entra IDのテナント ID を DefaultAzureCredential に追加します。
DefaultAzureCredential(interactive_browser_tenant_id="<TENANT_ID>")
# Set your default subscription
az account set --subscription "{subscription-name}"
Foundry projectを作成する
次のいずれかの方法を使用します。
これらの手順では、基本的な既定の設定を使用して新しいAzure リソースを作成する方法を提供します。
Foundry projectを作成するには、次の手順に従います。
-
Microsoft Foundry にサインイン>。
「新しいファウンドリー」トグルがオンになっていることを確認します。 これらの手順は Foundry (新規) を参照します。
作業中のprojectが左上隅に表示されます。
新しいprojectを作成するには、project名を選択し、新しいprojectを選択します。
projectに名前を付け、Create project を選択します。 または、詳細オプションについては、次のセクションを参照してください。
詳細オプション
Foundry リソースに Foundry projectを作成します。 projectを作成すると、ポータルによってこのリソースが自動的に作成されます。 使用する既存の リソース グループ を選択するか、既定値のままにして新しいリソース グループを作成します。
ヒント
特に開始時には、プロジェクト用に新しいリソースグループを作成します。 リソース グループを使用すると、projectとそのすべてのリソースをまとめて簡単に管理できます。
[場所] を選択するか、既定値を使用します。 場所は、project リソースがホストされているリージョンです。
を選択してを作成します。 リソースの作成の進行状況が表示されます。 プロセスが完了すると、projectが作成されます。
Foundry projectを作成するには:
次のコードを追加して、前提条件セクションの変数と client 接続を使用して Foundry プロジェクトを作成します。
# Create resource
resource = client.accounts.begin_create(
resource_group_name=resource_group_name,
account_name=foundry_resource_name,
account={
"location": location,
"kind": "AIServices",
"sku": {"name": "S0",},
"identity": {"type": "SystemAssigned"},
"properties": {
"allowProjectManagement": True,
"customSubDomainName": foundry_resource_name
}
}
)
# Wait for the resource creation to complete
resource_result = resource.result()
# Create default project
project = client.projects.begin_create(
resource_group_name=resource_group_name,
account_name=foundry_resource_name,
project_name=foundry_project_name,
project={
"location": location,
"identity": {
"type": "SystemAssigned"
},
"properties": {}
}
)
参照: CognitiveServicesManagementClient。
リソース グループを作成するか、既存のものを使用します。 たとえば、my-foundry-rgでeastusを作成します。
az group create --name my-foundry-rg --location eastus
Foundry リソースを作成します。 たとえば、my-foundry-resource リソース グループにmy-foundry-rgを作成します。
az cognitiveservices account create \
--name my-foundry-resource \
--resource-group my-foundry-rg \
--kind AIServices \
--sku s0 \
--location eastus \
--allow-project-management
--allow-project-management フラグを使用すると、このリソース内project作成できます。
リソースのカスタム サブドメインを作成します。 custom domain名はグローバルに一意である必要があります。
my-foundry-resource取得した場合は、より一意の名前を試してください。
az cognitiveservices account update \
--name my-foundry-resource \
--resource-group my-foundry-rg \
--custom-domain my-foundry-resource
プロジェクトを作成します。 たとえば、my-foundry-project で my-foundry-resource を作成します。
az cognitiveservices account project create \
--name my-foundry-resource \
--resource-group my-foundry-rg \
--project-name my-foundry-project \
--location eastus
projectが作成されたことを確認します。
az cognitiveservices account project show \
--name my-foundry-resource \
--resource-group my-foundry-rg \
--project-name my-foundry-project
出力には、リソース ID を含むprojectプロパティが表示されます。
リファレンス: az cognitiveservices アカウント
同じリソースに複数のプロジェクトを作成する
既存の Foundry リソースに複数の Foundry プロジェクトを作成して、セキュリティ、デプロイ、接続されたツールなどのチームコラボレーションと共有リソースaccessを有効にします。 このセットアップは、開発者が構成済み環境のセットアップ内でセルフサービス探索機能を必要とする制限付きAzure サブスクリプションに最適です。
Azure子リソースとしての Foundry プロジェクトには、独自のアクセス制御が割り当てられる可能性がありますが、親リソースからのネットワーク セキュリティ、デプロイ、Azure ツール統合などの一般的な設定を共有します。
Foundry のすべての機能でプロジェクトでの作業の整理がまだサポートされているわけではありませんが、リソースの最初の "既定" projectはより強力です。 コード オプションを使用する場合は、UX エクスペリエンスのタグ "default" とリソース プロパティ "is_default" で識別できます。
| 特徴 |
既定のプロジェクト |
その他のプロジェクト |
| モデル推論 |
✅ |
✅ |
| プレイグラウンド |
✅ |
✅ |
| Agents |
✅ |
✅ |
| Evaluations |
✅ |
✅ |
| トレース |
✅ |
✅ |
| データセット |
✅ |
✅ |
| Indexes |
✅ |
✅ |
| Foundry SDK と API |
✅ |
✅ |
| コンテンツの理解 |
✅ |
✅ |
| OpenAI SDK と API |
✅ |
応答、ファイル、会話 |
| OpenAI バッチ処理、ファイン チューニング、保存済み補完 |
✅ |
- |
| 言語の微調整 |
✅ |
✅ |
| 音声の微調整 |
✅ |
- |
| 接続 |
✅ |
✅ |
project設定を表示する
Home project ページに、projectのproject エンドポイントと API キーが表示されます。 Microsoft Entra ID認証を使用する場合、API キーは必要ありません。
# Get project
project = client.projects.get(
resource_group_name=resource_group_name,
account_name=foundry_resource_name,
project_name=foundry_project_name
)
print(project)
参照: CognitiveServicesManagementClient。
projectの設定を表示するには、az cognitiveservices account project show コマンドを使用します。 例えば次が挙げられます。
az cognitiveservices account project show \
--name my-foundry-resource \
--resource-group my-foundry-rg \
--project-name my-foundry-project
チーム メンバーへのアクセス権を付与する
チームのプロジェクトを作成した場合は、Azure AI User ロールをチーム メンバーに割り当てて、プロジェクトとそのリソースを使用できるようにします。 このロールは、AI アプリケーションの構築とテストに必要な最小限のアクセス許可を提供します。 割り当てる必要があるその他のロールについては、Microsoft Foundry の Role ベースのアクセス制御に関するページを参照してください。
Important
ロールの割り当てを完了するには、プロジェクトの 所有者 などのロールが必要です。 詳細については、Microsoft Foundry の Role ベースのアクセス制御に関するページを参照してください。
- Foundry ポータルで、右上のナビゲーションで [操作 ] を選択します。
- 左側のウィンドウで [ 管理者 ] を選択します。
- テーブルでプロジェクト名を選択します。
- 右上にある [ ユーザーの追加] を選択します。
- チーム メンバーのメール アドレスを入力します。
- [] を選択し、[] を追加します。
チーム メンバーまたはセキュリティ グループごとに、これらの手順を繰り返します。
ヒント
複数のユーザーを一度に追加するには、個々の電子メール アドレスではなく、Microsoft Entra セキュリティ グループを使用します。
Azure CLIポータルまたは Foundry ポータルを使用して、ロールの割り当てを管理します。 Python SDK では、ロールの割り当て操作はサポートされていません。
プロジェクトのリソース ID を取得します。
PROJECT_ID=$(az cognitiveservices account project show \
--name my-foundry-resource \
--resource-group my-foundry-rg \
--project-name my-foundry-project \
--query id -o tsv)
Azure AI User ロールをチーム メンバーに割り当てます。
az role assignment create \
--role "Azure AI User" \
--assignee "user@contoso.com" \
--scope $PROJECT_ID
個々のユーザーではなくセキュリティ グループを追加するには:
az role assignment create \
--role "Azure AI User" \
--assignee-object-id "<security-group-object-id>" \
--assignee-principal-type Group \
--scope $PROJECT_ID
ロールの割り当てを確認します。
az role assignment list \
--scope $PROJECT_ID \
--role "Azure AI User" \
--output table
リファレンス: az role assignment
チーム メンバーのアクセスを確認する
Microsoft Foundryプロジェクトの一覧からプロジェクトを選択して、チーム メンバーにアクセス権を確認してもらいます。
チーム メンバーがプロジェクトにアクセスできない場合は、ロールの割り当てが正常に完了したことを確認します。 正しいメール アドレスまたはセキュリティ グループ ID を使用したことを確認します。 チーム メンバーのAzure アカウントが同じMicrosoft Entra テナントにあることを確認します。
プロジェクトを削除する
-
Microsoft Foundry にサインイン>。
「新しいファウンドリー」トグルがオンになっていることを確認します。 これらの手順は Foundry (新規) を参照します。
- 右上のナビゲーションで、[操作] を選択 します。
- 左側のウィンドウで、[管理者] を選択 します。
- プロジェクトを選んでください。
- 右上にあるごみ箱アイコンを選択して、projectを削除します。
このコードでは、前提条件からの変数と client 接続を使用します。 1 つのプロジェクトを削除するには:
client.projects.begin_delete(
resource_group_name, foundry_resource_name, foundry_project_name
)
参照: CognitiveServicesManagementClient。
Foundry リソースとそのすべてのプロジェクトを削除します。
# Delete projects
projects = client.projects.list(resource_group_name, foundry_resource_name)
for project in projects:
print("Deleting project:", project.name)
client.projects.begin_delete(resource_group_name, foundry_resource_name,
project_name=project.name.split('/')[-1]
).wait()
# Delete resource
print("Deleting resource:", foundry_resource_name)
client.accounts.begin_delete(resource_group_name, foundry_resource_name).wait()
参照: CognitiveServicesManagementClient。
Important
慎重に使用してください。 削除後にprojectを回復することはできません。
関連するコンテンツ