> Discover all available pages from the documentation index: https://mastra.zisheng.pro/zh-HK/llms.txt # dataset.listExperiments() **新增於:** `@mastra/core@1.4.0` 列出此資料集的實驗(執行),並可使用篩選及分頁。 篩選條件會在儲存層套用,因此結果必定限於目前資料集。 ## 使用範例 ```typescript import { Mastra } from '@mastra/core' const mastra = new Mastra({/* storage config */}) const dataset = await mastra.datasets.get({ id: 'dataset-id' }) // Basic pagination const { experiments, pagination } = await dataset.listExperiments({ page: 0, perPage: 10 }) // Filter to a specific agent version — useful for baseline vs variant comparisons const { experiments: v2Runs } = await dataset.listExperiments({ targetType: 'agent', targetId: 'my-agent', agentVersion: 'v2', status: 'completed', }) for (const exp of experiments) { console.log(`${exp.id}: ${exp.status} (${exp.succeededCount}/${exp.totalItems})`) } ``` ## 參數 **targetType** (`'agent' | 'workflow' | 'scorer' | 'processor'`): 只包含針對此目標類型執行的實驗。 **targetId** (`string`): 只包含針對此目標 ID 執行的實驗。 **agentVersion** (`string`): 只包含針對此 Agent 版本記錄的實驗,有助區分基準執行與變體執行。 **status** (`'pending' | 'running' | 'completed' | 'failed'`): 只包含處於此狀態的實驗。 **filters** (`ExperimentTenancyFilters`): 多租戶範圍篩選條件(organizationId、projectId),會轉交至儲存層。 **page** (`number`): 頁碼。預設為 0。 **perPage** (`number`): 每頁的實驗數目。預設為 20。 ## 傳回值 **result** (`Promise`): 分頁實驗清單。 **result.experiments** (`Experiment[]`): 實驗記錄陣列。 **result.experiments.id** (`string`): 實驗的唯一 ID。 **result.experiments.name** (`string`): 顯示名稱。 **result.experiments.description** (`string`): 描述。 **result.experiments.metadata** (`Record`): 任意元資料。 **result.experiments.datasetId** (`string`): 上層資料集的 ID。 **result.experiments.datasetVersion** (`number | null`): 實驗所用的資料集版本。 **result.experiments.targetType** (`'agent' | 'workflow' | 'scorer' | 'processor'`): 所用目標的類型。 **result.experiments.targetId** (`string`): 所用目標的 ID。 **result.experiments.status** (`'pending' | 'running' | 'completed' | 'failed'`): 實驗目前的狀態。 **result.experiments.totalItems** (`number`): 項目總數。 **result.experiments.succeededCount** (`number`): 成功項目的數目。 **result.experiments.failedCount** (`number`): 失敗項目的數目。 **result.experiments.skippedCount** (`number`): 略過項目的數目。 **result.experiments.startedAt** (`Date | null`): 實驗的開始時間。 **result.experiments.completedAt** (`Date | null`): 實驗的完成時間。 **result.experiments.createdAt** (`Date`): 實驗記錄的建立時間。 **result.experiments.updatedAt** (`Date`): 實驗記錄上次更新的時間。 **result.pagination** (`PaginationInfo`): 包含 total、page、perPage 及 hasMore 的分頁元資料。