Поделиться через


Documents - Search Post

Поиск документов в индексе.

POST {endpoint}/indexes('{indexName}')/docs/search.post.search?api-version=2025-09-01

Параметры URI

Имя В Обязательно Тип Описание
endpoint
path True

string

URL-адрес конечной точки службы поиска.

indexName
path True

string

Имя индекса.

api-version
query True

string

Версия клиентского API.

Заголовок запроса

Имя Обязательно Тип Описание
x-ms-client-request-id

string (uuid)

Идентификатор отслеживания, отправленный вместе с запросом на помощь в отладке.

Текст запроса

Имя Тип Описание
answers

QueryAnswerType

Значение, указывающее, должны ли ответы возвращаться в рамках ответа на поисковый запрос.

captions

QueryCaptionType

Значение, указывающее, должны ли заголовки возвращаться как часть ответа на поисковый запрос.

count

boolean

Значение, указывающее, следует ли получать общее количество результатов. По умолчанию — false. Установка этого значения в true может повлиять на производительность. Обратите внимание, что возвращаемое количество является приблизительным.

debug

QueryDebugMode

Включает средство отладки, которое можно использовать для дальнейшего изучения результатов с измененным рейтингом.

facets

string[]

Список фасетных выражений, которые должны быть применены к поисковому запросу. Каждое фасетное выражение содержит имя поля, за которым может следовать разделенный запятыми список пар имя:значение.

filter

string

Выражение OData $filter для применения к поисковому запросу.

highlight

string

Разделенный запятыми список имен полей, которые будут использоваться для выделения совпадений. Для выделения попаданий можно использовать только поля, доступные для поиска.

highlightPostTag

string

Тег строки, который добавляется к выделениям попадания. Должен быть установлен с помощью highlightPreTag. По умолчанию используется / <em>.

highlightPreTag

string

Тег string, который добавляется в начало для выделения попадания. Должен быть установлен с помощью highlightPostTag. По умолчанию используется em<>.

minimumCoverage

number (double)

Число от 0 до 100, указывающее процент индекса, который должен быть покрыт поисковым запросом, чтобы запрос был отмечен как успешный. Этот параметр может быть полезен для обеспечения доступности поиска даже для сервисов с одной репликой. Значение по умолчанию равно 100.

orderby

string

Разделенный запятыми список OData $orderby выражения, по которым сортируются результаты. Каждое выражение может быть либо именем поля, либо вызовом функций geo.distance() или search.score(). За каждым выражением может следовать asc для обозначения возрастания, или desc для обозначения убывания. По умолчанию используется порядок возрастания. Ничьи будут разбиты по счету матчей документов. Если $orderby не указан, порядок сортировки по умолчанию — по убыванию по счету совпадения документа. Их может быть не более 32 $orderby пунктов.

queryType

QueryType

Значение, определяющее синтаксис поискового запроса. Значение по умолчанию — 'simple'. Используйте 'full', если в вашем запросе используется синтаксис запроса Lucene.

scoringParameters

string[]

Список значений параметров, которые будут использоваться в функциях оценки (например, referencePointParameter) с использованием формата имя-значения. Например, если профиль оценки определяет функцию с параметром с именем 'mylocation', строка параметра будет "mylocation--122.2,44.8" (без кавычек).

scoringProfile

string

Имя профиля оценки для оценки сопоставления документов с целью сортировки результатов.

scoringStatistics

ScoringStatistics

Значение, указывающее, хотим ли мы вычислять статистику оценки (например, частоту выпуска документов) глобально для более стабильной оценки или локально для более низкой задержки. Значение по умолчанию — 'local'. Используйте 'global' для агрегирования статистики подсчета очков глобально перед подсчетом очков. Использование глобальной статистики скоринга может увеличить задержку поисковых запросов.

search

string

Выражение запроса полнотекстового поиска; Используйте "*" или опустите этот параметр, чтобы сопоставить все документы.

searchFields

string

Разделенный запятыми список имен полей, на которые должен быть направлен полнотекстовый поиск. При использовании поиска по полям (fieldName:searchExpression) в полном запросе Lucene имена полей каждого выражения поиска с полями имеют приоритет над любыми именами полей, перечисленными в этом параметре.

searchMode

SearchMode

Значение, указывающее, должны ли быть сопоставлены некоторые или все условия поиска, чтобы документ считался совпадающим.

select

string

Список полей, разделенных запятыми, для извлечения. Если они не указаны, все поля, помеченные в схеме как доступные для извлечения, будут включены.

semanticConfiguration

string

Имя семантической конфигурации, которая будет использоваться при обработке документов для запросов типа семантический.

semanticErrorHandling

SemanticErrorMode

Позволяет пользователю выбрать, должен ли семантический вызов завершиться полным сбоем (поведение по умолчанию / текущее) или возвращать частичные результаты.

semanticMaxWaitInMilliseconds

integer (int32)

minimum: 700

Позволяет пользователю установить верхнюю границу времени, необходимого для завершения обработки семантического обогащения до того, как запрос завершится сбоем.

semanticQuery

string

Позволяет задать отдельный поисковый запрос, который будет использоваться исключительно для семантического переранжирования, семантических подписей и семантических ответов. Полезно для сценариев, в которых необходимо использовать разные запросы между фазой извлечения базы и ранжирования и семантической фазой L2.

sessionId

string

Значение, используемое для создания закрепленного сеанса, который может помочь получить более стабильные результаты. Если используется один и тот же sessionId, будет предпринята попытка нацелиться на один и тот же набор реплик. Имейте в виду, что повторное использование одних и тех же значений sessionID может нарушить балансировку нагрузки запросов между репликами и отрицательно сказаться на производительности службы поиска. Значение, используемое в качестве sessionId, не может начинаться с символа "_".

skip

integer (int32)

Количество результатов поиска, которые необходимо пропустить. Это значение не может быть больше 100 000. Если вам нужно сканировать документы последовательно, но вы не можете использовать пропуск из-за этого ограничения, рассмотрите возможность использования orderby для полностью упорядоченного ключа и фильтрации с помощью запроса диапазона.

top

integer (int32)

Количество результатов поиска для получения. Это можно использовать в сочетании с $skip для реализации разбиения результатов поиска на клиентскую сторону. Если результаты усекаются из-за разбиения на страницы на стороне сервера, ответ будет содержать маркер продолжения, который можно использовать для отправки еще одного запроса поиска для следующей страницы результатов.

vectorFilterMode

VectorFilterMode

Определяет, применяются ли фильтры до или после выполнения векторного поиска. По умолчанию для новых индексов используется 'preFilter'.

vectorQueries VectorQuery[]:

Параметры запроса для векторных и гибридных поисковых запросов.

Ответы

Имя Тип Описание
200 OK

SearchDocumentsResult

Ответ, содержащий документы, соответствующие критериям поиска.

Other Status Codes

SearchDocumentsResult

Ответ, содержащий частичные документы, соответствующие критериям поиска.

Other Status Codes

ErrorResponse

Ответ на ошибку.

Примеры

SearchIndexSearchDocumentsPost
SearchIndexSearchDocumentsSemanticPost

SearchIndexSearchDocumentsPost

Образец запроса

POST https://stableexampleservice.search.windows.net/indexes('stable-test')/docs/search.post.search?api-version=2025-09-01


