適用対象:Foundry (クラシック) ポータル。 この記事は、新しい Foundry ポータルでは使用できません。
新しいポータルの詳細を確認します。
メモ
この記事のリンクは、現在表示している Foundry (クラシック) ドキュメントではなく、新しい Microsoft Foundry ドキュメントのコンテンツを開く場合があります。
警告
プロンプト フロー機能の開発は、2026 年 4 月 20 日に終了しました。 この機能は、2027 年 4 月 20 日に完全に廃止されます。 提供終了日に、プロンプト フローは読み取り専用モードになります。 既存のフローは、その日付まで動作し続けます。
Recommended action: 2027 年 4 月 20 日より前に、プロンプト フローワークロードを Microsoft Agent Framework に移行します。
プロンプト フローを実行するには、コンピューティング セッションが必要です。 Microsoft Foundry を使用して、プロンプト フロー コンピューティング セッションを作成および管理します。
プロンプト フロー コンピューティング セッションには、必要なすべての依存関係パッケージを含む Docker イメージなど、アプリケーションの実行に必要なコンピューティング リソースがあります。 フローの実行に加えて、Foundry では、プロンプトまたはコード コンテンツを更新するときに、コンピューティング セッションを使用して、フロー内に組み込まれているツールの精度と機能を確保します。
前提 条件
重要
この記事では、ハブ ベースのプロジェクトのレガシ サポートを提供します。 Foundry プロジェクトでは機能しません。 「自分が持っているプロジェクトの種類を確認する方法」を参照してください。
SDK 互換性に関するメモ: コード例では、特定のMicrosoft Foundry SDK バージョンが必要です。 互換性の問題が発生した場合は、 ハブ ベースから Foundry プロジェクトへの移行を検討してください。
- アクティブなサブスクリプションを持つAzure アカウント。 お持ちでない場合は、無料試用版サブスクリプションを含む無料Azure アカウントを作成します。
- ない場合は、 ハブベースのプロジェクトを作成します。
コンピューティング セッションを作成する
コンピューティング セッションを開始するときに、既定の設定を使用するか、詳細設定をカスタマイズできます。
既定の設定でコンピューティング セッションを開始する
既定では、コンピューティング セッションではflow.dag.yaml内ので定義されている環境が使用されます。 これは、ワークスペースに十分なクォータがある仮想マシン (VM) サイズのサーバーレス コンピューティングで実行されます。
ヒント
Microsoft Foundry ポータルで左ペインをカスタマイズできるため、次の手順に示す項目とは異なる項目が表示される場合があります。 探しているものが見つからない場合は、左側のウィンドウの下部にある[...もっと見る]を選択してください。
- Foundry ポータルでプロジェクトに移動します。
- 左側のウィンドウで、[ プロンプト フロー ] を選択し、実行するフローを選択します。
- プロンプト フローの上部のツール バーで、[ コンピューティング セッションの開始] を選択します。
詳細設定を使用してコンピューティング セッションを開始する
詳細設定では、コンピューティングの種類を選択できます。 サーバーレス コンピューティングインスタンスとコンピューティング インスタンスを選択できます。
Foundry ポータルでプロジェクトに移動します。
左側のウィンドウで、[ プロンプト フロー ] を選択し、実行するフローを選択します。
プロンプト フローの上部のツール バーから、[ コンピューティング セッションの開始 ] ボタンの右側にあるドロップダウン矢印を選択します。 [ 詳細設定で開始] を選択して、コンピューティング セッションをカスタマイズします。
サーバーレス コンピューティングインスタンスとコンピューティング インスタンスを選択できます。
サーバーレス コンピューティングを選択した場合は、次の設定を行うことができます。
- コンピューティング セッションで使用する VM サイズをカスタマイズします。
- アイドル時間をカスタマイズします。使用されていない場合は、コンピューティング セッションを自動的に削除することでコードを節約できます。
- ユーザー割り当てマネージド ID を設定します。 コンピューティング セッションでは、この ID を使用して基本イメージをプルし、パッケージをインストールします。 ユーザー割り当てマネージド ID が Azure Container Registry のプル アクセス許可を持っていることを確認します。
ユーザー割り当て ID を設定しない場合、プロンプト フローでは既定でユーザー ID が使用されます。 ワークスペースのユーザー割り当て ID を作成および更新する方法について説明します。
コンピューティング インスタンスを選択した場合は、アイドルシャットダウン時間のみを設定できます。
これは既存のコンピューティング インスタンスであるため、VM のサイズは固定されており、コンピューティング セッション側では変更できません。
このコンピューティング セッションに使用される ID もコンピューティング インスタンスで定義され、既定ではユーザー ID が使用されます。 コンピューティング インスタンスに ID を割り当てる方法の詳細
アイドル シャットダウン時間は、コンピューティング セッションのライフ サイクルを定義するために使用されます。 コンピューティング セッションが設定した時間アイドル状態の場合は、自動的に削除されます。 コンピューティング インスタンスでアイドル シャットダウンが有効になっている場合は、シャットダウンされますが、削除されません。
[次へ] を選択して、基本イメージの設定を指定します。 既定の基本イメージを使用するか、カスタム基本イメージを指定します。 カスタマイズした基本イメージを選択する場合は、イメージ URL とイメージ タグを指定します。 パブリック Docker レジストリまたは Azure Container Registry (ACR) 内のイメージのみがサポートされています。 ACR でイメージを指定する場合は、自分 (またはユーザー割り当てマネージド ID) に ACR プルアクセス許可があることを確認します。
[ 次へ ] を選択して設定を確認します。
[ 適用] を選択し、コンピューティング セッションを開始 してコンピューティング セッションを開始します。
コンピューティング セッションを管理する
コンピューティング セッションを管理するには、フロー ページの上部のツール バーで 実行されているコンピューティング セッション を選択します。
- コンピューティング セッションの設定を変更 すると、コンピューティング セッション構成ページが開き、コンピューティング セッションの VM 側とアイドル時間を定義できます。
-
requirements.txtからパッケージをインストール プロンプト フロー UI で
requirements.txtを開いて、パッケージを追加できます。 -
インストールされているパッケージを表示 すると、コンピューティング セッションにインストールされているパッケージが表示されます。 これには、基本イメージにベイクされたパッケージと、フロー フォルダー内の
requirements.txtファイルで指定されたパッケージが含まれます。 - コンピューティング セッションをリセットすると 、現在のコンピューティング セッションが削除され、同じ環境で新しいコンピューティング セッションが作成されます。 パッケージの競合が発生した場合は、このオプションを試すことができます。
- コンピューティング セッションを停止すると 、現在のコンピューティング セッションが削除されます。 基になるサーバーレス コンピューティングにアクティブなコンピューティング セッションがない場合は、コンピューティング リソースも削除されます。 コンピューティング セッションがコンピューティング インスタンス上にある場合、セッションを停止すると、インスタンスがアイドル状態になります。
フロー フォルダーの requirements.txt ファイルにパッケージを追加することで、このフローの実行に使用する環境をカスタマイズできます。 このファイルにさらにパッケージを追加したら、次のいずれかのオプションを選択します。
- フロー フォルダーにトリガーを
pip install -r requirements.txtします。 インストールするパッケージによっては、プロセスに数分かかることがあります。 -
「保存のみ」は
requirements.txtファイルを保存するだけです。 パッケージは後で自分でインストールできます。
メモ
requirements.txtの場所やファイル名も変更できますが、フロー フォルダー内のflow.dag.yaml ファイルでも変更してください。
promptflowとpromptflow-toolsのバージョンは、コンピューティング セッションの基本イメージに既に含まれているため、requirements.txtにピン留めしないでください。
Azure DevOpsのプライベート フィードにパッケージを追加する
Azure DevOpsでプライベート フィードを使用する場合は、次の手順に従います。
ユーザー割り当てマネージド ID を作成し、Azure DevOps組織にこの ID を追加します。 詳細については、「 サービス プリンシパルとマネージド ID の使用」を参照してください。
メモ
[ ユーザーの追加 ] ボタンが表示されない場合は、このアクションを実行するために必要なアクセス許可がない可能性があります。
プライベート フィード URL に
{private}を追加します。 たとえば、Azure DevOps でtest_packageからtest_feedをインストールする場合は、-i https://{private}@{test_feed_url_in_azure_devops}にrequirements.txtを追加します。-i https://{private}@{test_feed_url_in_azure_devops} test_packageコンピューティング セッションが実行されていない場合は、[ 詳細設定で開始] でユーザー割り当てマネージド ID を指定するか、コンピューティング セッションが実行されている場合は [編集] ボタンを使用します。
基本イメージを変更する
既定では、基本イメージとして最新のプロンプト フロー イメージを使用します。 別の基本イメージを使用する場合は、独自の基本イメージをビルドする必要があります。 docker イメージは、プロンプト フローの基本イメージ ( mcr.microsoft.com/azureml/promptflow/promptflow-runtime:<newest_version>) からビルドする必要があります。 可能であれば、 基本イメージの最新バージョンを使用してください。
プロンプト フローを開きます。
上部のツール バーで、[ Raw ファイル モード ] を選択して、ファイル エディターで編集を有効にします。
[ファイル] セクションを開き、flow.dag.yaml を選択します。
environmentファイルの [flow.dag.yaml] セクションでイメージを指定します。 たとえば、イメージ<your-custom-image>を使用するには、次のコードを追加します。environment: image: <your-custom-image> python_requirements_txt: requirements.txt
コンピューティング インスタンス ランタイムのアップグレード
コンピューティング インスタンス ランタイムを以前に作成した場合は、次の手順を使用してコンピューティング セッションに切り替えます。
フロー フォルダーに
requirements.txtファイルを準備します。 詳細については、「 コンピューティング セッションの管理」を参照してください。カスタム環境を作成した場合は、環境の詳細ページからイメージを取得し、フロー フォルダーの
flow.dag.yamlファイルで指定します。 詳細については、「 基本イメージを変更する」を参照してください。 イメージに対するacr pullアクセス許可があることを確認してください。ライフサイクルを手動で管理する場合は、既存のコンピューティング インスタンスを引き続き使用できます。