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

設定

InferenceConfiguration を使用して、InferenceHTTPClient の既定値、タスクごとのモデルパラメータ、Workflows 実行オプションを設定します。

設定オプション

APIキーの送信方法

この api_key_transport のフィールド InferenceConfiguration は、クライアントがAPIキーをサーバーに送信するために使用する経路を制御します。キーを次の形式で送信する場合: Authorization: Bearer ヘッダーにすると、URLやサーバーログに含まれず、推奨される方法です:

from inference_sdk import InferenceHTTPClient, InferenceConfiguration

client = InferenceHTTPClient(
    api_url="https://serverless.roboflow.com",
    api_key="ROBOFLOW_API_KEY",
).configure(InferenceConfiguration(api_key_transport="header"))

3つのモードがあります:

モード
動作
サーバー互換性

legacy

キーは api_key クエリパラメータまたは JSON 本文フィールドとして送信されます。既定では、明示的に選択しない場合、クライアントはこの動作を行い、1回だけ警告を出します。

すべてのサーバーバージョンで対応。

both

従来の経路はそのままで、さらに Authorization: Bearer header

すべてのサーバーバージョンで対応。

header

キーは Authorization: Bearer のみで送信されます。URLやリクエスト本文にキーは含まれません。推奨。

Inference 1.5.0 以降のリリース。古いサーバーに対しては、リクエストはキーなしで届きます。

使用してください header 新しいコードでは。ホスト型の Roboflow API はこれを受け入れ、キーが URL に含まれることもありません。呼び出し先の一部のサーバーがまだ Inference 1.5.0 より古いリリースを使っている場合、または途中のプロキシが Authorization ヘッダーを取り除く場合は、 both 移行期間中はこれを使ってください: すべてのサーバーバージョンで動作します。

configure(...) は設定オブジェクト全体を置き換えます。後で他のオプションを設定する場合は、送信方法を同じ InferenceConfigurationに含めてください。そうしないとクライアントは次の設定に戻ります: legacy:

client.configure(
    InferenceConfiguration(
        confidence_threshold=0.8,
        api_key_transport="header",
    )
)

コンテキストマネージャーでの設定

メソッド use_configuration(...) および use_model(...) はコンテキストマネージャー内で使うように設計されています。 コンテキストマネージャーを抜けると、以前の設定値が復元されます。

ご覧のとおり、 model_id は、デフォルトモデルが設定されていない場合にのみ予測メソッドで必要です。

モデルIDは次の文字列で構成されます <project_id>/<version_id>。参照: Workspace ID と Project ID これらの情報を確認してください。

一度設定し、次の変更までそれを使い続ける

メソッド configure(...) および select_model(...) はクライアントの状態を変更し、その変更は次の変更まで保持されます。

次の方法でも初期化できます 連鎖 モード:

上書き model_id 特定の呼び出しで

model_id 特定の呼び出しで上書きできます:

クライアント設定の詳細

InferenceHTTPClient は次を提供します: InferenceConfiguration 完全な設定を保持する dataclass。

この設定のフィールドを上書きすると、クライアントの動作(およびモデルを提供する API の動作)が変わります。特定のフィールドは特定のコンテキストで使われます。特に:

分類モデル

  • visualize_predictions:可視化の有効/無効を切り替えるフラグ

  • confidence_threshold として confidence

  • stroke_width:可視化時の線幅

  • disable_preproc_auto_orientation, disable_preproc_contrast, disable_preproc_grayscale, disable_preproc_static_crop サーバー側の前処理を変更するため

  • disable_active_learning 次を防ぐため Active Learning 機能がデータポイントを登録するのを防ぎます(たとえばモデルのテスト時に便利です)

  • active_learning_target_dataset - 特定のモデル(たとえば project_a/1)で推論し、別のプロジェクトにデータを保存したい場合 project_b、後者はこのパラメータで指定する必要があります。 異なる種類のモデルを project_a および project_bで混在して使用することはできません。その場合、データは登録されません。

  • source:推論呼び出しに「source」属性を設定する任意の文字列。 モデルモニタリングを使用している場合、これは推論リクエストとともにログに記録されるため、特定のソースからの推論リクエストを絞り込んだり検索したりできます。たとえば、どのアプリケーション、システム、またはデプロイがリクエストを送信しているかを特定できます。

  • source_info:推論呼び出しに追加の「source_info」属性を設定する任意の文字列。たとえば、アプリ内のサブコンポーネントを識別するために使います。