{
  "count": true,
  "facets": [
    "ownerId"
  ],
  "filter": "category eq 'purple' or category eq 'pink'",
  "highlight": "category",
  "highlightPostTag": "</em>",
  "highlightPreTag": "</em>",
  "minimumCoverage": 100,
  "queryType": "semantic",
  "scoringStatistics": "global",
  "sessionId": "mysessionid",
  "scoringParameters": [
    "categoryTag:desiredCategoryValue"
  ],
  "scoringProfile": "stringFieldBoost",
  "debug": "vector",
  "search": "purple",
  "searchFields": "id,name,description,category,ownerId",
  "searchMode": "any",
  "select": "id,name,description,category,ownerId",
  "skip": 0,
  "top": 10,
  "semanticConfiguration": "testconfig",
  "semanticErrorHandling": "partial",
  "semanticMaxWaitInMilliseconds": 5000,
  "semanticQuery": "find all purple",
  "answers": "extractive",
  "captions": "extractive",
  "vectorQueries": [
    {
      "vector": [
        0,
        1,
        2,
        3,
        4,
        5,
        6,
        7,
        8,
        9
      ],
      "kind": "vector",
      "k": 50,
      "fields": "vector22, vector1b",
      "exhaustive": true,
      "weight": 1
    }
  ],
  "vectorFilterMode": "preFilter"
}

Пример ответа

