Model Serving
モデルサービングがどのように学習済みモデルと本番環境の架け橋となるかを学びます。Ultralytics Platform 上での Ultralytics YOLO26 のデプロイ戦略を探りましょう。
モデルサービングとは、学習済みの機械学習モデルをホスティングし、ネットワークインターフェースを通じてソフトウェアアプリケーションからその機能を利用できるようにするプロセスのことです。ディスク上に保存された静的なモデルファイルと、現実世界のデータを処理するライブシステムとの間の橋渡し役として機能します。モデルが機械学習 (ML)のトレーニングフェーズを完了したら、画像、テキスト、表形式データなどの入力を受け取り、予測を返すことができる本番環境に統合する必要があります。これは通常、モデルをApplication Programming Interface (API)でラップすることで実現され、Webサーバー、モバイルアプリ、IoTデバイスとの通信を可能にします。
AIにおけるモデルサービングの役割#
モデルサービングの主な目的は、予測モデリングの機能を効果的に運用可能にすることです。トレーニングが精度と損失の最小化に焦点を当てるのに対し、サービングはレイテンシ(予測が返されるまでの速度)やスループット(1秒あたりに処理できるリクエスト数)などのパフォーマンス指標に焦点を当てます。堅牢なサービングインフラストラクチャにより、コンピュータビジョン (CV)システムが高負荷時でも信頼性を維持できるようになります。多くの場合、モデルを依存関係とともにパッケージ化してさまざまなコンピューティング環境で一貫した動作を保証するDockerなどのツールを使用したコンテナ化などのテクノロジーが関与します。
実社会での応用#
モデルサービングは、データに基づいた即時の意思決定を可能にすることで、さまざまな業界に広がるAI機能を支えています。
- スマートマニュファクチャリング: 産業現場では、AI in manufacturingシステムはサービングされたモデルを使用して組立ラインを検査します。部品の高解像度画像がローカルサーバーに送信され、そこでYOLO26モデルが傷や位置ずれなどの欠陥を検出し、不良品を取り除くための即座のアラートをトリガーします。
- リテールオートメーション: 小売業者は、顧客体験を向上させるためにAI in retailを活用しています。オブジェクト検出モデルによってサービングされたカメラがチェックアウトゾーン内の商品を特定し、手動でのバーコードスキャンを必要とせずに合計金額を自動的に計算します。
実践的な実装#
モデルを効果的にサービングするために、異なるトレーニングフレームワークとサービングエンジン間の相互運用性を促進するONNXなどの標準化されたフォーマットにモデルをエクスポートすることが有益な場合がよくあります。次の例は、モデルをロードして推論を実行する方法を示しており、Pythonを使用してサービングエンドポイント内部に存在するロジックをシミュレートしています。
from ultralytics import YOLO
# Load the YOLO26 model (this typically happens once when the server starts)
model = YOLO("yolo26n.pt")
# Simulate an incoming API request with an image source URL
image_source = "https://ultralytics.com/images/bus.jpg"
# Run inference to generate predictions for the user
results = model.predict(source=image_source)
# Process results (e.g., simulating a JSON response to a client)
print(f"Detected {len(results[0].boxes)} objects in the image.")適切な戦略の選択#
サービング戦略の選択は、特定のユースケースに大きく依存します。オンラインサービングは、RESTやgRPCなどのプロトコルを介して即座に応答を提供するため、ユーザー向けWebアプリケーションに不可欠です。逆に、バッチサービングは大量のデータをオフラインで処理するため、毎日のレポート生成などのタスクに適しています。プライバシーやインターネット接続に依存しない低レイテンシを必要とするアプリケーションの場合、Edge AIはサービングプロセスをデバイスに直接移行し、TensorRTなどの最適化されたフォーマットを利用して制約のあるハードウェアでのパフォーマンスを最大化します。多くの組織がUltralytics Platformを活用して、クラウドAPIやエッジデバイスなどのさまざまなエンドポイントへのこれらのモデルのデプロイを簡素化しています。
関連用語との違い#
密接に関連していますが、「モデルサービング」はモデルデプロイや推論とは異なります。
- モデルデプロイ: これは、モデルを本番環境にリリースするより広いライフサイクルステージを指します。サービングは、デプロイされたモデルを実行するために使用される具体的なメカニズムまたはソフトウェア(NVIDIA Triton Inference ServerやTorchServeなど)です。
- 推論: これは、入力から予測を計算する数学的な行為です。モデルサービングは、エンドユーザーのために推論が確実に実行されるようにするインフラストラクチャ(ネットワーク、スケーラビリティ、セキュリティ)を提供します。
- マイクロサービス: サービングは、マイクロサービスのセットとして設計されることが多く、モデルはアプリケーションの他の部分がクエリを実行できる独立したサービスとして実行され、JSONなどの軽量なフォーマットでデータをやり取りすることがよくあります。






