第一印象とアーキテクチャ
deepdetect.com で DeepDetect にアクセスすると、クリーンで開発者向けのランディングページが表示され、すぐに Server (v0.28.0)、Platform UI (v0.26.2)、そしてコアの Platform という3つの主要コンポーネントが紹介されます。このサイトは、DeepDetect が単一の製品ではなく、オープンソースの深層学習 REST API、C++ サーバー、トレーニングとデプロイメントのための Web ベースのプラットフォームからなるエコシステムであることを明確にしています。これは、多くのブラックボックス型 AI サービスからのさわやかな脱却です。
まず、Server のドキュメントを調べました。提供されている curl の例(GPU 使用率と信頼度しきい値のパラメータを指定した /predict への POST リクエスト)は、ワークフローの実感をしっかりと与えてくれます。サーバーは純粋な C++ で記述されており、単一のコードベースでクラウド、デスクトップ、組み込みデバイスをサポートすると謳っています。これは重要な技術的な差別化要因です。対照的に、Platform UI は、Jupyter Notebook の統合と GPU サポートを備えた Web インターフェースを提供し、より高レベルのモデル管理を目的としています。
開発者にとって、オンボーディングフローは簡単です。サーバーのソースをダウンロードするか、Docker イメージを使用できます。クイックスタートガイドは最小限ですが、機能しています。オープンソースサーバーでは、サインアップや API キーは必要ありません。すべてを自己ホストします。これにより、データとインフラストラクチャを完全に制御したいユーザーの障壁が低くなります。
機能とユースケース
DeepDetect は、画像タグ付け、物体検出、セグメンテーション、OCR、音声、動画、テキスト分類、さらには表形式データや時系列データ向けの CSV など、幅広い AI タスクをサポートしています。サイトでは、GPU、CPU、組み込みデバイス向けの25以上の事前学習済みモデルとニューラルネットワークテンプレートが誇らしげにリストされています。私は、GitHub リポジトリからいくつかのサンプル画像を使用して、ローカルでサーバーをテストしました。応答時間は印象的で、最適化された C++ バックエンドのおかげで、ミッドレンジ GPU での物体検出が1秒未満でした。
DeepDetect がクラウドの代替製品と一線を画すのは、「frugal models(質素なモデル)」と小データトレーニングに重点を置いている点です。2021年8月のブログ記事では、限られたデータでの深層モデルの戦略について議論されており、このプラットフォームがラベル付きデータが不足している現実のシナリオ向けに構築されていることが示されています。Platform UI には、コードを書かずにデータをアップロードし、ハイパーパラメータを設定し、実験を監視できる Web ベースのトレーニングインターフェースが含まれています。これにより、REST API と本格的な MLOps プラットフォームの間のギャップを埋めています。
デプロイメントに関しては、REST API は複数のモデルを同時に提供できます(リアルタイムの複数モデル推論は、2022年1月の記事で強調されている機能です)。C++ サーバーは、超低レイテンシが要求されるアプリケーション向けに、ネイティブの C++ API も公開しています。このデュアルインターフェース(REST とネイティブ C++)により、マイクロサービスアーキテクチャと組み込みシステムの両方に適しています。
価格、オープンソースエコシステム、競合他社
価格は Web サイトに公開されていません。Server と Platform UI はどちらもオープンソース(GitHub でホストされ、チェンジログとソースリンクがあります)であるため、無料で使用できます。有料のクラウドティアやエンタープライズライセンスについての言及はなく、プロジェクトはコミュニティ主導であるように見えます。これは予算に敏感なチームにとっては強みですが、マネージドホスティングや専用サポートが必要な場合は制限となります。サイトでは、ユーザーに Gitter チャットへの参加やニュースレターの購読を勧めています。これは典型的な商用セールスファネルではありません。
代替製品の中では、TensorFlow Serving と TorchServe が最も直接的な競合です。TensorFlow エコシステムに密に結合されている TensorFlow Serving とは異なり、DeepDetect はさまざまなアーキテクチャを内蔵でサポートし、統一された REST API を備えたモデル非依存のアプローチを提供します。また、Platform UI と Jupyter 統合により差別化されています。一方、AWS Rekognition や Google Cloud Vision などのクラウドサービスはよりシンプルな API を提供しますが、そのインフラストラクチャと価格モデルにロックインされます。DeepDetect は、ベンダーロックインを回避し、エッジデバイスやエアギャップ環境にデプロイする必要があるチームに最適です。
プロジェクトの「世界中の優れたチームが DeepDetect を使用しています」という主張は、小規模ながら活発なコミュニティによって支えられています。最新のブログ記事は2022年と2021年のものであり、新機能のペースが鈍化している可能性があります。しかし、中核機能は成熟しており、十分に文書化されています。
最終的な評価と推奨事項
DeepDetect は、深層学習の推論とトレーニングのための強力なオープンソースフレームワークであり、特にパフォーマンスと柔軟性に優れています。多様なハードウェアに最小限のオーバーヘッドで AI をデプロイするという問題を真に解決します。C++ サーバーは、レイテンシに敏感なアプリケーションにとって際立った機能です。
ただし、制限もあります。ドキュメントは十分ではありますが、商用の代替製品ほどの洗練さはありません。Web UI は機能的ですが、SageMaker や Vertex AI の提供ほど洗練されていません。新しいユーザーは、DevOps の経験がない場合、初期セットアップ(依存関係のインストール、GPU サポートの設定など)に困難を感じるかもしれません。また、マネージドクラウドオプションがないため、スケーリングと信頼性を自分で処理する必要があります。
DeepDetect は、スタックを完全に制御したい、オープンソースツールを好む、エッジデバイスや複雑な C++ パイプライン内にモデルをデプロイする必要があるデータサイエンティストや ML エンジニアに推奨します。最小限のインフラストラクチャ管理で迅速なプロトタイピングを優先するチームにはあまり適していません。Docker と REST API に慣れているなら、ぜひ試してみてください。無料のオープンソースライセンスは魅力的な理由です。
DeepDetect を自分で試すには、https://deepdetect.com/ にアクセスしてください。
コメント