{
  "@odata.count": 42,
  "@search.coverage": 100,
  "@search.facets": {
    "ownerId": [
      {
        "count": 26,
        "value": "sam"
      },
      {
        "count": 12,
        "value": "ryan"
      },
      {
        "count": 4,
        "value": "benny"
      }
    ]
  },
  "@search.answers": [],
  "value": [
    {
      "@search.score": 0.04419642686843872,
      "@search.highlights": {
        "category": [
          "</em>purple</em>"
        ]
      },
      "@search.rerankerScore": 1.7178425788879395,
      "@search.rerankerBoostedScore": 1.7178425788879395,
      "@search.captions": [
        {
          "text": "test10 hello.",
          "highlights": ""
        }
      ],
      "@search.documentDebugInfo": {
        "vectors": {
          "subscores": {
            "documentBoost": 1,
            "text": {
              "searchScore": 1.3862943649291992
            },
            "vectors": [
              {
                "vector22": {
                  "searchScore": 0.00011109876504633576,
                  "vectorSimilarity": 94.86833055544514
                },
                "vector1b": {
                  "searchScore": 0.0002499375259503722,
                  "vectorSimilarity": 63.24555189615253
                }
              }
            ]
          }
        }
      },
      "id": "10",
      "name": "test",
      "description": "test10 hello",
      "category": "purple",
      "ownerId": "benny"
    },
    {
      "@search.score": 0.012820512987673283,
      "@search.highlights": {
        "category": [
          "</em>purple</em>"
        ]
      },
      "@search.rerankerScore": 1.7079174518585205,
      "@search.rerankerBoostedScore": 1.7079174518585205,
      "@search.captions": [
        {
          "text": "no vector.",
          "highlights": "</em>no vector.</em>"
        }
      ],
      "@search.documentDebugInfo": {
        "vectors": {
          "subscores": {
            "documentBoost": 1,
            "text": {
              "searchScore": 1.0779930353164673
            },
            "vectors": [
              {}
            ]
          }
        }
      },
      "id": "empty-vectors",
      "name": "test",
      "description": "no vector",
      "category": "purple",
      "ownerId": "sam"
    },
    {
      "@search.score": 0.011627906933426857,
      "@search.highlights": {
        "category": [
          "</em>purple</em>"
        ]
      },
      "@search.rerankerScore": 1.7079174518585205,
      "@search.rerankerBoostedScore": 1.7079174518585205,
      "@search.captions": [
        {
          "text": "no vector.",
          "highlights": "</em>no vector.</em>"
        }
      ],
      "@search.documentDebugInfo": {
        "vectors": {
          "subscores": {
            "documentBoost": 1,
            "text": {
              "searchScore": 0.3250378668308258
            },
            "vectors": [
              {}
            ]
          }
        }
      },
      "id": "no-vectors",
      "name": "test",
      "description": "no vector",
      "category": "purple",
      "ownerId": "sam"
    },
    {
      "@search.score": 0.0431547611951828,
      "@search.highlights": {
        "category": [
          "</em>purple</em>"
        ]
      },
      "@search.rerankerScore": 1.6994102001190186,
      "@search.rerankerBoostedScore": 1.6994102001190186,
      "@search.captions": [
        {
          "text": "test4 hello.",
          "highlights": ""
        }
      ],
      "@search.documentDebugInfo": {
        "vectors": {
          "subscores": {
            "documentBoost": 1,
            "text": {
              "searchScore": 0.3250378668308258
            },
            "vectors": [
              {
                "vector22": {
                  "searchScore": 0.00017358097829855978,
                  "vectorSimilarity": 75.89466323761327
                },
                "vector1b": {
                  "searchScore": 0.0005099439295008779,
                  "vectorSimilarity": 44.27188622909418
                }
              }
            ]
          }
        }
      },
      "id": "4",
      "name": "test",
      "description": "test4 hello",
      "category": "purple",
      "ownerId": "sam"
    },
    {
      "@search.score": 0.04460374265909195,
      "@search.highlights": {
        "category": [
          "</em>purple</em>"
        ]
      },
      "@search.rerankerScore": 1.6937386989593506,
      "@search.rerankerBoostedScore": 1.6937386989593506,
      "@search.captions": [
        {
          "text": "test2 hello.",
          "highlights": ""
        }
      ],
      "@search.documentDebugInfo": {
        "vectors": {
          "subscores": {
            "documentBoost": 1,
            "text": {
              "searchScore": 0.3250378668308258
            },
            "vectors": [
              {
                "vector22": {
                  "searchScore": 0.00020656888955272734,
                  "vectorSimilarity": 69.5701087211589
                },
                "vector1b": {
                  "searchScore": 0.0006939625018276274,
                  "vectorSimilarity": 37.947332584023194
                }
              }
            ]
          }
        }
      },
      "id": "2",
      "name": "test",
      "description": "test2 hello",
      "category": "purple",
      "ownerId": "sam"
    },
    {
      "@search.score": 0.042533937841653824,
      "@search.highlights": {
        "category": [
          "</em>purple</em>"
        ]
      },
      "@search.rerankerScore": 1.6923208236694336,
      "@search.rerankerBoostedScore": 1.6923208236694336,
      "@search.captions": [
        {
          "text": "test5 hello.",
          "highlights": ""
        }
      ],
      "@search.documentDebugInfo": {
        "vectors": {
          "subscores": {
            "documentBoost": 1,
            "text": {
              "searchScore": 0.3250378668308258
            },
            "vectors": [
              {
                "vector22": {
                  "searchScore": 0.00015997439913917333,
                  "vectorSimilarity": 79.0569427290381
                },
                "vector1b": {
                  "searchScore": 0.0004442470089998096,
                  "vectorSimilarity": 47.43416449302081
                }
              }
            ]
          }
        }
      },
      "id": "5",
      "name": "test",
      "description": "test5 hello",
      "category": "purple",
      "ownerId": "sam"
    },
    {
      "@search.score": 0.04651741310954094,
      "@search.highlights": {
        "category": [
          "</em>purple</em>"
        ]
      },
      "@search.rerankerScore": 1.691611886024475,
      "@search.rerankerBoostedScore": 1.691611886024475,
      "@search.captions": [
        {
          "text": "test7 hello.",
          "highlights": ""
        }
      ],
      "@search.documentDebugInfo": {
        "vectors": {
          "subscores": {
            "documentBoost": 1,
            "text": {
              "searchScore": 1.9616584777832031
            },
            "vectors": [
              {
                "vector22": {
                  "searchScore": 0.00013715539535041898,
                  "vectorSimilarity": 85.38149735825786
                },
                "vector1b": {
                  "searchScore": 0.00034590106224641204,
                  "vectorSimilarity": 53.758721003860366
                }
              }
            ]
          }
        }
      },
      "id": "7",
      "name": "test",
      "description": "test7 hello",
      "category": "purple",
      "ownerId": "sam"
    },
    {
      "@search.score": 0.04703196510672569,
      "@search.highlights": {
        "category": [
          "</em>purple</em>"
        ]
      },
      "@search.rerankerScore": 1.6781420707702637,
      "@search.rerankerBoostedScore": 1.6781420707702637,
      "@search.captions": [
        {
          "text": "test0 hello.",
          "highlights": ""
        }
      ],
      "@search.documentDebugInfo": {
        "vectors": {
          "subscores": {
            "documentBoost": 1,
            "text": {
              "searchScore": 1.0779930353164673
            },
            "vectors": [
              {
                "vector22": {
                  "searchScore": 0.0002499375259503722,
                  "vectorSimilarity": 63.24555189615253
                },
                "vector1b": {
                  "searchScore": 0.0009990009712055326,
                  "vectorSimilarity": 31.622777042048124
                }
              }
            ]
          }
        }
      },
      "id": "0",
      "name": "test",
      "description": "test0 hello",
      "category": "purple",
      "ownerId": "benny"
    },
    {
      "@search.score": 0.043300654739141464,
      "@search.highlights": {
        "category": [
          "</em>purple</em>"
        ]
      },
      "@search.rerankerScore": 1.6653810739517212,
      "@search.rerankerBoostedScore": 1.6653810739517212,
      "@search.captions": [
        {
          "text": "test8 hello.",
          "highlights": ""
        }
      ],
      "@search.documentDebugInfo": {
        "vectors": {
          "subscores": {
            "documentBoost": 1,
            "text": {
              "searchScore": 1.1507283449172974
            },
            "vectors": [
              {
                "vector22": {
                  "searchScore": 0.00012753476039506495,
                  "vectorSimilarity": 88.5437719937623
                },
                "vector1b": {
                  "searchScore": 0.0003085467324126512,
                  "vectorSimilarity": 56.92099902893652
                }
              }
            ]
          }
        }
      },
      "id": "8",
      "name": "test",
      "description": "test8 hello",
      "category": "purple",
      "ownerId": "sam"
    },
    {
      "@search.score": 0.04082724079489708,
      "@search.highlights": {
        "category": [
          "</em>purple</em>"
        ]
      },
      "@search.rerankerScore": 1.6618363857269287,
      "@search.rerankerBoostedScore": 1.6618363857269287,
      "@search.captions": [
        {
          "text": "test11 hello.",
          "highlights": ""
        }
      ],
      "@search.documentDebugInfo": {
        "vectors": {
          "subscores": {
            "documentBoost": 1,
            "text": {
              "searchScore": 0.3250378668308258
            },
            "vectors": [
              {
                "vector22": {
                  "searchScore": 0.00010404744534753263,
                  "vectorSimilarity": 98.03060760075451
                },
                "vector1b": {
                  "searchScore": 0.00022670596081297845,
                  "vectorSimilarity": 66.40783109116562
                }
              }
            ]
          }
        }
      },
      "id": "11",
      "name": "test",
      "description": "test11 hello",
      "category": "purple",
      "ownerId": "sam"
    }
  ]
}
{
  "@odata.count": 42,
  "@search.coverage": 100,
  "@search.facets": {
    "ownerId": [
      {
        "count": 26,
        "value": "sam"
      },
      {
        "count": 12,
        "value": "ryan"
      },
      {
        "count": 4,
        "value": "benny"
      }
    ]
  },
  "@search.answers": [],
  "value": [
    {
      "@search.score": 0.04419642686843872,
      "@search.highlights": {
        "category": [
          "</em>purple</em>"
        ]
      },
      "@search.rerankerScore": 1.7178425788879395,
      "@search.rerankerBoostedScore": 1.7178425788879395,
      "@search.captions": [
        {
          "text": "test10 hello.",
          "highlights": ""
        }
      ],
      "@search.documentDebugInfo": {
        "vectors": {
          "subscores": {
            "documentBoost": 1,
            "text": {
              "searchScore": 1.3862943649291992
            },
            "vectors": [
              {
                "vector22": {
                  "searchScore": 0.00011109876504633576,
                  "vectorSimilarity": 94.86833055544514
                },
                "vector1b": {
                  "searchScore": 0.0002499375259503722,
                  "vectorSimilarity": 63.24555189615253
                }
              }
            ]
          }
        }
      },
      "id": "10",
      "name": "test",
      "description": "test10 hello",
      "category": "purple",
      "ownerId": "benny"
    },
    {
      "@search.score": 0.012820512987673283,
      "@search.highlights": {
        "category": [
          "</em>purple</em>"
        ]
      },
      "@search.rerankerScore": 1.7079174518585205,
      "@search.rerankerBoostedScore": 1.7079174518585205,
      "@search.captions": [
        {
          "text": "no vector.",
          "highlights": "</em>no vector.</em>"
        }
      ],
      "@search.documentDebugInfo": {
        "vectors": {
          "subscores": {
            "documentBoost": 1,
            "text": {
              "searchScore": 1.0779930353164673
            },
            "vectors": [
              {}
            ]
          }
        }
      },
      "id": "empty-vectors",
      "name": "test",
      "description": "no vector",
      "category": "purple",
      "ownerId": "sam"
    },
    {
      "@search.score": 0.011627906933426857,
      "@search.highlights": {
        "category": [
          "</em>purple</em>"
        ]
      },
      "@search.rerankerScore": 1.7079174518585205,
      "@search.rerankerBoostedScore": 1.7079174518585205,
      "@search.captions": [
        {
          "text": "no vector.",
          "highlights": "</em>no vector.</em>"
        }
      ],
      "@search.documentDebugInfo": {
        "vectors": {
          "subscores": {
            "documentBoost": 1,
            "text": {
              "searchScore": 0.3250378668308258
            },
            "vectors": [
              {}
            ]
          }
        }
      },
      "id": "no-vectors",
      "name": "test",
      "description": "no vector",
      "category": "purple",
      "ownerId": "sam"
    },
    {
      "@search.score": 0.0431547611951828,
      "@search.highlights": {
        "category": [
          "</em>purple</em>"
        ]
      },
      "@search.rerankerScore": 1.6994102001190186,
      "@search.rerankerBoostedScore": 1.6994102001190186,
      "@search.captions": [
        {
          "text": "test4 hello.",
          "highlights": ""
        }
      ],
      "@search.documentDebugInfo": {
        "vectors": {
          "subscores": {
            "documentBoost": 1,
            "text": {
              "searchScore": 0.3250378668308258
            },
            "vectors": [
              {
                "vector22": {
                  "searchScore": 0.00017358097829855978,
                  "vectorSimilarity": 75.89466323761327
                },
                "vector1b": {
                  "searchScore": 0.0005099439295008779,
                  "vectorSimilarity": 44.27188622909418
                }
              }
            ]
          }
        }
      },
      "id": "4",
      "name": "test",
      "description": "test4 hello",
      "category": "purple",
      "ownerId": "sam"
    },
    {
      "@search.score": 0.04460374265909195,
      "@search.highlights": {
        "category": [
          "</em>purple</em>"
        ]
      },
      "@search.rerankerScore": 1.6937386989593506,
      "@search.rerankerBoostedScore": 1.6937386989593506,
      "@search.captions": [
        {
          "text": "test2 hello.",
          "highlights": ""
        }
      ],
      "@search.documentDebugInfo": {
        "vectors": {
          "subscores": {
            "documentBoost": 1,
            "text": {
              "searchScore": 0.3250378668308258
            },
            "vectors": [
              {
                "vector22": {
                  "searchScore": 0.00020656888955272734,
                  "vectorSimilarity": 69.5701087211589
                },
                "vector1b": {
                  "searchScore": 0.0006939625018276274,
                  "vectorSimilarity": 37.947332584023194
                }
              }
            ]
          }
        }
      },
      "id": "2",
      "name": "test",
      "description": "test2 hello",
      "category": "purple",
      "ownerId": "sam"
    },
    {
      "@search.score": 0.042533937841653824,
      "@search.highlights": {
        "category": [
          "</em>purple</em>"
        ]
      },
      "@search.rerankerScore": 1.6923208236694336,
      "@search.rerankerBoostedScore": 1.6923208236694336,
      "@search.captions": [
        {
          "text": "test5 hello.",
          "highlights": ""
        }
      ],
      "@search.documentDebugInfo": {
        "vectors": {
          "subscores": {
            "documentBoost": 1,
            "text": {
              "searchScore": 0.3250378668308258
            },
            "vectors": [
              {
                "vector22": {
                  "searchScore": 0.00015997439913917333,
                  "vectorSimilarity": 79.0569427290381
                },
                "vector1b": {
                  "searchScore": 0.0004442470089998096,
                  "vectorSimilarity": 47.43416449302081
                }
              }
            ]
          }
        }
      },
      "id": "5",
      "name": "test",
      "description": "test5 hello",
      "category": "purple",
      "ownerId": "sam"
    },
    {
      "@search.score": 0.04651741310954094,
      "@search.highlights": {
        "category": [
          "</em>purple</em>"
        ]
      },
      "@search.rerankerScore": 1.691611886024475,
      "@search.rerankerBoostedScore": 1.691611886024475,
      "@search.captions": [
        {
          "text": "test7 hello.",
          "highlights": ""
        }
      ],
      "@search.documentDebugInfo": {
        "vectors": {
          "subscores": {
            "documentBoost": 1,
            "text": {
              "searchScore": 1.9616584777832031
            },
            "vectors": [
              {
                "vector22": {
                  "searchScore": 0.00013715539535041898,
                  "vectorSimilarity": 85.38149735825786
                },
                "vector1b": {
                  "searchScore": 0.00034590106224641204,
                  "vectorSimilarity": 53.758721003860366
                }
              }
            ]
          }
        }
      },
      "id": "7",
      "name": "test",
      "description": "test7 hello",
      "category": "purple",
      "ownerId": "sam"
    },
    {
      "@search.score": 0.04703196510672569,
      "@search.highlights": {
        "category": [
          "</em>purple</em>"
        ]
      },
      "@search.rerankerScore": 1.6781420707702637,
      "@search.rerankerBoostedScore": 1.6781420707702637,
      "@search.captions": [
        {
          "text": "test0 hello.",
          "highlights": ""
        }
      ],
      "@search.documentDebugInfo": {
        "vectors": {
          "subscores": {
            "documentBoost": 1,
            "text": {
              "searchScore": 1.0779930353164673
            },
            "vectors": [
              {
                "vector22": {
                  "searchScore": 0.0002499375259503722,
                  "vectorSimilarity": 63.24555189615253
                },
                "vector1b": {
                  "searchScore": 0.0009990009712055326,
                  "vectorSimilarity": 31.622777042048124
                }
              }
            ]
          }
        }
      },
      "id": "0",
      "name": "test",
      "description": "test0 hello",
      "category": "purple",
      "ownerId": "benny"
    },
    {
      "@search.score": 0.043300654739141464,
      "@search.highlights": {
        "category": [
          "</em>purple</em>"
        ]
      },
      "@search.rerankerScore": 1.6653810739517212,
      "@search.rerankerBoostedScore": 1.6653810739517212,
      "@search.captions": [
        {
          "text": "test8 hello.",
          "highlights": ""
        }
      ],
      "@search.documentDebugInfo": {
        "vectors": {
          "subscores": {
            "documentBoost": 1,
            "text": {
              "searchScore": 1.1507283449172974
            },
            "vectors": [
              {
                "vector22": {
                  "searchScore": 0.00012753476039506495,
                  "vectorSimilarity": 88.5437719937623
                },
                "vector1b": {
                  "searchScore": 0.0003085467324126512,
                  "vectorSimilarity": 56.92099902893652
                }
              }
            ]
          }
        }
      },
      "id": "8",
      "name": "test",
      "description": "test8 hello",
      "category": "purple",
      "ownerId": "sam"
    },
    {
      "@search.score": 0.04082724079489708,
      "@search.highlights": {
        "category": [
          "</em>purple</em>"
        ]
      },
      "@search.rerankerScore": 1.6618363857269287,
      "@search.rerankerBoostedScore": 1.6618363857269287,
      "@search.captions": [
        {
          "text": "test11 hello.",
          "highlights": ""
        }
      ],
      "@search.documentDebugInfo": {
        "vectors": {
          "subscores": {
            "documentBoost": 1,
            "text": {
              "searchScore": 0.3250378668308258
            },
            "vectors": [
              {
                "vector22": {
                  "searchScore": 0.00010404744534753263,
                  "vectorSimilarity": 98.03060760075451
                },
                "vector1b": {
                  "searchScore": 0.00022670596081297845,
                  "vectorSimilarity": 66.40783109116562
                }
              }
            ]
          }
        }
      },
      "id": "11",
      "name": "test",
      "description": "test11 hello",
      "category": "purple",
      "ownerId": "sam"
    }
  ]
}

