Поиск по содержимому
Поиск по содержимому
POST /search/
Выполняет поиск по содержимому обработанных видео.
Тело запроса
Поиск по одной задаче:
{
"query": "поисковая фраза",
"job_id": "123e4567-e89b-12d3-a456-426614174000",
"n_results": 5
}Поиск по нескольким задачам:
{
"query": "поисковая фраза",
"job_ids": [
"123e4567-e89b-12d3-a456-426614174000",
"456e7890-e12b-34c5-d678-901234567890"
],
"n_results": 10
}Параметры
query- Поисковый запросjob_id- UUID одной задачи (взаимоисключающе сjob_ids)job_ids- Массив UUID задач (взаимоисключающе сjob_id)n_results- Максимальное количество результатов (по умолчанию: 5)
Пример запроса
curl -X POST "https://your-domain.com/search/" \
-H "x-api-key: your-api-key" \
-H "Content-Type: application/json" \
-d '{
"query": "машинное обучение",
"job_id": "123e4567-e89b-12d3-a456-426614174000",
"n_results": 5
}'Ответ
{
"result": "ok",
"data": [
{
"video_public_id": "request-id-uuid",
"start_from": 45.5,
"end_to": 67.2,
"text": "В этом разделе мы рассмотрим основы машинного обучения",
"similarity": 0.87,
"image": "https://your-domain.com/frames/vendor-key/job-id/45"
}
],
"query": "машинное обучение",
"total_results": 3
}Описание полей ответа
result- Статус выполнения поиска (okилиerror)data- Массив результатов поискаvideo_public_id- UUID запроса во внешней системеstart_from- Время начала найденного фрагмента (в секундах)end_to- Время окончания найденного фрагмента (в секундах)text- Найденный текстовый фрагментsimilarity- Коэффициент релевантности (от 0 до 1)image- URL изображения кадра для данной временной метки (если доступны frames)
query- Оригинальный поисковый запросtotal_results- Общее количество найденных результатов
Особенности поиска
Обогащение результатов - Если для задачи доступны кадры (frames), результаты автоматически дополняются ссылками на изображения
Ранжирование - Результаты сортируются по релевантности (similarity)
Контекст - Каждый результат включает временные рамки для точного позиционирования в видео
Ошибки поиска
При ошибке поиска API возвращает:
{
"detail": "Search request failed: описание ошибки"
}Возможные причины ошибок:
Задачи еще не обработаны полностью
Отсутствуют права доступа к указанным задачам
Проблемы с подключением к поисковому сервису
Некорректные параметры запроса