Presigned 檔案上傳模式
檔案串接上傳檔案
目前在 MaiAgent 上需要上傳檔案的地方有兩處
知識庫文件上傳
訊息用到的附件上傳
Presigned 上傳模式
MaiAgent 支援 Presigned 上傳模式,此模式允許客戶端直接將檔案上傳至雲端儲存(如 S3),而不需經過伺服器中繼。使用此模式時,伺服器僅負責生成具有時效性與安全性的 Presigned URL,客戶端利用該 URL 直接進行檔案上傳。
與傳統上傳模式的差異:
資料流向
傳統模式:檔案須經過伺服器,再由伺服器上傳到雲端儲存。
Presigned 模式:檔案由客戶端直接上傳至雲端,避免伺服器處理檔案的負擔。
效能與成本
傳統模式可能導致伺服器資源消耗過大,並增加資料傳輸成本。
Presigned 模式減少伺服器負載,提高效能並降低傳輸成本。
安全性
Presigned URL 包含簽名與有效期,確保上傳請求僅限於授權用戶在指定時間內使用。
此模式特別適合大檔案或高頻率上傳的場景,提升效率的同時保持高度的安全性。
預簽上傳流程圖
傳統上傳流程圖
Presigned 上傳檔案
以下描述如何使用 MaiAgent 提供的 API 完成檔案的 Presigned 上傳過程。
1. 取得 Presigned URL
Endpoint
POST https://api.maiagent.ai/api/v1/upload-presigned-url/
說明
客戶端向伺服器發送請求,取得一個 Presigned URL,該 URL 用於直接上傳檔案至雲端儲存。
請求參數
filename
string
是
上傳檔案的名稱
modelName
string
是
模組名稱,用於分類上傳的檔案用途
知識庫請填寫chatbot-file
訊息附件請填寫attachment
fieldName
string
是
檔案字段名稱,用於標識檔案用途
fileSize
integer
是
檔案大小(以位元組為單位)
範例請求
回應範例
2. 上傳檔案至雲端儲存
說明
使用從上述步驟取得的 url 和 fields,直接將檔案上傳至雲端儲存。
範例請求
Last updated
Was this helpful?
