跳至主要內容

Dataset 類別

新增於: @mastra/core@1.4.0

Dataset 類提供用於管理單一資料集項目 CRUD、版本和實驗的方法。可透過 mastra.datasets.get()mastra.datasets.create() 取得。

使用範例
「使用範例」的直接連結

新增項目並執行實驗
「新增項目並執行實驗」的直接連結

src/mastra/datasets/usage.ts
import { Mastra } from '@mastra/core'

const mastra = new Mastra({/* storage config */})

const dataset = await mastra.datasets.create({
name: 'QA pairs',
})

// Add items
await dataset.addItems({
items: [
{ input: { question: 'What is AI?' }, groundTruth: { answer: 'Artificial Intelligence' } },
{ input: { question: 'What is ML?' }, groundTruth: { answer: 'Machine Learning' } },
],
})

// Run an experiment
const summary = await dataset.startExperiment({
targetType: 'agent',
targetId: 'my-agent',
scorers: ['accuracy'],
})

console.log(`${summary.succeededCount}/${summary.totalItems} succeeded`)

管理版本和歷史記錄
「管理版本和歷史記錄」的直接連結

src/mastra/datasets/versioning.ts
import { Mastra } from '@mastra/core'

const mastra = new Mastra({/* storage config */})

const dataset = await mastra.datasets.get({ id: 'dataset-id' })

// List versions
const { versions } = await dataset.listVersions()

// List items at a specific version
const items = await dataset.listItems({ version: 2 })

// Get item change history
const history = await dataset.getItemHistory({ itemId: 'item-id' })

取得方式
「取得方式」的直接連結

不要直接執行個體化 Dataset。請透過 DatasetsManager 取得:

const dataset = await mastra.datasets.get({ id: 'dataset-id' })
// or
const dataset = await mastra.datasets.create({ name: 'My dataset' })

屬性
「屬性」的直接連結

要取得完整的資料集記錄(名稱、描述、schema、版本和時間戳記),請呼叫 dataset.getDetails()

id:

string
資料集的唯一識別碼。唯讀。