> 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/create-a-vision-event.md).

# Vision Event を作成

HTTP API 経由で 1 件の Vision Event を記録し、デプロイしたモデルからの観測をログに残します。

## 概要

A [ビジョンイベント](/deployment/ja/to/vision-events.md) は、デプロイ済みのコンピュータビジョンモデルが観測した内容（たとえば、検出された欠陥や在庫数）を、任意の画像、予測、カスタムメタデータとともに、タイムスタンプ付きで記録したものです。このページでは、単一のイベントを記録して、検索・フィルタ可能な本番履歴の一部にする方法を示します。多数のイベントを一度に取り込むには、 [Vision Eventを一括作成](/deployment/ja/to/vision-events/batch-create-vision-events.md)を使用します。デプロイにクラウドへの経路がない場合は、 [Vision Eventバンドルをアップロード](/deployment/ja/to/vision-events/upload-a-vision-event-bundle.md).

## HTTP API

コンピュータビジョンのデプロイからの観測を記録するために、単一のビジョンイベントを作成します。

**必要なスコープ:** `vision-events:write` または `device:update`

{% openapi src="/files/934e54fa9aa57656316a422a76238b867f081de5" path="/vision-events" method="post" %}
[openapi.yaml](https://970637113-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoksNmwps1HmYr8TqHDnX%2Fuploads%2Fgit-blob-90cd0189aea08d3263ce3e004f4958cc7363d4ed%2Fopenapi.yaml?alt=media)
{% endopenapi %}

### 画像メタデータ

使用します `metadata` を画像オブジェクトで使用して、合否判定、シリアル番号、カメラ角度など、その画像にのみ属する値を記録します。値は、イベント詳細ビューで画像と一緒に表示されます。イベント全体を表す値を付加するには、代わりに `customMetadata` を使用します。

制限に違反するキーは `metadata` 破棄され、 `warnings` 配列で報告されます。画像の残りの部分は引き続き保存されます。

イベントでどのキーが使用されているかを確認するには、 [画像メタデータスキーマを取得](/deployment/ja/to/vision-events/get-image-metadata-schema.md)を呼び出します。これらのキーでイベントをフィルタするには、 `imageMetadataFilters` を [イベントのクエリ](/deployment/ja/to/vision-events/query-events.md#query-vision-events).

### 検証と警告

Vision Events API は即時取り込みを使用します。厳密に検証されるのは必須の4つのフィールド（`eventId`, `eventType`, `useCaseId`, `timestamp`）のみです。これらが通れば、他のフィールドにエラーがあっても、イベントは常に受け入れられて保存されます。

必須ではないフィールドに関する問題は、拒否の原因ではなく、レスポンス内の `warnings` 配列として返されます。これには次が含まれます:

* eventData 内の `必須フィールドの欠落` (例: `relatedEventId` が `operator_feedback`)
* の `必須フィールドの欠落` フィールドの不正な値（例: `severity`)
* スキーマの一部ではない、認識されないフィールド

警告がある場合、無効な部分は空のオブジェクトとして保存されますが、 `必須フィールドの欠落` 無効な部分 `{}`、イベント自体は引き続き作成されます。

レスポンスには、 `deprecations` 配列も含まれる場合があります。これは非推奨のフィールド名が使用されていた場合です。

## Python SDK

コンピュータビジョンのデプロイからの観測を記録するために、単一のビジョンイベントを作成します。

```python
import roboflow

roboflow.login()

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

ws.write_vision_event({
    "eventId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "eventType": "quality_check",
    "useCaseId": "a1b3c8e1",
    "timestamp": "2024-01-15T10:30:00Z",
    "eventData": {
        "result": "fail",
        "externalId": "batch-001",
    },
    "customMetadata": {
        "line": "A1",
        "operator": "John Doe",
        "temperature": 72.5,
    },
})
```

イベントのペイロードはクライアント側の検証なしでそのままサーバーに送信されるため、新しいイベントタイプやフィールドはSDKの更新なしで利用できます。

**必須フィールド:**

* **`eventId`** (string, 最大256文字): グローバルに一意な識別子。UUID (v4) を使用します。
* **`eventType`** (string): 次のいずれか: `quality_check`, `inventory_count`, `safety_alert`, `custom`、または `operator_feedback`.
* **`useCaseId`** (string): このイベントが属するユースケース。
* **`timestamp`** (string, ISO 8601): イベントが発生した時刻。

**任意のフィールド:**

* **`必須フィールドの欠落`** (dict): タイプ固有のイベントデータ。
* **`deviceId`**, **`streamId`**, **`workflowId`** (string): コンテキスト識別子。
* **`images`** (list): 注釈付きの画像オブジェクト。詳細は [Vision Event画像をアップロード](/deployment/ja/to/vision-events/upload-a-vision-event-image.md#python-sdk).
* **`videos`** (list): 動画オブジェクト。各 `sourceId` を [Vision Event動画をアップロード](/deployment/ja/to/vision-events/upload-a-vision-event-video.md#http-api).
* **`customMetadata`** (dict): 最大100個のキーと値のペアを持つカスタムメタデータ。
* **`comment`** (string): イベントに関するメモ。主に `operator_feedback`.

完全なイベントスキーマ、タイプごとのイベントデータ構造、画像注釈フォーマットについては、 [REST API リファレンス](#http-api).