SearchIndexSearchDocumentsSemanticPost

Образец запроса

POST https://myservice.search.windows.net/indexes('myindex')/docs/search.post.search?api-version=2025-09-01

{
  "count": true,
  "highlightPostTag": "</em>",
  "highlightPreTag": "<em>",
  "queryType": "semantic",
  "search": "how do clouds form",
  "semanticConfiguration": "my-semantic-config",
  "answers": "extractive|count-3",
  "captions": "extractive|highlight-true",
  "semanticErrorHandling": "partial",
  "semanticMaxWaitInMilliseconds": 780
}

Пример ответа

{
  "@odata.count": 25,
  "@search.answers": [
    {
      "key": "4123",
      "text": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the   atmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case),   but not where it is descending (over the river).",
      "highlights": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the   atmosphere until it cools and condenses into water droplets. Clouds generally form<em> where air is ascending</em> (over land in this case),   but not where it is<em> descending</em> (over the river).",
      "score": 0.94639826
    }
  ],
  "@search.nextPageParameters": {
    "count": true,
    "highlightPostTag": "</em>",
    "highlightPreTag": "<em>",
    "queryType": "semantic",
    "search": "how do clouds form",
    "semanticConfiguration": "my-semantic-config",
    "answers": "extractive|count-3",
    "captions": "extractive|highlight-true",
    "semanticErrorHandling": "partial",
    "semanticMaxWaitInMilliseconds": 780,
    "skip": 2,
    "top": 8
  },
  "value": [
    {
      "@search.score": 0.5479723,
      "@search.rerankerScore": 1.0321671911515296,
      "@search.captions": [
        {
          "text": "Like all clouds, it forms when the air reaches its dew point—the temperature at which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley fog, which is common in the Pacific Northwest of North America.",
          "highlights": "Like all<em> clouds</em>, it<em> forms</em> when the air reaches its dew point—the temperature at    which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley<em> fog</em>, which is common in the Pacific Northwest of North America."
        }
      ],
      "id": "4123",
      "title": "Earth Atmosphere",
      "content": "Fog is essentially a cloud lying on the ground. Like all clouds, it forms when the air reaches its dew point—the temperature at  \n\nwhich an air mass is cool enough for its water vapor to condense into liquid droplets.\n\nThis false-color image shows valley fog, which is common in the Pacific Northwest of North America. On clear winter nights, the \n\nground and overlying air cool off rapidly, especially at high elevations. Cold air is denser than warm air, and it sinks down into the \n\nvalleys. The moist air in the valleys gets chilled to its dew point, and fog forms. If undisturbed by winds, such fog may persist for \n\ndays. The Terra satellite captured this image of foggy valleys northeast of Vancouver in February 2010.\n\n\n",
      "locations": [
        "Pacific Northwest",
        "North America",
        "Vancouver"
      ]
    }
  ],
  "@odata.nextLink": "https://myservice.search.windows.net/indexes('myindex')/docs/search.post.search?api-version=2024-07-01"
}
{
  "@odata.count": 25,
  "@search.answers": [
    {
      "key": "4123",
      "text": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the   atmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case),   but not where it is descending (over the river).",
      "highlights": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the   atmosphere until it cools and condenses into water droplets. Clouds generally form<em> where air is ascending</em> (over land in this case),   but not where it is<em> descending</em> (over the river).",
      "score": 0.94639826
    }
  ],
  "@search.nextPageParameters": {
    "count": true,
    "highlightPostTag": "</em>",
    "highlightPreTag": "<em>",
    "queryType": "semantic",
    "search": "how do clouds form",
    "semanticConfiguration": "my-semantic-config",
    "answers": "extractive|count-3",
    "captions": "extractive|highlight-true",
    "semanticErrorHandling": "partial",
    "semanticMaxWaitInMilliseconds": 780,
    "skip": 2,
    "top": 8
  },
  "value": [
    {
      "@search.score": 0.5479723,
      "@search.rerankerScore": 1.0321671911515296,
      "@search.captions": [
        {
          "text": "Like all clouds, it forms when the air reaches its dew point—the temperature at which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley fog, which is common in the Pacific Northwest of North America.",
          "highlights": "Like all<em> clouds</em>, it<em> forms</em> when the air reaches its dew point—the temperature at    which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley<em> fog</em>, which is common in the Pacific Northwest of North America."
        }
      ],
      "id": "4123",
      "title": "Earth Atmosphere",
      "content": "Fog is essentially a cloud lying on the ground. Like all clouds, it forms when the air reaches its dew point—the temperature at  \n\nwhich an air mass is cool enough for its water vapor to condense into liquid droplets.\n\nThis false-color image shows valley fog, which is common in the Pacific Northwest of North America. On clear winter nights, the \n\nground and overlying air cool off rapidly, especially at high elevations. Cold air is denser than warm air, and it sinks down into the \n\nvalleys. The moist air in the valleys gets chilled to its dew point, and fog forms. If undisturbed by winds, such fog may persist for \n\ndays. The Terra satellite captured this image of foggy valleys northeast of Vancouver in February 2010.\n\n\n",
      "locations": [
        "Pacific Northwest",
        "North America",
        "Vancouver"
      ]
    }
  ],
  "@odata.nextLink": "https://myservice.search.windows.net/indexes('myindex')/docs/search.post.search?api-version=2024-07-01"
}

