Create Search Index
Indexes resulting video clips with object, event, text and scene metadata so they are searchable using Lumeo AI Search.
Overview
The "Create Search Index" node indexes resulting video clips with object, event, text and scene metadata so they are searchable using Lumeo AI Search. Add this node after any upstream AI Model, OCR, Caption Generator nodes, and add a Save Clip node downstream of this node that saves to Lumeo Cloud.
Inputs & Outputs
- Inputs: 1, Media Format: Raw Video
- Outputs: 1, Media Format: Raw Video
- Output Metadata: Search Metadata
Properties
| Property | Description | Type | Default | Required |
|---|---|---|---|---|
index_objects | If enabled, index the objects and their attributes detected in the current frame. | bool | true | No |
object_types | ex. car,person,face.mask. Comma-separated list of object types to index. Empty list indexes all objects. Conditional on index_objects being true. | model-labels | null | No |
object_mode | Object index mode. Options: Labels (labels): Index each object's labels and attributes; Labels + Signature, once (signature_once): Index each object's labels, attributes and signature once; Labels + Signature, at interval (signature_interval): Index each object's labels, attributes and signature when first seen and at an interval. Conditional on index_objects being true. | enum | labels | Yes |
object_reid | If enabled, indexes specified objects for appearance similarity search (ReID). Requires corresponding ReID model upstream to insert ReID vectors. Conditional on index_objects being true. | bool | false | No |
index_events | If enabled, index any events inserted into the metadata by upstream Event nodes. | bool | true | No |
index_texts | If enabled, index the resulting text descriptions from upstream nodes like Caption Generator and OCR. | bool | true | No |
index_vectors | If enabled, index the scene extracted from the current image. | bool | true | No |
vectors_mode | Scene index mode. Options: Interval (interval); Trigger (trigger); Interval and trigger (interval_and_trigger). Conditional on index_vectors being true. | enum | interval | Yes |
trigger_type | Index the scene automatically when key metadata changes, or using a custom trigger. Options: Auto trigger (auto_trigger); Custom trigger (custom_trigger). Conditional on index_vectors being true. | enum | auto_trigger | Yes |
trigger | Custom trigger condition, if Trigger type is set to Custom trigger. Conditional on index_vectors being true. | trigger-condition | null | No |
interval | Index the scene and/or objects at this interval. Unit: seconds. | number | 1 | No |
object_min_presence | Duration in seconds for which an object must be seen before indexing its signature. Applies to signature_once and signature_interval modes. Unit: seconds. | number | 0 | No |
Output Metadata
The fields below are declared by this node's metadata schema; the JSON values are representative examples.
| Path | Type | Description |
|---|---|---|
search.type | string | Category of the search metadata entry. |
search.events | array | Array of event names collected from upstream metadata for search indexing. |
search.objects | array | Array of object and attribute labels collected for search indexing. |
search.texts | array | Array of text records collected for search indexing. |
search.trackables | array | Array of trackable identifiers collected from object attributes for search indexing. |
search.text_embeddings[].model_type | string | Embedding model that produced this vector. |
search.text_embeddings[].vector | array | Array of normalized embedding values. |
search.vectors[].model_type | string | Embedding model that produced this vector. |
search.vectors[].vector | array | Array of normalized embedding values. |
JSON example
{
"search": {
"events": [],
"objects": [],
"text_embeddings": [
{
"model_type": "value",
"vector": []
}
],
"texts": [],
"trackables": [],
"type": "value",
"vectors": [
{
"model_type": "value",
"vector": []
}
]
}
}Updated 3 days ago
Did this page help you?
