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
每页的数据集数。默认为
20。filters?:
object
在存储层应用的可选筛选条件。
object
organizationId?:
string
租户筛选:仅保留此组织中的数据集。
projectId?:
string
租户筛选:仅保留此项目中的数据集。
candidateKey?:
string
仅保留属于此 candidate key 的数据集。
candidateId?:
string
仅保留属于此 candidate ID 的数据集。
targetType?:
'agent' | 'workflow' | 'scorer' | 'processor'
仅保留以此组件类型为目标的数据集。
targetIds?:
string[]
仅保留
targetIds 与此列表存在交集的数据集(任意重叠匹配)。空数组视为不筛选。name?:
string
对数据集
name 进行不区分大小写的子字符串匹配。空字符串视为不筛选。返回值返回值的直接链接
result:
Promise<object>
分页的数据集列表。
object
datasets:
DatasetRecord[]
数据集记录数组。记录结构请参阅 dataset.getDetails()。
pagination:
PaginationInfo
包含
total、page、perPage 和 hasMore 的分页元数据。