本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用表達式在 Amazon Bedrock 流程中擷取整個輸入的相關部分來定義輸入
設定節點的輸入時,您必須根據將進入節點的整個輸入來進行定義。整個輸入可以是字串、數字、布林值、陣列或物件。若要定義與整個輸入相關的輸入,您可以使用以 JsonPath$.data 開頭,這是指整個輸入。使用表達式時,請注意下列事項:
-
如果整個輸入是字串、數字或布林值,則您可用來定義個別輸入的唯一表達式是
$.data -
如果整個輸入是陣列或物件,您可以使用擷取一部分來定義個別輸入。
舉例來說,若要了解如何使用表達式,則假設整個輸入是下列 JSON 物件:
{ "animals": { "mammals": ["cat", "dog"], "reptiles": ["snake", "turtle", "iguana"] }, "organisms": { "mammals": ["rabbit", "horse", "mouse"], "flowers": ["lily", "daisy"] }, "numbers": [1, 2, 3, 5, 8] }
您可以使用下列表達式來擷取輸入的一部分 (範例參照從上述 JSON 物件傳回的內容):
| 表達式 | 意義 | 範例 | 範例結果 |
|---|---|---|---|
| $.data | 整個輸入。 | $.data | 整個物件 |
{name} |
JSON 物件中稱為名稱之欄位的值。 |
$.data.numbers | [1, 2, 3, 5, 8] |
(int) |
陣列中 int 指定的索引成員。 |
$.data.animals.reptiles[2] | iguana |
[int1, int2, ...] |
陣列中每個 int 所指定索引的成員。 |
$.data.numbers[0, 3] | [1, 5] |
[int1:int2] |
由陣列中 int1 (含) 和 int2 (不含) 之間索引的項目組成的陣列。省略 int1 或 int2 等同於標記陣列的開頭或結尾。 |
$.data.organisms.mammals[1:] | ["horse", "mouse"] |
| * | 可以用來取代 name 或 int 的萬用字元。如果有多個結果,則會在陣列中傳回結果。 |
$.data.*.mammals | [["cat", "dog"], ["rabbit", "horse", "mouse"]] |