物体検出モデル

  • visualize_predictions:可視化の有効/無効を切り替えるフラグ

  • visualize_labels:可視化が有効な場合にラベル可視化の有効/無効を切り替えるフラグ

  • confidence_threshold として confidence

  • class_filter クラスのリストを除外するため

  • class_agnostic_nms:NMS をクラス非依存にするかどうかを制御するフラグ

  • fix_batch_size

  • iou_threshold:NMS の IoU 閾値を指定するため

  • stroke_width:可視化時の線幅

  • max_detections:モデルから返す検出数の上限

  • max_candidates:モデルの後処理で使用する候補数の上限

  • disable_preproc_auto_orientation, disable_preproc_contrast, disable_preproc_grayscale, disable_preproc_static_crop サーバー側の前処理を変更するため

  • disable_active_learning, active_learning_target_dataset, source, source_info — 上述のとおり

キーポイント検出モデル

  • visualize_predictions:可視化の有効/無効を切り替えるフラグ

  • visualize_labels:可視化が有効な場合にラベル可視化の有効/無効を切り替えるフラグ

  • confidence_threshold として confidence

  • keypoint_confidence_threshold (次の keypoint_confidence) のように、モデルの信頼度に基づいて検出されたキーポイントを絞り込むため

  • class_filter 物体クラスのリストを除外するため

  • class_agnostic_nms:NMS をクラス非依存にするかどうかを制御するフラグ

  • fix_batch_size

  • iou_threshold:NMS の IoU 閾値を指定するため

  • stroke_width:可視化時の線幅

  • max_detections:モデルから返す検出数の上限

  • max_candidates:モデルの後処理で使用する候補数の上限

  • disable_preproc_auto_orientation, disable_preproc_contrast, disable_preproc_grayscale, disable_preproc_static_crop サーバー側の前処理を変更するため

  • disable_active_learning, active_learning_target_dataset, source, source_info — 上述のとおり

インスタンスセグメンテーションモデル

  • visualize_predictions:可視化の有効/無効を切り替えるフラグ

  • visualize_labels:可視化が有効な場合にラベル可視化の有効/無効を切り替えるフラグ

  • confidence_threshold として confidence

  • class_filter クラスのリストを除外するため

  • class_agnostic_nms:NMS をクラス非依存にするかどうかを制御するフラグ

  • fix_batch_size

  • iou_threshold:NMS の IoU 閾値を指定するため

  • stroke_width:可視化時の線幅

  • max_detections:モデルから返す検出数の上限

  • max_candidates:モデルの後処理で使用する候補数の上限

  • disable_preproc_auto_orientation, disable_preproc_contrast, disable_preproc_grayscale, disable_preproc_static_crop サーバー側の前処理を変更するため

  • mask_decode_mode

  • tradeoff_factor

  • disable_active_learning, active_learning_target_dataset, source, source_info — 上述のとおり

クライアントの設定

  • output_visualisation_format:次のいずれか VisualisationResponseFormat.BASE64, VisualisationResponseFormat.NUMPY, VisualisationResponseFormat.PILLOW。サーバー側の可視化が有効な場合、出力に使用する形式を選択できます。

  • client_downsizing_disabled:次に設定 False クライアント側での縮小処理を行いたい場合。既定値 True。クライアント側のスケーリングは、推論用入力を縦横比を保ったまま縮小するだけで、ネット接続をより効率的に使うためのものです(その代わり画像の加工/変換が発生します)。モデルの入力サイズ情報は目標サイズの決定に使われ、利用できない場合は default_max_input_size が使用されます。

  • max_concurrent_requests:開始できる同時リクエスト数の上限

  • max_batch_size:1つのリクエストに投入できる要素数の上限

  • workflow_run_retries_enabled:Workflows 実行中の一時的なエラーを再試行するかどうかを決めるフラグ。既定値は true であり、既定値は環境変数 WORKFLOW_RUN_RETRIES_ENABLED.

Workflows 実行の設定

  • profiling_directory:Workflows プロファイラのトレースを保存する場所を指定します。既定では ./inference_profiling ディレクトリです。

最終更新

役に立ちましたか?