For the complete documentation index, see llms.txt. This page is also available as Markdown.

Workflowをデプロイ

Workflowをデプロイする4つの方法: Roboflow API、専用デプロイ、セルフホストInference、またはバッチ処理。

ワークフローをデプロイする方法は4つあります:

  1. 画像を送信します。 Roboflow API で、ワークフローを使って処理します。

  2. を作成します。 Roboflow 専用デプロイ を、あなた専用に用意されたインフラ上で利用します。

  3. あなた自身のハードウェアでワークフローを実行します。 Roboflow Inference.

  4. を使用します。 バッチ処理 を使って、コーディングコストを抑えながら大量のデータを効率的に処理します。

どの विकल्पを使うべきですか?

オプション
最適な用途

HTTP API (Roboflow ホスト型、またはセルフホストの 推論 サーバー)

Python 以外の言語でアプリケーションを動かしたい場合、あるいは計算負荷の高い処理を専用サーバーにオフロードしたい場合に、ワークフローをスタンドアロンのサービスとして使います。

Serverless またはセルフホストの Inference Server 上のワークフローを通じて、動画ファイル、Webカメラ、カメラストリームを処理します。

コマンドラインから、画像・ディレクトリ・動画ファイルをコードなしで処理します。

保存済みの画像や動画に対する大規模な非同期ジョブを、あなた向けに用意されたインフラで実行します。

推論 Python パッケージ

Execution Engine を Python アプリケーション内で直接実行し、HTTP を介さずに完全に制御できます。 Execution Engine.

ワークフローを自分のハードウェアで実行する場合、画像と動画ファイルの両方で実行できます(通常の Webカメラ や業務用 CCTV カメラ).

オンプレミスデプロイを選択すると、Inference をデプロイできるあらゆるシステム上でワークフローを実行できます。これには次が含まれます:

  • NVIDIA Jetson

  • AWS EC2、GCP Cloud Engine、Azure Virtual Machines

  • Raspberry Pi

Roboflow Enterprise のお客様は、Basler カメラで推論を実行するなど、追加の動画ストリームオプションをご利用いただけます。提供内容の詳細については、 Roboflow の営業チームにお問い合わせください.

ワークフローをデプロイする

ワークフローをデプロイするには、Workflows エディタの左上にある「Deploy」ボタンをクリックします。すべてのデプロイオプションはこのページに記載されています。

Workflows エディタのコードスニペットには、Workflows の URL と API キーがあらかじめ入力されます。

スニペットは、エディタが実行しているランタイムに一致します。エディタをローカルの Inference サーバーまたは 専用デプロイに切り替えると、 api_url は各スニペット内でそのサーバーを指し、対応するタブには推奨と表示されます。また、スニペットには保存済みの Workflow プレビューに画像がある場合、その画像の例も入力されます。

Workflows の利用制限の詳細については、 Roboflow の料金ページ.

画像を処理する

Roboflow API またはローカルの Inference サーバーを使って、単一画像でワークフローを実行できます。

まず、Roboflow Inference SDK をインストールします:

ローカルで実行する場合は、 公式の Docker インストール手順 に従って、マシンに Docker をインストールし、Inference サーバーを起動します:

次に、新しい Python ファイルを作成し、次のコードを追加します:

上記では、 API_KEY をあなたの Roboflow API キーに置き換えてください。 workspace-nameworkflow-id をあなたの Roboflow ワークスペース名と Workflow ID に置き換えます。

これらの値を見つけるには、Roboflow Workflow を開いて「Deploy Workflow」をクリックします。次に、ページに表示されるコードスニペットからワークスペース名と workflow ID をコピーしてください。

ローカル実行は CPU と NVIDIA CUDA GPU デバイスで動作します。最高のパフォーマンスを得るには、NVIDIA Jetson や NVIDIA GPU 搭載のクラウドサーバーなど、GPU 対応デバイスにデプロイしてください。

エンドポイントをどの言語からでも直接呼び出したい場合は、HTTP リクエストを送信します:

キーを ?api_key= クエリパラメータとして送信するか、 api_key ボディフィールドとして送る方法は旧方式です。まだ動作しますが、 Authorization: Bearer ヘッダーを使えば、キーが URL やログに残りません。 REST API で認証する.

この inputs オブジェクトのキーはワークフローによって決まるため、定義した入力内容に応じて名前が異なります。 WorkflowImage として宣言された入力は、 typevalue キーを持つオブジェクトを受け取ります。HTTP 経由でサポートされる type 値は urlbase64.

上記の例では、Roboflow プラットフォームに保存されたワークフローを実行しています。リクエストと一緒に完全なワークフロー定義を送ることもでき、API キーで保護されたブロックを使わずにゼロから作成したワークフローに便利です。 Inference SDK仕様 引数を参照してください。

動画ストリームを処理する

Inference SDK の WebRTC クライアントを使って、Webカメラ、RTSP ストリーム、または動画ファイル上でワークフローを実行します。同じコードは Serverless とセルフホストの Inference Server の両方で動作します。

WebRTC 依存関係込みで SDK をインストールします:

セルフホストの Inference Server を起動するか、 https://serverless.roboflow.com を使ってサーバーを起動せずに実行します。次に Python ファイルを作成します:

上記では、 API_KEY をあなたの Roboflow API キーに置き換えてください。 workspace-nameworkflow-id をあなたの Roboflow ワークスペース名と Workflow ID に置き換えます。

これらの値を見つけるには、Roboflow Workflow を開いて「Deploy Workflow」をクリックします。次に、ページに表示されるコードスニペットからワークスペース名と workflow ID をコピーしてください。

変更します WebcamSource() を、動画がローカルの Web カメラ由来でない場合は別のソースに。 Workflows による動画処理 を参照してください。RTSP ストリーム、動画ファイル、出力動画について説明しています。

データのバッチを処理する

Roboflow のバッチ処理サービスを使えば、画像や動画ファイルのディレクトリといったデータ全体のバッチを効率的に処理できます。このフルマネージドなソリューションでは、コーディングやローカル計算は不要です。データとワークフローを選ぶだけで、あとは Roboflow に任せられます。

バッチ処理では UI、CLI、REST API のいずれの操作もサポートしています。以下では CLI コマンドを紹介します。 すべてのオプションを確認してください.

処理を実行するには、Inference CLI をインストールします:

次に、データを取り込みます:

データが読み込まれたら、処理ジョブを開始します:

ジョブの進行状況は次のように表示できます:

ジョブが完了したら、結果をエクスポートします:

CLI でローカルディレクトリを処理する

すでに実行中のマシン上にあるデータについては、 inference-cli コードなしで、単一画像、画像ディレクトリ、または動画ファイルに対してワークフローを実行できます:

出力ディレクトリには、入力ファイルごとのサブディレクトリが1つずつ作成され、それぞれに results.json そのファイルの Workflow 結果と実行中に生成された画像が含まれるファイル、および aggregated_results.csv すべての入力結果を連結したファイルが含まれます。

を参照してください。 Inference CLI リファレンス で、すべてのオプションを確認できます。

次のステップ

最終更新

役に立ちましたか?