본문으로 건너뛰기

Semantic search

POST 

/api/v1/search

Search the indexed video corpus by natural-language query. Returns scene-level matches grouped by parent video, scored across caption and optionally transcript and multimodal embeddings.

Pick the modality based on what you care about:

  • caption — narrative description (default)
  • transcript — verbatim speech (silent scenes excluded)
  • omni — visual/audio embedding
  • both — caption + omni, side-by-side
  • all — caption + transcript + omni (three columns)

Filter with iab_t1 (content category) and garm_min_level (brand-safety level) to narrow the result set. video_id restricts the search to one video's scenes.

AI judge (opt-in): judge: "text" (requires modality: "caption") makes the response an NDJSON stream: a meta line with the plain search result, one result line per judged scene (0-10 relevance + reason), a summary keeping only scenes at or above min_relevance (default 3; videos ordered by best relevance then best cosine, score unchanged, top k videos), then done. summary.empty means nothing matched; summary.all_errors means the judge itself failed.

Request​

Responses​

JSON SearchResponse by default. With judge: "text" the body is an NDJSON stream instead (application/x-ndjson).