v-modal/vmodal_sdk_swift_iphoneduo
V-Modal Visual Search SDK optimized for IOS Swift and Iphone DUO
Appleプラットフォーム用 VModal SDK (Swift)
何であるか – iOSおよびmacOSアプリがVModalクラウドサービスと通信できるオープンソースのSwiftパッケージ。このサービスはAI駆動のマルチモーダル動画検索(意味的検索、音声認識、OCR、画像ベース)およびアップロード/インデックス機能を提供します。SDKは認証、リクエスト/レスポンスモデル、ストリーミングアップロード、進捗報告、キャンセル、型安全な結果を処理し、UIは完全に開発者のアプリ内に保たれます。
主な機能
- 意味的動画・画像検索 – 自然言語による記述、発話された言葉、画面内のテキスト、視覚的オブジェクトで瞬間を検索。
- ASRおよびOCRインデックス – バックエンドがアップロードされた動画から音声とテキストを抽出し、検索可能にします。
- ストリーミングアップロード – 全ファイルをメモリに読み込まずに
URLから大容量の動画ファイルを直接アップロード可能。進捗はAsyncStreamで公開され、キャンセルも可能です。 - スコープ付き組織 – プロジェクト、コレクション、ストリームは単純な文字列(
projectID、collectionName、streamName)で識別されます。すべての操作は特定のコレクション/ストリームにスコープされます。 - 実行時APIキー管理 – 実行時にBearerトークンを提供し、ローテーションやクリアが可能。アプリの再ビルドは不要。SDKはログインUIを一切表示しません。
- 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で作業を続けられます。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト