> Discover all available pages from the documentation index: https://mastra.zisheng.pro/zh-TW/llms.txt # BlobStoreProvider `BlobStoreProvider` 是套件用來向 [`MastraEditor`](https://mastra.zisheng.pro/zh-TW/reference/editor/mastra-editor) 註冊 blob 儲存空間的介面。Blob 儲存空間會保存內容定址的 Skill blob,以及 Editor 產生的其他大型成品。 內建的 `storage` Provider 會使用已設定儲存後端的 `blobs` domain。外部 Provider(例如 S3)則透過 `MastraEditorConfig.blobStores` 提供。 ## 使用範例 ```typescript import { MastraEditor } from '@mastra/editor' import { s3BlobStoreProvider } from '@mastra/s3' new MastraEditor({ blobStores: { [s3BlobStoreProvider.id]: s3BlobStoreProvider, }, }) ``` ## 屬性 **id** (`string`): 唯一的 Provider 識別碼(例如 "storage"、"s3")。 **name** (`string`): 供 UI 顯示、方便使用者閱讀的名稱。 **description** (`string`): 簡短說明。 **configSchema** (`Record`): 描述 Provider 專屬設定的 JSON Schema。UI 會用它呈現設定表單。 **createBlobStore** (`(config: TConfig) => BlobStore | Promise`): 從已儲存的設定建立執行階段 BlobStore 執行個體。Editor 透過 MastraEditor.resolveBlobStore(providerId, config) 解析 blob 儲存空間時會呼叫此函式。 ## 實作 Provider ```typescript import type { BlobStore, BlobStoreProvider } from '@mastra/core/editor' export const myBlobStoreProvider: BlobStoreProvider<{ bucket: string; region: string }> = { id: 'my-blob-store', name: 'My Blob Store', description: 'Object-store-backed blob storage.', configSchema: { type: 'object', required: ['bucket', 'region'], properties: { bucket: { type: 'string' }, region: { type: 'string' }, }, }, async createBlobStore(config): Promise { return createMyBlobStore({ bucket: config.bucket, region: config.region }) }, } ``` 若未將 `providerId` 傳給 `MastraEditor.resolveBlobStore()`,Editor 會改用儲存後端的 `blobs` domain。 ## 相關內容 - [MastraEditor 類別](https://mastra.zisheng.pro/zh-TW/reference/editor/mastra-editor):Provider 登錄表與 `resolveBlobStore()` 方法。