Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Gestisci i set di dati
Questo argomento riguarda la creazione, il recupero, l'elenco, l'aggiornamento e l'eliminazione dei set di dati.
Crea set di dati
L'CreateDatasetAPI crea un nuovo set di dati di valutazione. Si tratta di un'operazione asincrona (HTTP 202): il set di dati passa da a una volta completata l'immissione. CREATING ACTIVE
Parametri richiesti: datasetName (solo caratteri alfanumerici e caratteri di sottolineatura^[a-zA-Z][a-zA-Z0-9_]{0,47}$), e (esempi in linea o URI S3). schemaType source
Parametri opzionali: description, kmsKeyArn (chiave di crittografia gestita dal cliente, immutabile dopo la creazione: vedere Crittografia del set di dati),. Crittografia del dataset tags
Gli esempi seguenti mostrano come creare un set di dati:
Esempio
- AgentCore CLI
-
-
# Add a dataset to your project
agentcore add dataset --name my_eval_dataset \
--schema-type AGENTCORE_EVALUATION_PREDEFINED_V1
# Edit the generated JSONL file with your scenarios
# File location: agentcore/datasets/my_eval_dataset.jsonl
# Deploy to create the dataset in your AWS account
agentcore deploy
Questo crea un file JSONL locale e registra il set di dati nella configurazione del progetto. Esegui agentcore deploy per creare la risorsa del set di dati e sincronizzare gli esempi con il servizio.
Eseguilo dall'interno di una directory AgentCore del progetto (creata conagentcore create).
- AgentCore SDK
-
-
from bedrock_agentcore.evaluation import DatasetClient
client = DatasetClient(region_name="us-west-2")
# Create with inline examples (polls until ACTIVE)
ds = client.create_dataset_and_wait(
datasetName="customer_support_scenarios",
schemaType="AGENTCORE_EVALUATION_PREDEFINED_V1",
source={
"inlineExamples": {
"examples": [
{
"scenario_id": "TC-01",
"turns": [{"input": "What is my balance?", "expected_response": "Your balance is $50."}],
"assertions": ["Response includes a dollar amount"],
}
]
}
},
)
print(f"Dataset ID: {ds['datasetId']}, Status: {ds['status']}")
# Create with S3 source
ds = client.create_dataset_and_wait(
datasetName="my_s3_dataset",
schemaType="AGENTCORE_EVALUATION_PREDEFINED_V1",
source={"s3Source": {"s3Uri": "s3://my-bucket/scenarios.jsonl"}},
)
Per l'inserimento in S3, ogni riga del file JSONL deve includere un campo. exampleId Il bucket S3 deve essere accessibile utilizzando le credenziali del chiamante.
- AWS SDK
-
-
import boto3
import time
client = boto3.client('bedrock-agentcore-control')
response = client.create_dataset(
datasetName='customer_support_scenarios',
schemaType='AGENTCORE_EVALUATION_PREDEFINED_V1',
source={
'inlineExamples': {
'examples': [
{
'scenario_id': 'TC-01',
'turns': [{'input': 'What is my balance?', 'expected_response': 'Your balance is $50.'}],
'assertions': ['Response includes a dollar amount'],
}
]
}
}
)
dataset_id = response['datasetId']
# Create with S3 source
response = client.create_dataset(
datasetName='my_s3_dataset',
schemaType='AGENTCORE_EVALUATION_PREDEFINED_V1',
source={
's3Source': {'s3Uri': 's3://my-bucket/scenarios.jsonl'}
}
)
# Poll until ACTIVE
while True:
ds = client.get_dataset(datasetId=dataset_id)
if ds['status'] in ('ACTIVE', 'CREATE_FAILED'):
break
time.sleep(2)
- AWS CLI
-
-
# Create with inline examples
aws bedrock-agentcore-control create-dataset \
--dataset-name "customer_support_scenarios" \
--schema-type AGENTCORE_EVALUATION_PREDEFINED_V1 \
--source '{"inlineExamples": {"examples": [{"scenario_id": "TC-01", "turns": [{"input": "What is my balance?", "expected_response": "Your balance is $50."}], "assertions": ["Response includes a dollar amount"]}]}}'
# Create with S3 source
aws bedrock-agentcore-control create-dataset \
--dataset-name "my_s3_dataset" \
--schema-type AGENTCORE_EVALUATION_PREDEFINED_V1 \
--source '{"s3Source": {"s3Uri": "s3://my-bucket/scenarios.jsonl"}}'
# Poll until ACTIVE
aws bedrock-agentcore-control get-dataset \
--dataset-id my-dataset-id
Ottieni il set di dati
L'GetDatasetAPI recupera i metadati del set di dati, lo stato, il numero di esempi e un URL di download prefirmato per il contenuto del set di dati. Per impostazione predefinita, legge la bozza; specifica per una versione pubblicata. datasetVersion
downloadUrlÈ un URL S3 prefirmato per il file completodataset.jsonl. Puoi scaricarlo con una semplice richiesta HTTP GET senza intestazioni di autenticazione.
Gli esempi seguenti mostrano come ottenere un set di dati:
Esempio
- AgentCore CLI
-
-
# Show dataset deployment status and metadata
agentcore status --type dataset
# Download dataset content to your local JSONL file (default: Draft)
agentcore dataset download --name my_eval_dataset
# Download a specific 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")
# Get dataset (default: Draft)
ds = client.get_dataset(datasetId="my-dataset-id")
print(f"Status: {ds['status']}, Examples: {ds['exampleCount']}")
print(f"Download URL: {ds['downloadUrl']}")
# Get a specific published version
ds_v1 = client.get_dataset(datasetId="my-dataset-id", datasetVersion="1")
- AWS SDK
-
-
import boto3
client = boto3.client('bedrock-agentcore-control')
response = client.get_dataset(datasetId='my-dataset-id')
print(f"Status: {response['status']}, Examples: {response['exampleCount']}")
# Download the dataset content via presigned URL
if 'downloadUrl' in response:
import requests
data = requests.get(response['downloadUrl'])
print(data.text)
# Get a specific published version
response = client.get_dataset(datasetId='my-dataset-id', datasetVersion='1')
- AWS CLI
-
-
# Get dataset (default: Draft)
aws bedrock-agentcore-control get-dataset \
--dataset-id my-dataset-id
# Get a specific published version
aws bedrock-agentcore-control get-dataset \
--dataset-id my-dataset-id \
--dataset-version 1
Elenca i set di dati
L'ListDatasetsAPI restituisce un elenco suddiviso in pagine di set di dati nell'account e nella regione.
Gli esempi seguenti mostrano come elencare i set di dati:
Esempio
- AgentCore CLI
-
-
agentcore status --type dataset
- AgentCore SDK
-
-
from bedrock_agentcore.evaluation import DatasetClient
client = DatasetClient(region_name="us-west-2")
response = client.list_datasets()
for dataset in response["datasets"]:
print(f" {dataset['datasetName']} ({dataset['status']})")
- AWS SDK
-
-
import boto3
client = boto3.client('bedrock-agentcore-control')
response = client.list_datasets()
for dataset in response['datasets']:
print(f" {dataset['datasetName']} ({dataset['status']})")
- AWS CLI
-
-
aws bedrock-agentcore-control list-datasets
Aggiorna il set di dati
L'UpdateDatasetAPI aggiorna i metadati del set di dati. Si tratta di un'operazione sincrona (HTTP 200). Solo description e tags può essere aggiornato. datasetNamee kmsKeyArn sono immutabili dopo la creazione. schemaType
Il set di dati deve essere in ACTIVEUPDATE_FAILED, o stato. CREATE_FAILED
Gli esempi seguenti mostrano come aggiornare i metadati del set di dati:
Esempio
- AgentCore CLI
-
-
Per aggiornare un set di dati con la AgentCore CLI, modifica direttamente la configurazione del set di dati nel file, quindi ridistribuisciagentcore.json:
agentcore deploy
Apriagentcore.json, trova il set di dati nell'datasetsarray, modificalo ed esegui. description agentcore deploy Le modifiche diventano effettive dopo la distribuzione.
Eseguilo dall'interno di una cartella di AgentCore progetto (creata conagentcore create).
- AgentCore SDK
-
-
from bedrock_agentcore.evaluation import DatasetClient
client = DatasetClient(region_name="us-west-2")
client.update_dataset(datasetId="my-dataset-id", description="Updated description")
- AWS SDK
-
-
import boto3
client = boto3.client('bedrock-agentcore-control')
client.update_dataset(datasetId='my-dataset-id', description='Updated description')
- AWS CLI
-
-
aws bedrock-agentcore-control update-dataset \
--dataset-id my-dataset-id \
--description "Updated description"
Elimina il set di dati
L'DeleteDatasetAPI elimina un set di dati. Si tratta di un'operazione asincrona (HTTP 202).
-
Eliminazione completa (omettidatasetVersion): elimina tutte le versioni, Draft e il record del set di dati.
-
Version-specific delete (specificare datasetVersion come numero intero): elimina solo la versione pubblicata.
Il set di dati deve avere lo statoACTIVE, CREATE_FAILEDUPDATE_FAILED, o. DELETE_FAILED
Per l'eliminazione specifica della versione sono accettati solo numeri interi di versione.
Gli esempi seguenti mostrano come eliminare un set di dati:
Esempio
- AgentCore CLI
-
-
# Delete a specific published version
agentcore dataset remove-version 1 --name my_eval_dataset
# Delete entire dataset
agentcore remove dataset --name my_eval_dataset
agentcore deploy
- AgentCore SDK
-
-
from bedrock_agentcore.evaluation import DatasetClient
client = DatasetClient(region_name="us-west-2")
# Delete a specific published version
client.delete_dataset_and_wait(datasetId="my-dataset-id", datasetVersion="1")
# Delete entire dataset (polls until complete)
client.delete_dataset_and_wait(datasetId="my-dataset-id")
- AWS SDK
-
-
import boto3
client = boto3.client('bedrock-agentcore-control')
# Delete a specific published version
client.delete_dataset(datasetId='my-dataset-id', datasetVersion='1')
# Delete entire dataset
client.delete_dataset(datasetId='my-dataset-id')
- AWS CLI
-
-
# Delete a specific published version
aws bedrock-agentcore-control delete-dataset \
--dataset-id my-dataset-id \
--dataset-version 1
# Delete entire dataset
aws bedrock-agentcore-control delete-dataset \
--dataset-id my-dataset-id