Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memulai
Topik ini menyediakan alur kerja ujung ke ujung untuk membuat, mengisi, dan menerbitkan kumpulan data.
Skema dataset
Setiap dataset menyatakan a schemaType pada waktu pembuatan. AgentCore memvalidasi setiap contoh terhadap skema yang dideklarasikan sebelum menerimanya. Dua jenis skema didukung:
-
AGENTCORE_EVALUATION_PREDEFINED_V1 — Untuk menguji agen terhadap perubahan percakapan pra-tertulis. Bidang wajib:scenario_id, turns (daftar tidak kosong; setiap giliran harus berisiinput).
-
AGENTCORE_EVALUATION_SIMULATED_V1 — Untuk pembuatan percakapan sintetis. Bidang yang diperlukan:scenario_id, actor_profile (objek dengan wajib context dangoal),input.
Untuk definisi bidang skema lengkap, contoh, dan pemetaan kebenaran dasar, lihat skema dataset.
End-to-end alur kerja
Contoh berikut menunjukkan siklus hidup dataset lengkap: buat, tambahkan contoh, daftar contoh, publikasikan versi, dan bersihkan.
contoh
- AgentCore CLI
-
-
# 1. Create dataset
agentcore add dataset --name my_eval_dataset \
--schema-type AGENTCORE_EVALUATION_PREDEFINED_V1
# 2. Add your scenarios to the JSONL file
# File: agentcore/datasets/my_eval_dataset.jsonl
# 3. Deploy to create the dataset and sync examples
agentcore deploy
# 4. Publish version 1
agentcore dataset publish-version --name my_eval_dataset
# 5. Check status (shows versions and example count)
agentcore status --type dataset
# 6. Download a published version to local file
agentcore dataset download --name my_eval_dataset --version 1
# 7. Cleanup
agentcore remove dataset --name my_eval_dataset
agentcore deploy
- AgentCore SDK
-
-
from bedrock_agentcore.evaluation import DatasetClient
client = DatasetClient(region_name="us-west-2")
# 1. Create dataset (polls until ACTIVE)
ds = client.create_dataset_and_wait(
datasetName="my_eval_dataset",
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 = ds["datasetId"]
print(f"Created: {dataset_id}, status={ds['status']}")
# 2. Add more examples
ds = client.add_examples_and_wait(
datasetId=dataset_id,
source={
"inlineExamples": {
"examples": [
{"scenario_id": "TC-02", "turns": [{"input": "Transfer $100", "expected_response": "Transfer complete."}]}
]
}
},
)
print(f"Example count: {ds['exampleCount']}")
# 3. List examples
resp = client.list_dataset_examples(datasetId=dataset_id)
for example in resp["examples"]:
print(f" {example['exampleId']}: {example['scenario_id']}")
# 4. Publish version 1
ds = client.create_dataset_version_and_wait(datasetId=dataset_id)
print(f"Published, draftStatus: {ds.get('draftStatus')}")
# 5. List versions
resp = client.list_dataset_versions(datasetId=dataset_id)
for v in resp["versions"]:
print(f" Version {v['datasetVersion']}: {v['exampleCount']} examples")
# 6. Cleanup
client.delete_dataset_and_wait(datasetId=dataset_id)