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
이 후보 키에 속한 데이터 세트로 제한합니다.
candidateId?:
string
이 후보 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가 포함된 페이지네이션 메타데이터입니다.