Определения

Имя Описание
AnswerResult

Ответ — это фрагмент текста, извлеченный из содержимого наиболее релевантных документов, соответствующих запросу. Ответы извлекаются из верхних результатов поиска. Кандидаты на ответы оцениваются, и отбираются лучшие ответы.

CaptionResult

Подписи – это наиболее репрезентативные отрывки из документа относительно поискового запроса. Они часто используются в качестве резюме документа. Подписи возвращаются только для запросов типа semantic.

DocumentDebugInfo

Содержит отладочную информацию, которую можно использовать для дальнейшего изучения результатов поиска.

ErrorAdditionalInfo

Дополнительные сведения об ошибке управления ресурсами.

ErrorDetail

Сведения об ошибке.

ErrorResponse

Ответ на ошибку

QueryAnswerType

Значение, указывающее, должны ли ответы возвращаться в рамках ответа на поисковый запрос.

QueryCaptionType

Значение, указывающее, должны ли заголовки возвращаться как часть ответа на поисковый запрос.

QueryDebugMode

Включает средство отладки, которое можно использовать для дальнейшего изучения результатов поиска.

QueryResultDocumentSubscores

Разбивка промежуточных оценок между текстовым и векторным компонентами поискового запроса для данного документа. Каждый векторный запрос отображается как отдельный объект в том же порядке, в котором они были получены.

QueryType

Указывает синтаксис поискового запроса. Значение по умолчанию — 'simple'. Используйте 'full', если в вашем запросе используется синтаксис запроса Lucene.

RawVectorQuery

Параметры запроса, используемые для векторного поиска, когда предоставлено необработанное векторное значение.

ScoringStatistics

Значение, указывающее, хотим ли мы вычислять статистику оценки (например, частоту выпуска документов) глобально для более стабильной оценки или локально для более низкой задержки. Значение по умолчанию — 'local'. Используйте 'global' для агрегирования статистики подсчета очков глобально перед подсчетом очков. Использование глобальной статистики скоринга может увеличить задержку поисковых запросов.

SearchDocumentsResult

Ответ, содержащий результаты поиска из индекса.

SearchMode

Указывает, должны ли быть сопоставлены некоторые или все условия поиска, чтобы документ считался совпадающим.

SearchRequest

Параметры для фильтрации, сортировки, фасетизации, разбиения на страницы и других действий поисковых запросов.

SearchResult

Содержит документ, найденный по поисковому запросу, а также связанные с ним метаданные.

