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 的分頁元資料。