> For the complete documentation index, see [llms.txt](https://docs.roboflow.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.roboflow.com/reference/ja/tui-lun/inference-cli/infer.md).

# 予測を行う

この `inference infer` このコマンドは、入力画像または動画ファイルに基づいてモデルから予測を行い、Inference Server にリクエストを送信する簡単な方法を提供します。

{% hint style="success" %}
コマンドの詳細を確認するには、次を実行します:

```bash
inference infer --help
```

{% endhint %}

## コマンドの詳細

`inference infer` 入力パスまたは URL とモデルバージョンを受け取り、予測を生成し（必要に応じて次を使用して可視化も行います `supervision`）。また、Roboflow のホスト型推論サーバーで推論を実行するホストを指定することもできます。

{% hint style="info" %}
ローカルの Inference Server を使用している場合は、コマンド `inference server start` が先に実行されていることを確認してください。
{% endhint %}

{% hint style="success" %}
Roboflow API キーは、 `ROBOFLOW_API_KEY` 環境変数を介して指定できます。
{% endhint %}

## 例

### ローカル画像で予測する

このコマンドは、選択したモデルを使用してローカル画像から予測を行い、その予測をコンソールに出力します。

```bash
inference infer -i ./image.jpg -m {your_project}/{version} --api-key {YOUR_API_KEY}
```

可視化された予測を表示するには、 `-D` オプションを使用します。予測と可視化をローカルディレクトリに保存するには、 `-o {path_to_your_directory}` オプションを使用します。これらのオプションは他のモードでも機能します。

```bash
inference infer -i ./image.jpg -m {your_project}/{version} --api-key {YOUR_API_KEY} -D -o {path_to_your_output_directory}
```

### 画像 URL で予測する

```bash
inference infer -i https://[YOUR_HOSTED_IMAGE_URL] -m {your_project}/{version} --api-key {YOUR_API_KEY}
```

### ホスト型 API を使用する

```bash
inference infer -i ./image.jpg -m {your_project}/{version} --api-key {YOUR_API_KEY} -h https://serverless.roboflow.com
```

### ローカルディレクトリから予測する

```bash
inference infer -i {your_directory_with_images} -m {your_project}/{version} -o {path_to_your_output_directory} --api-key {YOUR_API_KEY}
```

### 動画ファイルで予測する

```bash
inference infer -i {path_to_your_video_file} -m {your_project}/{version} -o {path_to_your_output_directory} --api-key {YOUR_API_KEY}
```

### 可視化を設定する

この `-c` オプションには、 `*.yml` ファイルへのパスを指定できます。これは `supervision` の可視化を設定します。あらかじめ定義された設定がいくつかあります。

* `bounding_boxes` - を使用 `BoxAnnotator` と `LabelAnnotator` の annotators
* `bounding_boxes_tracing` - を使用 `ByteTracker` および annotators（`BoxAnnotator`, `LabelAnnotator`)
* `masks` - を使用 `MaskAnnotator` と `LabelAnnotator` の annotators
* `polygons` - を使用 `PolygonAnnotator` と `LabelAnnotator` の annotators

カスタム設定は、このスキーマに従って作成できます。

```yaml
annotators:
  - type: "bounding_box"
    params:
      thickness: 2
  - type: "label"
    params:
      text_scale: 0.5
      text_thickness: 2
      text_padding: 5
  - type: "trace"
    params:
      trace_length: 60
      thickness: 2
tracking:
  track_activation_threshold: 0.25
  lost_track_buffer: 30
  minimum_matching_threshold: 0.8
  frame_rate: 30
```

この `の annotators` field は、次の 2 つのキーを持つ辞書のリストです。 `type` と `param`. `type` は、annotator クラス名を指します:

```python
from supervision import *
ANNOTATOR_TYPE2CLASS = {
    "bounding_box": BoxAnnotator,
    "box": BoxAnnotator,
    "mask": MaskAnnotator,
    "polygon": PolygonAnnotator,
    "color": ColorAnnotator,
    "halo": HaloAnnotator,
    "ellipse": EllipseAnnotator,
    "box_corner": BoxCornerAnnotator,
    "circle": CircleAnnotator,
    "dot": DotAnnotator,
    "label": LabelAnnotator,
    "blur": BlurAnnotator,
    "trace": TraceAnnotator,
    "heat_map": HeatMapAnnotator,
    "pixelate": PixelateAnnotator,
    "triangle": TriangleAnnotator,
}
```

`param` は annotator コンストラクタのパラメータの辞書です（ [`supervision`](https://github.com/roboflow/supervision) ドキュメントで確認できます。コンストラクタ内で定義されたクラスや enum は YAML 設定から解決できない場合があるため、基本型の値のみを使用できます）。

`tracking` はオプションのキーで、 `ByteTrack`.

### 推論のハイパーパラメータを指定する

この `-mc` パラメータには、 `*.yml` ファイルへのパスを指定できます。このファイルは、モデル設定（信頼度しきい値や IoU しきい値など）を定義します。指定した場合、その設定は `InferenceConfiguration` オブジェクトを初期化するために使用されます。 `inference_sdk` ライブラリから [Inference SDK 設定リファレンス](/reference/ja/tui-lun/inference-sdk/configuration.md) を参照して、 `*.yml` ファイルを通じてどのオプションを設定できるか確認してください。設定キーは、のフィールド名と一致している必要があります。 `InferenceConfiguration` オブジェクト。