SemanticErrorMode

Позволяет пользователю выбрать, должен ли семантический вызов завершиться полным сбоем (поведение по умолчанию / текущее) или возвращать частичные результаты.

SemanticErrorReason

Причина, по которой был возвращен частичный ответ на запрос семантического ранжирования.

SemanticSearchResultsType

Тип частичного ответа, который был возвращен для запроса семантического ранжирования.

SingleVectorFieldResult

Результат с одним векторным полем. Возвращаются оба @search.score значения сходства векторов. Векторное подобие связано с @search.score уравнением.

TextResult

Оценка BM25 или Classic для текстовой части запроса.

VectorFilterMode

Определяет, применяются ли фильтры до или после выполнения векторного поиска.

VectorizableTextQuery

Параметры запроса, используемые для векторного поиска, когда предоставлено текстовое значение, которое необходимо векторизовать.

VectorQueryKind

Тип выполняемого векторного запроса.

VectorsDebugInfo

AnswerResult

Ответ — это фрагмент текста, извлеченный из содержимого наиболее релевантных документов, соответствующих запросу. Ответы извлекаются из верхних результатов поиска. Кандидаты на ответы оцениваются, и отбираются лучшие ответы.

Имя Тип Описание
highlights

string

Тот же фрагмент текста, что и в свойстве Text, с выделенными текстовыми фразами, наиболее релевантными запросу.

key

string

Ключ документа, из которого был извлечен ответ.

score

number (double)

Значение балла показывает, насколько ответ соответствует запросу по сравнению с другими ответами, возвращенными для запроса.

text

string

Фрагмент текста, извлеченный из содержимого документа в качестве ответа.

CaptionResult

Подписи – это наиболее репрезентативные отрывки из документа относительно поискового запроса. Они часто используются в качестве резюме документа. Подписи возвращаются только для запросов типа semantic.

Имя Тип Описание
highlights

string

Тот же фрагмент текста, что и в свойстве Text, с выделенными фразами, наиболее релевантными запросу.

text

string

Репрезентативный фрагмент текста, извлеченный из документа, наиболее релевантного поисковому запросу.

DocumentDebugInfo

Содержит отладочную информацию, которую можно использовать для дальнейшего изучения результатов поиска.

Имя Тип Описание
vectors

VectorsDebugInfo

Содержит отладочную информацию, относящуюся к векторному и гибридному поиску.

ErrorAdditionalInfo

Дополнительные сведения об ошибке управления ресурсами.

Имя Тип Описание
info

object

Дополнительная информация.

type

string

Тип дополнительной информации.

ErrorDetail

Сведения об ошибке.

Имя Тип Описание
additionalInfo

ErrorAdditionalInfo[]

Ошибка дополнительная информация.

code

string

Код ошибки.

details

ErrorDetail[]

Сведения об ошибке.

message

string

Сообщение об ошибке.

target

string

Цель ошибки.

ErrorResponse

Ответ на ошибку

Имя Тип Описание
error

ErrorDetail

Объект ошибки.

QueryAnswerType

Значение, указывающее, должны ли ответы возвращаться в рамках ответа на поисковый запрос.

Значение Описание
none

Не возвращайте ответы на запрос.

extractive

Извлекает кандидатов на ответ из содержимого документов, возвращенных в ответ на вопрос, выраженный в виде вопроса на естественном языке.

QueryCaptionType

Значение, указывающее, должны ли заголовки возвращаться как часть ответа на поисковый запрос.

Значение Описание
none

Не возвращайте заголовки для запроса.

extractive

Извлекает подписи из соответствующих документов, которые содержат отрывки, относящиеся к поисковому запросу.

QueryDebugMode

Включает средство отладки, которое можно использовать для дальнейшего изучения результатов поиска.

Значение Описание
disabled

Сведения об отладке запросов возвращаться не будут.

vector

Позволяет пользователю дополнительно изучить результаты гибридных и векторных запросов.

QueryResultDocumentSubscores

Разбивка промежуточных оценок между текстовым и векторным компонентами поискового запроса для данного документа. Каждый векторный запрос отображается как отдельный объект в том же порядке, в котором они были получены.

Имя Тип Описание
documentBoost

number (double)

Оценка BM25 или Classic для текстовой части запроса.

text

TextResult

Оценка BM25 или Classic для текстовой части запроса.

vectors

<string,  SingleVectorFieldResult>

Сходство вектора и @search.score значения для каждого векторного запроса.

QueryType

Указывает синтаксис поискового запроса. Значение по умолчанию — 'simple'. Используйте 'full', если в вашем запросе используется синтаксис запроса Lucene.

Значение Описание
simple

Использует простой синтаксис запросов для поиска. Текст поиска интерпретируется с помощью простого языка запросов, который позволяет использовать такие символы, как +, * и "". По умолчанию запросы оцениваются по всем полям, доступным для поиска, если не указан параметр searchFields.

full

Использует полный синтаксис запросов Lucene для поиска. Текст поиска интерпретируется с помощью языка запросов Lucene, который позволяет выполнять поиск по конкретным полям и взвешенный поиск, а также использовать другие расширенные функции.

semantic

Лучше всего подходит для запросов, выраженных на естественном языке, а не ключевых слов. Повышает точность результатов поиска за счет повторного ранжирования верхних результатов поиска с помощью модели ранжирования, обученной на веб-корпусе.

RawVectorQuery

Параметры запроса, используемые для векторного поиска, когда предоставлено необработанное векторное значение.

Имя Тип Описание
exhaustive

boolean

При значении true инициируется исчерпывающий поиск k-ближайшего соседа по всем векторам в пределах векторного индекса. Полезно для сценариев, в которых точное совпадение имеет решающее значение, например для определения наземных значений достоверной достоверности.

fields

string

Векторные поля типа Collection(Edm.Single) для включения в вектор поиска.

k

integer (int32)

Количество ближайших соседей, которые возвращаются в качестве топовых хитов.

kind string:

vector

Тип выполняемого векторного запроса.

oversampling

number (double)

Коэффициент передискретизации. Минимальное значение равно 1. Он переопределяет параметр 'defaultOversampling', настроенный в определении индекса. Он может быть установлен только в том случае, если 'rerankWithOriginalVectors' имеет значение true. Этот параметр разрешен только в том случае, если метод сжатия используется для базового векторного поля.

vector

number[] (float)

Векторное представление поискового запроса.

weight

number (float)

Относительный вес векторного запроса по сравнению с другим векторным запросом и/или текстовым запросом в рамках того же поискового запроса. Это значение используется при объединении результатов нескольких рейтинговых списков, созданных различными векторными запросами, и/или результатов, полученных с помощью текстового запроса. Чем выше вес, тем выше будут документы, соответствующие этому запросу, в итоговом рейтинге. Значение по умолчанию равно 1.0, и значение должно быть положительным числом больше нуля.

ScoringStatistics

Значение, указывающее, хотим ли мы вычислять статистику оценки (например, частоту выпуска документов) глобально для более стабильной оценки или локально для более низкой задержки. Значение по умолчанию — 'local'. Используйте 'global' для агрегирования статистики подсчета очков глобально перед подсчетом очков. Использование глобальной статистики скоринга может увеличить задержку поисковых запросов.

