翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
プロンプトフローの例の使用を開始する
このトピックでは、Amazon Bedrock Prompt フローの使用を開始するために試すことができるフローの例をいくつか示します。Amazon Bedrock コンソールで構築する方法を確認するには、例を展開します。
次の図は、ジャンルとプレイリストに含める曲の数を考慮して、曲のプレイリストを構築する、ノード内でインラインに定義された単一のプロンプトで構成されるフローを示しています。
コンソールでこのフローを構築してテストするには
-
「 のコンソールタブでフローを作成するには」のステップに従いますAmazon Bedrock でプロンプトフローを作成する。Prompt flow builder を入力します。
-
次の手順を実行して、プロンプトノードを設定します。
-
Prompt flow builder の左ペインから、Nodes タブを選択します。
-
プロンプトノードを中央ペインのフローにドラッグします。
-
Prompt flow builder ペインで Configure タブを選択します。
-
ノード名
MakePlaylist
として を入力します。 -
ノード で定義 を選択します。
-
プロンプトに次の設定をセットアップします。
-
モデルの選択 で、プロンプトで推論を実行するモデルを選択します。
-
メッセージテキストボックスに、 と入力します
Make me a {{genre}} playlist consisting of the following number of songs: {{number}}.
。これにより、ノードへの入力として表示される 2 つの変数が作成されます。 -
(オプション) 推論設定 を変更します。
-
-
Inputs セクションを展開します。入力の名前は、プロンプトメッセージの変数によって事前に入力されます。次のように入力を設定します。
名前 型 式 ジャンル 文字列 $.data.genre 数値 数 $.data.number この設定は、プロンプトノードが というフィールドを含むJSONオブジェクトを入力に
genre
マッピングgenre
し、 というフィールドを入力にマッピングすることを期待number
することを意味しますnumber
。 -
出力 を変更することはできません。これはモデルからのレスポンスであり、文字列として返されます。
-
-
Flow 入力ノードを選択し、Configure タブを選択します。オブジェクトをタイプ として選択します。つまり、フロー呼び出しは JSON オブジェクトを受信することを想定しています。
-
ノードを接続して、次の手順を実行してフローを完了します。
-
フロー入力ノードの出力ノードからMakePlaylistプロンプトノードのジャンル入力に接続をドラッグします。
-
フロー入力ノードの出力ノードからMakePlaylistプロンプトノードの数値入力に接続をドラッグします。
-
modelCompletion MakePlaylist プロンプトノードの出力ノードから、フロー出力ノードのドキュメント入力に接続をドラッグします。
-
-
保存を選択してフローを保存します。これで、フローをテストする準備が整いました。
-
次のJSONオブジェクトを入力してフローをテストします。右側のテストプロンプトフローペインです。Run を選択すると、フローはモデルレスポンスを返します。
{ "genre": "pop", "number": 3 }
次の図は、1 つの条件ノードが満たされた条件に基づいて 3 つの可能な値のいずれかを返すフローを示しています。
コンソールでこのフローを構築してテストするには:
-
「 のコンソールタブでフローを作成するには」のステップに従いますAmazon Bedrock でプロンプトフローを作成する。Prompt flow builder を入力します。
-
以下を実行して、条件ノードを設定します。
-
Prompt flow builder の左ペインから、Nodes タブを選択します。
-
条件ノードを中央ペインのフローにドラッグします。
-
Prompt flow builder ペインで Configure タブを選択します。
-
Inputs セクションを展開します。次のように入力を設定します。
名前 型 式 retailPrice 数 $.data。retailPrice marketPrice 数 $.data。marketPrice type 文字列 $.data.type この設定は、条件ノードが、フィールド
retailPrice
、、marketPrice
および を含むJSONオブジェクトを期待することを意味しますtype
。 -
次の操作を実行して、条件を設定します。
-
条件 セクションで、オプションで条件の名前を変更します。次に、条件テキストボックスに次の条件を追加します。
(retailPrice > 10) and (type == "produce")
-
条件の追加 を選択して、2 番目の条件を追加します。必要に応じて、2 番目の条件の名前を変更します。次に、条件テキストボックスに次の条件を追加します。
(retailPrice < marketPrice)
-
-
-
フロー入力ノードを選択し、Configure タブを選択します。オブジェクトをタイプ として選択します。つまり、フロー呼び出しは JSON オブジェクトを受信することを想定しています。
-
フロー出力ノードを追加して、合計で 3 つになるようにします。各フロー出力ノードのプロンプトフロービルダーペインの設定タブで、次のように設定します。
-
最初のフロー出力ノードの入力タイプを に設定
String
し、 式を に設定$.data.action[0]
して、受信オブジェクトのaction
フィールドの配列内の最初の値を返します。 -
2 番目のフロー出力ノードの入力タイプを に設定
String
し、 式を に設定$.data.action[1]
して、受信オブジェクトのaction
フィールドの配列の 2 番目の値を返します。 -
3 番目のフロー出力ノードの入力タイプを に設定
String
し、 式を に設定$.data.action[2]
して、受信オブジェクトのaction
フィールドの配列で 3 番目の値を返します。
-
-
最初の条件を最初のフロー出力ノードに接続し、2 番目の条件を 2 番目のフロー出力ノードに接続し、デフォルトの条件を 3 番目のフロー出力ノードに接続します。
-
すべてのノードの入力と出力を接続して、以下を実行してフローを完了します。
-
フロー入力ノードの出力ノードから条件ノードretailPriceの入力に接続をドラッグします。
-
フロー入力ノードの出力ノードから条件ノードmarketPriceの入力に接続をドラッグします。
-
フロー入力ノードの出力ノードから条件ノードの型入力に接続をドラッグします。
-
フロー入力ノードの出力から 3 つの出力ノードのドキュメント入力に接続をドラッグします。
-
-
保存を選択してフローを保存します。これで、フローをテストする準備が整いました。
-
次のJSONオブジェクトを入力してフローをテストします。右側のテストプロンプトフローペインです。入力ごとに実行を選択します。
-
次のオブジェクトは、最初の条件 (
retailPrice
は 10 を超え、type
は「プロデュース」) を満たし、最初の値をaction
(「購入しない」) で返します。{ "retailPrice": 11, "marketPrice": 12, "type": "produce", "action": ["don't buy", "buy", "undecided"] }
注記
最初の条件と 2 番目の条件の両方を満たしていても、最初の条件が優先されます。
-
次のオブジェクト
retailPrice
は 2 番目の条件 ( は より小さいmarketPrice
) を満たし、action
(「buy」) で 2 番目の値を返します。{ "retailPrice": 11, "marketPrice": 12, "type": "meat", "action": ["don't buy", "buy", "undecided"] }
-
次のオブジェクトは、最初の条件 (
retailPrice
は 10 より大きいが、type
は「生成」ではない) も 2 番目の条件 (retailPrice
は より小さい) も満たしないためmarketPrice
、action
(「未決定」) の 3 番目の値が返されます。{ "retailPrice": 11, "marketPrice": 11, "type": "meat", "action": ["don't buy", "buy", "undecided"] }
-