データセットの管理の例
データセットがACTIVEステータスに達したら、ドラフトで例を追加、更新、削除、一覧表示できます。ミューテーションの例はすべて非同期 (HTTP 202) であり、all-or-nothingセマンティクスを使用します。サンプル ID が見つからない場合、バッチ全体が で失敗しますResourceNotFoundException。
リクエストあたり最大 1,000 個の例。インラインコンテンツの制限: 5 MB。
AddDatasetExamples
次の例は、データセットに例を追加する方法を示しています。
例
- AgentCore CLI
-
-
AgentCore CLI で例を追加するには、ローカル JSONL ファイルに新しいシナリオを追加してから、再デプロイします。
# Edit agentcore/datasets/my_eval_dataset.jsonl — add new lines agentcore deployデプロイは JSONL ファイル内の新しいシナリオを検出し、サービスに追加します。差分のみが適用され、既存の例は再アップロードされません。
注記
AgentCoreプロジェクトディレクトリ内 ( で作成) からこれを実行します
agentcore create。
-
- AgentCore SDK
-
-
from bedrock_agentcore.evaluation import DatasetClient client = DatasetClient(region_name="us-west-2") ds = client.add_examples_and_wait( datasetId="my-dataset-id", source={ "inlineExamples": { "examples": [ { "scenario_id": "TC-02", "turns": [{"input": "Transfer $100", "expected_response": "Transfer complete."}], } ] } }, ) print(f"Example count: {ds['exampleCount']}")
-
- AWS SDK
-
-
import boto3 import time client = boto3.client('bedrock-agentcore-control') resp = client.add_dataset_examples( datasetId='my-dataset-id', source={'inlineExamples': {'examples': [ {'scenario_id': 'TC-02', 'turns': [{'input': 'Transfer $100', 'expected_response': 'Transfer complete.'}]} ]}} ) print(f"Added example IDs: {resp['exampleIds']}") # Poll until ACTIVE while True: ds = client.get_dataset(datasetId='my-dataset-id') if ds['status'] == 'ACTIVE': break time.sleep(2)
-
- AWS CLI
-
-
aws bedrock-agentcore-control add-dataset-examples \ --dataset-id my-dataset-id \ --source '{"inlineExamples": {"examples": [{"scenario_id": "TC-02", "turns": [{"input": "Transfer $100", "expected_response": "Transfer complete."}]}]}}'
-
UpdateDatasetExamples
各エントリには、 exampleIdと更新されたコンテンツフィールドを含める必要があります。データセットは ACTIVEまたは UPDATE_FAILEDステータスである必要があります。
次の例は、データセット例を更新する方法を示しています。
例
- AgentCore CLI
-
-
AgentCore CLI で例を更新するには、ローカル JSONL ファイル内の既存のシナリオを変更してから、再デプロイします。
# Edit agentcore/datasets/my_eval_dataset.jsonl — modify existing lines agentcore deployデプロイでは、ローカルファイルを サービスと差分し、変更された例を更新します。サービス
exampleIdが新しい例ではなく更新として認識するには、各行で を保持する必要があります。注記
AgentCoreプロジェクトディレクトリ内 ( で作成) からこれを実行します
agentcore create。
-
- AgentCore SDK
-
-
from bedrock_agentcore.evaluation import DatasetClient client = DatasetClient(region_name="us-west-2") ds = client.update_examples_and_wait( datasetId="my-dataset-id", examples=[ { "exampleId": "example-id-from-list", "scenario_id": "TC-02-updated", "turns": [{"input": "Transfer $200", "expected_response": "Transfer complete."}], } ], )
-
- AWS SDK
-
-
import boto3 import time client = boto3.client('bedrock-agentcore-control') client.update_dataset_examples( datasetId='my-dataset-id', examples=[ { 'exampleId': 'example-id-from-list', 'scenario_id': 'TC-02-updated', 'turns': [{'input': 'Transfer $200', 'expected_response': 'Transfer complete.'}], } ] ) # Poll until ACTIVE while True: ds = client.get_dataset(datasetId='my-dataset-id') if ds['status'] == 'ACTIVE': break time.sleep(2)
-
- AWS CLI
-
-
aws bedrock-agentcore-control update-dataset-examples \ --dataset-id my-dataset-id \ --cli-input-json file://update-examples.json
-
DeleteDatasetExamples
データセットは、ACTIVE、UPDATE_FAILED、または CREATE_FAILEDステータスである必要があります。
次の例は、データセットを削除する方法を示しています。
例
- AgentCore CLI
-
-
AgentCore CLI で例を削除するには、ローカル JSONL ファイルから対応する行を削除してから、再デプロイします。
# Edit agentcore/datasets/my_eval_dataset.jsonl — remove lines agentcore deployデプロイは、削除されたシナリオを検出し、サービスから削除します。
注記
AgentCoreプロジェクトディレクトリ内 ( で作成) からこれを実行します
agentcore create。
-
- AgentCore SDK
-
-
from bedrock_agentcore.evaluation import DatasetClient client = DatasetClient(region_name="us-west-2") ds = client.delete_examples_and_wait( datasetId="my-dataset-id", exampleIds=["example-id-1", "example-id-2"], )
-
- AWS SDK
-
-
import boto3 import time client = boto3.client('bedrock-agentcore-control') client.delete_dataset_examples( datasetId='my-dataset-id', exampleIds=['example-id-1', 'example-id-2'] ) # Poll until ACTIVE while True: ds = client.get_dataset(datasetId='my-dataset-id') if ds['status'] == 'ACTIVE': break time.sleep(2)
-
- AWS CLI
-
-
aws bedrock-agentcore-control delete-dataset-examples \ --dataset-id my-dataset-id \ --example-ids '["example-id-1", "example-id-2"]'
-
ListDatasetExamples
完全なコンテンツを含む例のページ分割されたリストを返します。デフォルトでは、 はドラフトから読み取ります。発行済みバージョンから読み取るdatasetVersionには、 を指定します。
次の例は、データセットの例を一覧表示する方法を示しています。
例
- AgentCore CLI
-
-
# Download examples to your local JSONL file (default: Draft) agentcore dataset download --name my_eval_dataset # Download examples from a published version agentcore dataset download --name my_eval_dataset --version 1
-
- AgentCore SDK
-
-
from bedrock_agentcore.evaluation import DatasetClient client = DatasetClient(region_name="us-west-2") # List examples from Draft resp = client.list_dataset_examples(datasetId="my-dataset-id") for example in resp["examples"]: print(f" {example['exampleId']}: {example['scenario_id']}") # List examples from a published version resp = client.list_dataset_examples(datasetId="my-dataset-id", datasetVersion="1")
-
- AWS SDK
-
-
import boto3 client = boto3.client('bedrock-agentcore-control') resp = client.list_dataset_examples(datasetId='my-dataset-id') for example in resp['examples']: print(f" {example['exampleId']}: {example.get('scenario_id')}") # List examples from a published version resp = client.list_dataset_examples(datasetId='my-dataset-id', datasetVersion='1')
-
- AWS CLI
-
-
# List examples from Draft aws bedrock-agentcore-control list-dataset-examples \ --dataset-id my-dataset-id # List examples from a published version aws bedrock-agentcore-control list-dataset-examples \ --dataset-id my-dataset-id \ --dataset-version 1
-