v-modal/vmodal_sdk_swift_iphoneduo
V-Modal Visual Search SDK optimized for IOS Swift and Iphone DUO
Apple 平台用 VModal SDK(Swift)
是什麼 – 一個開源的 Swift 套件,讓 iOS 與 macOS 應用能與 VModal 雲端服務通訊。此服務提供 AI 驅動的多模態影片搜尋(語意、語音轉文字、OCR、影像基礎)以及上傳/索引功能。SDK 處理驗證、請求/回應模型、串流上傳、進度報告、取消操作與類型安全的結果,同時將 UI 完全保留在開發者的應用內。
核心功能
- 語意影片與影像搜尋 – 透過自然語言描述、語音內容、螢幕文字或視覺物件尋找特定時刻。
- ASR 與 OCR 索引 – 後端從上傳的影片中提取語音與文字,使其可被搜尋。
- 串流上傳 – 可直接從
URL上傳大檔案影片,無需將整個檔案載入記憶體;進度透過AsyncStream暴露,支援取消。 - 作用域組織 – 專案、集合與串流透過簡單字串(
projectID、collectionName、streamName)識別。所有操作皆作用於特定集合/串流。 - 執行時 API 金鑰處理 – 可在執行時提供 Bearer Token,支援輪換或清除,無需重新建置應用;SDK 永不顯示登入介面。
- 原生 Swift API – 完全類型安全,支援 async/await,相容 Swift 6.0 與 Xcode 26.6+,目標平台為 iOS 16+ 與 macOS 13+。
典型使用流程
- 新增套件 – 在 Xcode 中透過 URL
https://github.com/v-modal/vmodal_sdk_swift_iphoneduo新增。 - 設定專案 – 使用 API 金鑰設定:
let keys = try MutableAPIKeyProvider("runtime-api-key") let project = try VModal.configure(projectID: "my_app", apiKeyProvider: keys) let scope = try project.scope(collectionName: "user_42", streamName: "uploads") - 上傳影片:
let source = try UploadSource(fileURL: videoURL) let task = scope.upload(source) for await p in task.progress { print("\(p.percent)%") } let result = try await task.result - 自然語言或元資料搜尋:
let results = try await scope.search( "cyclist in red jacket crossing the bridge", options: ScopedSearchOptions(searchSources: ["image"], limit: 20) ) - 處理取消 – 呼叫
task.cancel()或在畫面消失時取消非同步搜尋任務。
範例與工具
- StarterIOS – 一個最小化應用,示範設定、集合發現、上傳、索引與搜尋。
- Framebase 範例 – 展示如何瀏覽本機影片檔案、準備並播放搜尋結果。
- SDKSimulation 工具 – 用於除錯的各整合階段模擬工具。
- 文件 – 使用 DocC 生成的完整 API 參考與入門指南(
Sources/VModalSDK/VModalSDK.docc)。
支援平台
- iOS(SwiftUI 或 UIKit) – ✅
- macOS – ✅
- watchOS、tvOS、visionOS – ❌(本版本不支援)
- 其他平台 – ❌(請使用對應環境的 VModal SDK)
前置條件
- Swift 6.0,Xcode 26.6 或更高版本
- iOS 16+ / macOS 13+
- VModal API 金鑰(透過 https://v-modal.com/page/contact.ts 申請)
開發工作流程
git clone https://github.com/v-modal/vmodal_sdk_swift_iphoneduo.git
cd vmodal_sdk_swift_iphoneduo
bash install.sh check # 驗證工具鏈與相依性
bash build.sh analyze # 靜態分析
bash test.sh test # 單元測試(離線)
# 實時整合測試(需要憑證)
bash test.sh live
該倉儲也提供協助腳本,用於列出模擬器、選擇裝置與啟動範例應用。
授權 – MIT。
總結 – 如果你需要在 Apple 應用中加入 AI 驅動的影片搜尋或可搜尋的影片上傳功能,VModal 的 Swift SDK 提供了一個小型、類型安全的 VModal 雲端服務封裝,將向量索引、語音轉文字、影像辨識等繁重任務交由後端處理,而你只需專注於純 Swift/SwiftUI 開發。
相關
- 專案
- 專案
- 專案
- 專案