Значение Описание
local

Статистика оценки будет рассчитываться локально для снижения задержки.

global

Статистика подсчета очков будет рассчитываться глобально для более последовательного подсчета очков.

SearchDocumentsResult

Ответ, содержащий результаты поиска из индекса.

Имя Тип Описание
@odata.count

integer (int64)

Общее количество результатов, найденных операцией поиска, или NULL, если счетчик не был запрошен. Если оно присутствует, количество может быть больше, чем количество результатов в этом ответе. Это может произойти, если вы используете параметры $top или $skip, или если запрос не может вернуть все запрошенные документы в одном ответе.

@odata.nextLink

string

URL-адрес продолжения возвращается, когда запрос не может вернуть все запрошенные результаты в одном ответе. Вы можете использовать этот URL для формулирования другого поискового запроса GET или POST, чтобы получить следующую часть ответа на поиск. Убедитесь, что используется тот же глагол (GET или POST), что и в запросе, который вызвал этот ответ.

@search.answers

AnswerResult[]

Ответы запрашивают результаты операции поиска; null, если параметр запроса ответов не был указан или установлен в значение "None".

@search.coverage

number (double)

Значение, указывающее процент от индекса, который был включен в запрос, или null, если minimumCoverage не был указан в запросе.

@search.facets

object

Результаты фасетного запроса для операции поиска, организованные в виде коллекции контейнеров для каждого фасетного поля; null, если запрос не содержал выражений фасетов.

@search.nextPageParameters

SearchRequest

Полезные данные продолжения JSON возвращаются, когда запрос не может вернуть все запрошенные результаты в одном ответе. Вы можете использовать этот JSON вместе с @odata.nextLink ним для формулирования другого запроса поиска POST, чтобы получить следующую часть ответа на поиск.

@search.semanticPartialResponseReason

SemanticErrorReason

Причина, по которой был возвращен частичный ответ на запрос семантического ранжирования.

@search.semanticPartialResponseType

SemanticSearchResultsType

Тип частичного ответа, который был возвращен для запроса семантического ранжирования.

value

SearchResult[]

Последовательность результатов, возвращаемых запросом.

SearchMode

Указывает, должны ли быть сопоставлены некоторые или все условия поиска, чтобы документ считался совпадающим.

Значение Описание
any

Любой из поисковых запросов должен быть совпадающим, чтобы документ был засчитан как совпадающий.

all

Все условия поиска должны быть совпадающими, чтобы документ был засчитан как совпадающий.

SearchRequest

Параметры для фильтрации, сортировки, фасетизации, разбиения на страницы и других действий поисковых запросов.

Имя Тип Описание
answers

QueryAnswerType

Значение, указывающее, должны ли ответы возвращаться в рамках ответа на поисковый запрос.

captions

QueryCaptionType

Значение, указывающее, должны ли заголовки возвращаться как часть ответа на поисковый запрос.

count

boolean

Значение, указывающее, следует ли получать общее количество результатов. По умолчанию — false. Установка этого значения в true может повлиять на производительность. Обратите внимание, что возвращаемое количество является приблизительным.

debug

QueryDebugMode

Включает средство отладки, которое можно использовать для дальнейшего изучения результатов с измененным рейтингом.

facets

string[]

Список фасетных выражений, которые должны быть применены к поисковому запросу. Каждое фасетное выражение содержит имя поля, за которым может следовать разделенный запятыми список пар имя:значение.

filter

string

Выражение OData $filter для применения к поисковому запросу.

highlight

string

Разделенный запятыми список имен полей, которые будут использоваться для выделения совпадений. Для выделения попаданий можно использовать только поля, доступные для поиска.

highlightPostTag

string

Тег строки, который добавляется к выделениям попадания. Должен быть установлен с помощью highlightPreTag. По умолчанию используется / <em>.

highlightPreTag

string

Тег string, который добавляется в начало для выделения попадания. Должен быть установлен с помощью highlightPostTag. По умолчанию используется em<>.

minimumCoverage

number (double)

Число от 0 до 100, указывающее процент индекса, который должен быть покрыт поисковым запросом, чтобы запрос был отмечен как успешный. Этот параметр может быть полезен для обеспечения доступности поиска даже для сервисов с одной репликой. Значение по умолчанию равно 100.

orderby

string

Разделенный запятыми список OData $orderby выражения, по которым сортируются результаты. Каждое выражение может быть либо именем поля, либо вызовом функций geo.distance() или search.score(). За каждым выражением может следовать asc для обозначения возрастания, или desc для обозначения убывания. По умолчанию используется порядок возрастания. Ничьи будут разбиты по счету матчей документов. Если $orderby не указан, порядок сортировки по умолчанию — по убыванию по счету совпадения документа. Их может быть не более 32 $orderby пунктов.

queryType

QueryType

Значение, определяющее синтаксис поискового запроса. Значение по умолчанию — 'simple'. Используйте 'full', если в вашем запросе используется синтаксис запроса Lucene.

scoringParameters

string[]

Список значений параметров, которые будут использоваться в функциях оценки (например, referencePointParameter) с использованием формата имя-значения. Например, если профиль оценки определяет функцию с параметром с именем 'mylocation', строка параметра будет "mylocation--122.2,44.8" (без кавычек).

scoringProfile

string

Имя профиля оценки для оценки сопоставления документов с целью сортировки результатов.

scoringStatistics

ScoringStatistics

Значение, указывающее, хотим ли мы вычислять статистику оценки (например, частоту выпуска документов) глобально для более стабильной оценки или локально для более низкой задержки. Значение по умолчанию — 'local'. Используйте 'global' для агрегирования статистики подсчета очков глобально перед подсчетом очков. Использование глобальной статистики скоринга может увеличить задержку поисковых запросов.

search

string

Выражение запроса полнотекстового поиска; Используйте "*" или опустите этот параметр, чтобы сопоставить все документы.

searchFields

string

Разделенный запятыми список имен полей, на которые должен быть направлен полнотекстовый поиск. При использовании поиска по полям (fieldName:searchExpression) в полном запросе Lucene имена полей каждого выражения поиска с полями имеют приоритет над любыми именами полей, перечисленными в этом параметре.

searchMode

SearchMode

Значение, указывающее, должны ли быть сопоставлены некоторые или все условия поиска, чтобы документ считался совпадающим.

select

string

Список полей, разделенных запятыми, для извлечения. Если они не указаны, все поля, помеченные в схеме как доступные для извлечения, будут включены.

semanticConfiguration

string

Имя семантической конфигурации, которая будет использоваться при обработке документов для запросов типа семантический.

semanticErrorHandling

SemanticErrorMode

Позволяет пользователю выбрать, должен ли семантический вызов завершиться полным сбоем (поведение по умолчанию / текущее) или возвращать частичные результаты.

semanticMaxWaitInMilliseconds

integer (int32)

minimum: 700

Позволяет пользователю установить верхнюю границу времени, необходимого для завершения обработки семантического обогащения до того, как запрос завершится сбоем.

semanticQuery

string

Позволяет задать отдельный поисковый запрос, который будет использоваться исключительно для семантического переранжирования, семантических подписей и семантических ответов. Полезно для сценариев, в которых необходимо использовать разные запросы между фазой извлечения базы и ранжирования и семантической фазой L2.

