> 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/deployment/ja/to/vision-events.md).

# Vision Events

## 概要

### 概要

Vision Events は、デプロイ済みのコンピュータビジョンモデルからの視覚情報とあわせて、欠陥の検出や在庫数のカウントなどの重要なイベントを記録できる Roboflow のデータストアです。これにより、本番環境でビジョンシステムが観測したすべての内容を、検索可能かつフィルタリング可能な履歴として保持できます。

### Vision Event とは？

Vision Event は、モデルが画像を処理したときに作成されるタイムスタンプ付きの記録です。各イベントでは、必要に応じて以下を記録できます：

* **画像**：処理された元画像と関連する出力画像
* **予測**：モデルが返した物体検出、分類、インスタンスセグメンテーション、またはキーポイント
* **ソースメタデータ**：どのデバイス、ストリーム、またはワークフローがイベントを生成したか
* **カスタムメタデータ**：ドメイン向けに定義するキーと値のペア（例： `line_number`, `shift`, `part_number`)

プログラムからのアクセスについては、以下を参照してください。 [Vision Events API リファレンス](#http-api).

{% embed url="<https://www.youtube.com/watch?v=4HlYG1MacRk>" %}

### 重要な概念

#### ユースケース

1つの **ユースケース** は、共通の目的とカスタムメタデータ構造を共有するイベントをまとめます。同じユースケース内のイベントは通常、同様のメタデータフィールドを送信するため、一貫した方法でフィルタリングやクエリができます。

たとえば、「欠陥検出」ユースケースには常に `line_id`, `shift`、および `part_number` が含まれる場合があります。たとえイベントが複数の工場やカメラ設置場所から来る場合でも同様です。メタデータ構造が本質的に異なる場合は、別々のユースケースを作成してください（例：「PPE準拠」では `zone` と `alert_type` の代わりに）。

### このセクションでは

* [イベントを送信](/deployment/ja/to/vision-events/send-events.md)  - ワークフローのブロック、REST API、またはエッジデバイスのバックアップからイベントを送信します。
* [イベントをクエリ](/deployment/ja/to/vision-events/query-events.md)  - ダッシュボードでイベントをフィルタリングしたり、Agent に自然言語で問い合わせたり、API 経由でクエリしたりします。
* [トレーニング用に画像を追加](/deployment/ja/to/vision-events/add-images-for-training.md)  - 取得したイベント画像をプロジェクトに移してモデルの学習に使用します。
* [オペレーターのフィードバック](/deployment/ja/to/vision-events/operator-feedback.md)  - チームメンバーにイベントを正しい、誤り、または判断不能としてマークしてもらいます。
* [サマリーレポート](/deployment/ja/to/vision-events/summary-reports.md)  - ユースケースの定期ダイジェストをチームにメール送信します。
* [イベントを削除](/deployment/ja/to/vision-events/delete-events.md)  - もう不要なイベントをユースケースから削除します。

## HTTP API

Vision Events API を使うと、コンピュータビジョンのデプロイから構造化されたイベントを記録し、後からそれらをクエリして分析できます。イベントには、画像、検出アノテーション、カスタムメタデータ、ならびに品質チェック、在庫数、安全アラートなどの各種イベント向けデータを含められます。

Vision Events API を使うと、次のことができます：

* [Vision Event 画像をアップロード](/deployment/ja/to/vision-events/upload-a-vision-event-image.md#http-api)
* [Vision Event を作成](/deployment/ja/to/vision-events/create-a-vision-event.md#http-api)
* [Vision Event をバッチ作成](/deployment/ja/to/vision-events/batch-create-vision-events.md#http-api)
* [Vision Event バンドルをアップロード](/deployment/ja/to/vision-events/upload-a-vision-event-bundle.md#http-api)
* [Vision Events をクエリ](/deployment/ja/to/vision-events/query-events.md#http-api)
* [ユースケースを一覧表示](/deployment/ja/to/vision-events/use-cases.md#http-api)
* [カスタムメタデータスキーマを取得](/deployment/ja/to/vision-events/get-custom-metadata-schema.md#http-api)

### 認証

すべての Vision Events エンドポイントは、Roboflow APIキーを使った Bearerトークン認証を使用します：

```
Authorization: Bearer YOUR_API_KEY
```

Vision Events エンドポイントには、特定の [スコープ付きAPIキー](https://docs.roboflow.com/reference/authentication/authentication/scoped-api-keys) 権限が必要です：

* **読み取り操作** （query、list、schema）： `vision-events:read` または `device:read`
* **書き込み操作** （create、batch、upload）： `vision-events:write` または `device:update`

### ユースケース

各 Vision Event はユースケースに関連付けられます。ユースケースの作成と管理方法については、以下を参照してください。 [ユースケースのドキュメント](/deployment/ja/to/vision-events/use-cases.md).

また、 [既存のユースケースを一覧表示することもできます。](/deployment/ja/to/vision-events/use-cases.md#http-api) API 経由でイベントが記録されているものです。

### イベントタイプ

この API は5つのイベントタイプをサポートしており、それぞれに独自の `eventData` スキーマがあります：

| イベントタイプ             | 説明                 |
| ------------------- | ------------------ |
| `quality_check`     | QA および検査結果         |
| `inventory_count`   | 在庫の計測              |
| `safety_alert`      | 安全上のインシデントとアラート    |
| `custom`            | 自由形式のイベントデータ       |
| `operator_feedback` | モデル予測に対する人のフィードバック |

### データ保持

イベントは設定可能なルックバック期間（既定: 14日間）保持されます。 `lookbackDays` の値はクエリ応答で返されるため、ワークスペースの実効保持期間が分かります。

## Python SDK

Roboflow Python SDK は、Workspace オブジェクト上で Vision Event を扱うためのメソッドを提供します。 `Workspace` イベントの作成、フィルターとページネーション付きのクエリ、画像のアップロード、ユースケースの管理ができます。

イベントスキーマ、フィルタリングオプション、レスポンス形式の詳細は、以下を参照してください。 [Vision Events REST API ドキュメント](#http-api).

### クイックスタート

```python
import roboflow

roboflow.login()

rf = roboflow.Roboflow()
ws = rf.workspace()

# ユースケースを作成
result = ws.create_vision_event_use_case("manufacturing-qa")
use_case_id = result["id"]

# 画像をアップロード
img = ws.upload_vision_event_image("photo.jpg")

# アップロードした画像でイベントを作成
ws.write_vision_event({
    "eventId": "c3d4e5f6-a1b2-4c3d-8e5f-6a7b8c9d0e1f",
    "eventType": "quality_check",
    "useCaseId": use_case_id,
    "timestamp": "2024-01-15T10:30:00Z",
    "images": [{"sourceId": img["sourceId"]}],
    "eventData": {"result": "pass"},
})

# イベントをクエリ
for page in ws.query_all_vision_events(use_case_id):
    for evt in page:
        print(evt["eventId"], evt["eventType"])
```

### 利用可能なメソッド

| メソッド                                                                                                             | 説明                              |
| ---------------------------------------------------------------------------------------------------------------- | ------------------------------- |
| [`upload_vision_event_image()`](/deployment/ja/to/vision-events/upload-a-vision-event-image.md#python-sdk)       | イベントで使用する画像をアップロード              |
| [`write_vision_event()`](/deployment/ja/to/vision-events/create-a-vision-event.md#python-sdk)                    | 単一の Vision Event を作成            |
| [`write_vision_events_batch()`](/deployment/ja/to/vision-events/batch-create-vision-events.md#python-sdk)        | 1回のリクエストで最大100件のイベントを作成         |
| [`query_vision_events()`](/deployment/ja/to/vision-events/query-events.md#python-sdk)                            | フィルターとページネーションでイベントをクエリ         |
| [`query_all_vision_events()`](/deployment/ja/to/vision-events/query-events.md#paginate-through-all-results)      | 一致するすべてのイベントを対象に自動ページネーションするクエリ |
| [`list_vision_event_use_cases()`](/deployment/ja/to/vision-events/use-cases.md#python-sdk)                       | ワークスペース内のユースケースを一覧表示            |
| [`create_vision_event_use_case()`](/deployment/ja/to/vision-events/use-cases.md#create-a-use-case)               | 新しいユースケースを作成                    |
| [`rename_vision_event_use_case()`](/deployment/ja/to/vision-events/use-cases.md#rename-a-use-case)               | ユースケース名を変更                      |
| [`archive_vision_event_use_case()`](/deployment/ja/to/vision-events/use-cases.md#archive-a-use-case)             | ユースケースをアーカイブ                    |
| [`unarchive_vision_event_use_case()`](/deployment/ja/to/vision-events/use-cases.md#unarchive-a-use-case)         | ユースケースのアーカイブを解除                 |
| [`get_vision_event_metadata_schema()`](/deployment/ja/to/vision-events/get-custom-metadata-schema.md#python-sdk) | 検出されたカスタムメタデータフィールドの型を取得        |

## MCP サーバー

AIエージェントを以下に接続すると [MCP サーバー](https://docs.roboflow.com/agents/mcp-server) これらのツールで本番イベントを確認できます：

<table data-search="false"><thead><tr><th width="290">ツール</th><th>説明</th></tr></thead><tbody><tr><td><code>vision_events_query</code></td><td>ユースケースの本番 Vision Event をクエリします。</td></tr><tr><td><code>vision_events_use_cases_list</code></td><td>ワークスペース内の Vision Event ユースケースを一覧表示します。</td></tr><tr><td><code>vision_events_use_case_create</code></td><td>新しい Vision Event ユースケースを作成します。</td></tr><tr><td><code>vision_events_custom_metadata_schema_get</code></td><td>ユースケースで検出されたカスタムメタデータスキーマを取得します。</td></tr></tbody></table>
