メインコンテンツへ移動

DatasetsManager.list()

追加バージョン: @mastra/core@1.4.0

ページネーションと任意のフィルターを使用してデータセットを一覧表示します。フィルターはストレージ層で適用されるため、呼び出し側で結果を再フィルタリングする必要はありません。

使用例
使用例への直接リンク

import { Mastra } from '@mastra/core'

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

const { datasets, pagination } = await mastra.datasets.list({ page: 0, perPage: 10 })

for (const ds of datasets) {
console.log(`${ds.id}: ${ds.name} (v${ds.version})`)
}

// Filter by target type and name (case-insensitive substring)
const filtered = await mastra.datasets.list({
page: 0,
perPage: 20,
filters: { targetType: 'agent', name: 'qa' },
})

// Filter by any-overlap match on target IDs
const forAgents = await mastra.datasets.list({
filters: { targetIds: ['agent-a', 'agent-b'] },
})

パラメータ
パラメータへの直接リンク

page?:

number
ページ番号。デフォルトは 0 です。

perPage?:

number
1ページあたりのデータセット数。デフォルトは 20 です。

filters?:

object
ストレージ層で適用する任意のフィルター。
object

organizationId?:

string
テナンシーフィルター。この組織のデータセットに限定します。

projectId?:

string
テナンシーフィルター。このプロジェクトのデータセットに限定します。

candidateKey?:

string
この候補キーに属するデータセットに限定します。

candidateId?:

string
この候補 ID に属するデータセットに限定します。

targetType?:

'agent' | 'workflow' | 'scorer' | 'processor'
このコンポーネント種別を対象とするデータセットに限定します。

targetIds?:

string[]
targetIds がこの一覧と1つでも重複するデータセットに限定します。空の配列はフィルターなしとして扱います。

name?:

string
データセットの name を大文字小文字を区別せず部分一致で検索します。空文字列はフィルターなしとして扱います。

戻り値
戻り値への直接リンク

result:

Promise<object>
ページネーションされたデータセット一覧。
object

datasets:

DatasetRecord[]
データセットレコードの配列。レコードの構造は dataset.getDetails() を参照してください。

pagination:

PaginationInfo
totalpageperPagehasMore を含むページネーションメタデータ。