sessionId

string

Значение, используемое для создания закрепленного сеанса, который может помочь получить более стабильные результаты. Если используется один и тот же sessionId, будет предпринята попытка нацелиться на один и тот же набор реплик. Имейте в виду, что повторное использование одних и тех же значений sessionID может нарушить балансировку нагрузки запросов между репликами и отрицательно сказаться на производительности службы поиска. Значение, используемое в качестве sessionId, не может начинаться с символа "_".

skip

integer (int32)

Количество результатов поиска, которые необходимо пропустить. Это значение не может быть больше 100 000. Если вам нужно сканировать документы последовательно, но вы не можете использовать пропуск из-за этого ограничения, рассмотрите возможность использования orderby для полностью упорядоченного ключа и фильтрации с помощью запроса диапазона.

top

integer (int32)

Количество результатов поиска для получения. Это можно использовать в сочетании с $skip для реализации разбиения результатов поиска на клиентскую сторону. Если результаты усекаются из-за разбиения на страницы на стороне сервера, ответ будет содержать маркер продолжения, который можно использовать для отправки еще одного запроса поиска для следующей страницы результатов.

vectorFilterMode

VectorFilterMode

Определяет, применяются ли фильтры до или после выполнения векторного поиска. По умолчанию для новых индексов используется 'preFilter'.

vectorQueries VectorQuery[]:

Параметры запроса для векторных и гибридных поисковых запросов.

SearchResult

Содержит документ, найденный по поисковому запросу, а также связанные с ним метаданные.

Имя Тип Описание
@search.captions

CaptionResult[]

Подписи – это наиболее репрезентативные отрывки из документа относительно поискового запроса. Они часто используются в качестве резюме документа. Подписи возвращаются только для запросов типа 'semantic'.

@search.documentDebugInfo

DocumentDebugInfo

Содержит отладочную информацию, которую можно использовать для дальнейшего изучения результатов поиска.

@search.highlights

object

Текстовые фрагменты из документа, указывающие на соответствующие условия поиска, организованные по каждому применимому полю; null, если для запроса не было включено выделение хитов.

@search.rerankerBoostedScore

number (double)

Оценка релевантности, рассчитанная путем повышения Reranker Score. Результаты поиска сортируются по RerankerScore/RerankerBoostedScore на основе useScoringProfileBoostedRanking в семантической конфигурации. RerankerBoostedScore возвращается только для запросов типа 'semantic'

@search.rerankerScore

number (double)

Оценка релевантности, рассчитанная семантическим ранжированием для первых результатов поиска. Результаты поиска сначала сортируются по RerankerScore, а затем по Score. RerankerScore возвращается только для запросов типа 'semantic'.

@search.score

number (double)

Оценка релевантности документа по сравнению с другими документами, возвращенными запросом.

SemanticErrorMode

Позволяет пользователю выбрать, должен ли семантический вызов завершиться полным сбоем (поведение по умолчанию / текущее) или возвращать частичные результаты.

Значение Описание
partial

Если семантическая обработка завершается сбоем, частичные результаты все равно возвращаются. Определение частичных результатов зависит от того, какой семантический шаг не прошел и что послужило причиной неудачи.

fail

Если на этапе семантической обработки возникнет исключение, запрос завершится ошибкой и вернет соответствующий HTTP-код.

SemanticErrorReason

Причина, по которой был возвращен частичный ответ на запрос семантического ранжирования.

Значение Описание
maxWaitExceeded

if semanticMaxWaitInMilliseconds был установлен и длительность семантической обработки превысила это значение. Были возвращены только базовые результаты.

capacityOverloaded

Запрос был отклонен. Были возвращены только базовые результаты.

transient

По крайней мере, один шаг семантического процесса не удался.

SemanticSearchResultsType

Тип частичного ответа, который был возвращен для запроса семантического ранжирования.

Значение Описание
baseResults

Результаты без какого-либо семантического обогащения или переранжирования.

rerankedResults

Результаты были переранжированы с помощью модели reranker и будут включать семантические подписи. Они не будут включать в себя ответы, основные моменты ответов или подписи.

SingleVectorFieldResult

Результат с одним векторным полем. Возвращаются оба @search.score значения сходства векторов. Векторное подобие связано с @search.score уравнением.

Имя Тип Описание
searchScore

number (double)

Значение @search.score , которое вычисляется на основе оценки векторного сходства. Это оценка, которая отображается в чисто однополевом одновекторном запросе.

vectorSimilarity

number (double)

Оценка векторного сходства для этого документа. Обратите внимание, что это каноническое определение метрики сходства, а не версия «расстояния». Например, косинусное сходство вместо косинусного расстояния.

TextResult

Оценка BM25 или Classic для текстовой части запроса.

Имя Тип Описание
searchScore

number (double)

Оценка BM25 или Classic для текстовой части запроса.

VectorFilterMode

Определяет, применяются ли фильтры до или после выполнения векторного поиска.

Значение Описание
postFilter

Фильтр будет применен после того, как будет возвращен потенциальный набор векторных результатов. В зависимости от избирательности фильтра это может привести к меньшему количеству результатов, чем запрашивает параметр 'k'.

preFilter

Фильтр будет применен перед поисковым запросом.

VectorizableTextQuery

Параметры запроса, используемые для векторного поиска, когда предоставлено текстовое значение, которое необходимо векторизовать.

Имя Тип Описание
exhaustive

boolean

При значении true инициируется исчерпывающий поиск k-ближайшего соседа по всем векторам в пределах векторного индекса. Полезно для сценариев, в которых точное совпадение имеет решающее значение, например для определения наземных значений достоверной достоверности.

fields

string

Векторные поля типа Collection(Edm.Single) для включения в вектор поиска.

k

integer (int32)

Количество ближайших соседей, которые возвращаются в качестве топовых хитов.

kind string:

text

Тип выполняемого векторного запроса.

oversampling

number (double)

Коэффициент передискретизации. Минимальное значение равно 1. Он переопределяет параметр 'defaultOversampling', настроенный в определении индекса. Он может быть установлен только в том случае, если 'rerankWithOriginalVectors' имеет значение true. Этот параметр разрешен только в том случае, если метод сжатия используется для базового векторного поля.

text

string

Текст, который необходимо векторизовать для выполнения векторного поискового запроса.

weight

number (float)

Относительный вес векторного запроса по сравнению с другим векторным запросом и/или текстовым запросом в рамках того же поискового запроса. Это значение используется при объединении результатов нескольких рейтинговых списков, созданных различными векторными запросами, и/или результатов, полученных с помощью текстового запроса. Чем выше вес, тем выше будут документы, соответствующие этому запросу, в итоговом рейтинге. Значение по умолчанию равно 1.0, и значение должно быть положительным числом больше нуля.

VectorQueryKind

Тип выполняемого векторного запроса.

Значение Описание
vector

Векторный запрос, в котором предоставляется исходное векторное значение.

text

Векторный запрос, в котором указывается текстовое значение, которое необходимо векторизовать.

VectorsDebugInfo

Имя Тип Описание
subscores

QueryResultDocumentSubscores

Разбивка промежуточных оценок документа перед выбранным методом слияния/комбинирования наборов результатов, таким как RRF.