你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Documents - Search Post

在索引中搜索文档。

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

URI 参数

名称 必需 类型 说明
endpoint
path True

string

搜索服务的终结点 URL。

indexName
path True

string

索引的名称。

api-version
query True

string

客户端 API 版本。

请求头

名称 必需 类型 说明
x-ms-client-request-id

string

uuid

随请求一起发送以帮助调试的跟踪 ID。

请求正文

名称 类型 说明
answers

QueryAnswerType

一个 值,该值指定是否应作为搜索响应的一部分返回答案。

captions

QueryCaptionType

一个 值,该值指定是否应将字幕作为搜索响应的一部分返回。

count

boolean

一个 值,该值指定是否提取结果的总计数。 默认值为 false。 将此值设置为 true 可能会影响性能。 请注意,返回的计数是一个近似值。

debug

QueryDebugMode

启用调试工具,该工具可用于进一步浏览重新列出的结果。

facets

string[]

要应用于搜索查询的分面表达式的列表。 每个分面表达式都包含一个字段名称,后跟一个逗号分隔的 name:value 对列表。

filter

string

要应用于搜索查询的 OData $filter表达式。

highlight

string

用于命中突出显示的字段名称的逗号分隔列表。 仅可搜索字段可用于命中突出显示。

highlightPostTag

string

追加到命中突出显示的字符串标记。 必须使用 highlightPreTag 进行设置。 默认值为 </em>。

highlightPreTag

string

一个字符串标记,在前面附加以命中突出显示。 必须使用 highlightPostTag 进行设置。 默认值为 <em>。

hybridSearch

HybridSearch[]

用于配置混合搜索行为的查询参数。

minimumCoverage

number

介于 0 和 100 之间的数字,指示搜索查询必须涵盖的索引百分比才能将查询报告为成功。 此参数可用于确保搜索可用性,即使只有一个副本 (replica) 的服务也是如此。 默认值为 100。

orderby

string

OData 的逗号分隔列表$orderby表达式,用于对结果进行排序。 每个表达式可以是字段名称,也可以是对 geo.distance () 或 search.score () 函数的调用。 每个表达式后跟 asc 表示升序,或 desc 表示降序。 默认值为升序。 排序的依据将是文档的匹配分数。 如果未指定$orderby,则默认排序顺序为按文档匹配分数降序。 最多可以有 32 个$orderby子句。

queryLanguage

QueryLanguage

一个 值,该值指定搜索查询的语言。

queryType

QueryType

一个 值,该值指定搜索查询的语法。 默认值为“simple”。 如果查询使用 Lucene 查询语法,请使用“full”。

scoringParameters

string[]

要用于评分函数的参数值列表 (例如,referencePointParameter) 使用格式 name-values。 例如,如果评分配置文件定义了一个具有名为“mylocation”的参数的函数,则参数字符串将为“mylocation--122.2,44.8” (不带引号) 。

scoringProfile

string

用于为匹配的文档评估匹配分数以便对结果进行排序的评分配置文件的名称。

scoringStatistics

ScoringStatistics

一个 值,该值指定我们是要计算评分统计信息 ((例如全局) 文档频率)以提高评分的一致性,还是在本地计算以降低延迟。 默认值为“local”。 在评分之前,使用“global”聚合全局评分统计信息。 使用全局评分统计信息会增加搜索查询的延迟。

search

string

全文搜索查询表达式;使用“*”或省略此参数以匹配所有文档。

searchFields

string

要确定全文搜索的范围的字段名称的逗号分隔列表。 在完整的 Lucene 查询中使用字段搜索 (fieldName:searchExpression) 时,每个字段搜索表达式的字段名称优先于此参数中列出的任何字段名称。

searchMode

SearchMode

一个 值,该值指定是否必须匹配任何或所有搜索词才能将文档计数为匹配项。

select

string

要检索的字段的逗号分隔列表。 如果未指定,将包含架构中标记为可检索的所有字段。

semanticConfiguration

string

在处理语义类型查询的文档时使用的语义配置的名称。

semanticErrorHandling

SemanticErrorMode

允许用户选择语义调用应完全失败,还是 (默认) 返回部分结果。

semanticFields

string

用于语义排名的字段名称的逗号分隔列表。

semanticMaxWaitInMilliseconds

integer

允许用户在请求失败之前设置语义扩充完成处理所花费的时间上限。

semanticQuery

string

允许设置单独的搜索查询,该查询将仅用于语义重新引用、语义标题和语义答案。 对于需要在基本检索和排名阶段与 L2 语义阶段之间使用不同的查询的方案非常有用。

sessionId

string

一个值,用于创建粘滞会话,这有助于获得更一致的结果。 只要使用相同的 sessionId,就会尽力尝试以相同的副本 (replica) 集为目标。 请注意,重复重复使用相同的 sessionID 值可能会干扰跨副本的请求负载均衡,并会对搜索服务的性能产生负面影响。 用作 sessionId 的值不能以“_”字符开头。

skip

integer

要跳过的搜索结果数。 此值不能大于 100,000。 如果需要按顺序扫描文档,但由于此限制而无法使用 skip,请考虑对完全有序的键使用 orderby,并改为使用范围查询进行筛选。

speller

QuerySpellerType

一个 值,该值指定用于更正单个搜索查询词拼写的拼写检查器的类型。

top

integer

要检索的搜索结果数。 这可以与$skip结合使用,以实现搜索结果的客户端分页。 如果结果由于服务器端分页而被截断,响应将包含一个可用于对下一页结果发出另一个搜索请求的延续标记。

vectorFilterMode

VectorFilterMode

确定是否在执行向量搜索之前或之后应用筛选器。 默认值为“preFilter”。

vectorQueries VectorQuery[]:

矢量和混合搜索查询的查询参数。

响应

名称 类型 说明
200 OK

SearchDocumentsResult

包含与搜索条件匹配的文档的响应。

Other Status Codes

ErrorResponse

错误响应。

示例

SearchIndexSearchDocumentsPost

Sample Request

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

{
  "count": true,
  "facets": [
    "category,count:10,sort:count"
  ],
  "filter": "rating gt 4.0",
  "highlight": "description",
  "highlightPostTag": "</em>",
  "highlightPreTag": "<em>",
  "hybridSearch": {
    "maxTextRecallSize": 100,
    "countAndFacetMode": "countAllResults"
  },
  "minimumCoverage": null,
  "orderby": "rating desc",
  "queryType": "simple",
  "scoringParameters": [
    "currentLocation--122.123,44.77233"
  ],
  "scoringProfile": "sp",
  "search": "nice hotels",
  "searchFields": "category,description",
  "searchMode": "any",
  "sessionId": "mysessionid",
  "scoringStatistics": "global",
  "select": "hotelId,description",
  "skip": 0,
  "top": 10,
  "vectorQueries": [
    {
      "kind": "vector",
      "vector": [
        0.103,
        0.0712,
        0.0852,
        0.1547,
        0.1183
      ],
      "fields": "descriptionEmbedding",
      "k": 5,
      "exhaustive": true,
      "oversampling": 20,
      "weight": 2,
      "threshold": {
        "kind": "vectorSimilarity",
        "value": 0.8
      }
    }
  ],
  "vectorFilterMode": "preFilter"
}

Sample Response

{
  "@odata.count": 25,
  "@search.facets": {
    "category": [
      {
        "count": 1,
        "value": "Economy"
      },
      {
        "count": 1,
        "value": "Luxury"
      }
    ]
  },
  "@search.nextPageParameters": {
    "count": true,
    "facets": [
      "category,count:10,sort:count"
    ],
    "filter": "rating gt 4.0",
    "highlight": "title",
    "highlightPostTag": "</em>",
    "highlightPreTag": "<em>",
    "hybridSearch": {
      "maxTextRecallSize": 100,
      "countAndFacetMode": "countAllResults"
    },
    "minimumCoverage": null,
    "orderby": "search.score() desc,rating desc",
    "queryType": "simple",
    "sessionId": "mysessionid",
    "scoringStatistics": "global",
    "scoringParameters": [
      "currentLocation--122.123,44.77233"
    ],
    "scoringProfile": "sp",
    "search": "nice hotels",
    "searchFields": "title,description",
    "searchMode": "any",
    "select": "docId,title,description",
    "skip": 2,
    "top": 8
  },
  "value": [
    {
      "@search.score": 1.5,
      "@search.highlights": {
        "title": [
          "<em>Nice</em> <em>Hotel</em>"
        ]
      },
      "description": "Cheapest hotel in town",
      "docId": "1",
      "title": "Nice Hotel"
    },
    {
      "@search.score": 0.7,
      "@search.highlights": {
        "title": [
          "Fancy <em>Hotel</em>"
        ]
      },
      "description": "Best hotel in town",
      "docId": "2",
      "title": "Fancy Hotel"
    }
  ],
  "@odata.nextLink": "https://myservice.search.windows.net/indexes('myindex')/docs/search.post.search?api-version=2024-05-01-preview"
}

定义

名称 说明
AnswerResult

答案是从与查询匹配的最相关文档的内容中提取的文本段落。 答案是从顶部搜索结果中提取的。 对考生的答案进行评分,并选择排名靠前的答案。

CaptionResult

标题是文档中相对于搜索查询最具代表性的段落。 它们通常用作文档摘要。 仅针对类型为“semantic”的查询返回标题。

DocumentDebugInfo

包含可用于进一步浏览搜索结果的调试信息。

ErrorAdditionalInfo

资源管理错误附加信息。

ErrorDetail

错误详细信息。

ErrorResponse

错误响应

HybridCountAndFacetMode

确定计数和分面应包括与搜索查询匹配的所有文档,还是仅包括“maxTextRecallSize”窗口中检索的文档。 默认值为“countAllResults”。

HybridSearch

T用于配置混合搜索行为的查询参数。

QueryAnswerType

一个 值,该值指定是否应作为搜索响应的一部分返回答案。

QueryCaptionType

一个 值,该值指定是否应将字幕作为搜索响应的一部分返回。

QueryDebugMode

启用可用于进一步浏览搜索结果的调试工具。

QueryLanguage

查询的语言。

QueryResultDocumentRerankerInput

发送到语义扩充过程的原始串联字符串。

QueryResultDocumentSemanticField

对发送到语义扩充过程的字段的说明,以及它们的使用方式

QuerySpellerType

一个 值,该值指定用于更正单个搜索查询词拼写的拼写检查器的类型。

QueryType

指定搜索查询的语法。 默认值为“simple”。 如果查询使用 Lucene 查询语法,请使用“full”;如果不需要查询语法,请使用“semantic”。

RawVectorQuery

提供原始向量值时用于矢量搜索的查询参数。

ScoringStatistics

一个 值,该值指定我们是要计算评分统计信息 ((例如全局) 文档频率)以提高评分的一致性,还是在本地计算以降低延迟。 默认值为“local”。 在评分之前,使用“global”聚合全局评分统计信息。 使用全局评分统计信息会增加搜索查询的延迟。

SearchDocumentsResult

包含索引中搜索结果的响应。

SearchMode

指定要将文档算作匹配项,是必须匹配任一搜索词还是必须匹配所有搜索词。

SearchRequest

用于筛选、排序、分面、分页和其他搜索查询行为的参数。

SearchResult

包含搜索查询找到的文档以及关联的元数据。

SearchScoreThreshold

矢量查询的结果将根据“@search.score”值进行筛选。 请注意, @search.score 这是作为搜索响应的一部分返回的 。 将为更高的 @search.score选择阈值方向。

SemanticDebugInfo
SemanticErrorMode

允许用户选择语义调用应完全失败,还是 (默认) 返回部分结果。

SemanticErrorReason

为语义排名请求返回部分响应的原因。

SemanticFieldState

字段用于语义扩充过程的方式 (完全使用、部分使用或未使用)

SemanticSearchResultsType

为语义排名请求返回的部分响应的类型。

VectorFilterMode

确定是否在执行向量搜索之前或之后应用筛选器。

VectorizableImageBinaryQuery

提供需要矢量化的图像的 base 64 编码二进制文件时用于矢量搜索的查询参数。

VectorizableImageUrlQuery

提供表示需要矢量化的图像值的 URL 时用于矢量搜索的查询参数。

VectorizableTextQuery

提供需要向量化的文本值时用于矢量搜索的查询参数。

VectorQueryKind

正在执行的向量查询的类型。

VectorSimilarityThreshold

将基于矢量相似性指标筛选向量查询的结果。 请注意,这是相似性指标的规范定义,而不是“距离”版本。 将根据字段使用的指标自动选择 (较大或更小) 的阈值方向。

VectorThresholdKind

正在执行的向量查询的类型。

AnswerResult

答案是从与查询匹配的最相关文档的内容中提取的文本段落。 答案是从顶部搜索结果中提取的。 对考生的答案进行评分,并选择排名靠前的答案。

名称 类型 说明
highlights

string

与 Text 属性中的文本段落相同,其中突出显示了与查询最相关的文本短语。

key

string

从中提取答案的文档的键。

score

number

分数值表示答案与查询相对于为查询返回的其他答案的相关性。

text

string

从文档内容中提取的文本段落作为答案。

CaptionResult

标题是文档中相对于搜索查询最具代表性的段落。 它们通常用作文档摘要。 仅针对类型为“semantic”的查询返回标题。

名称 类型 说明
highlights

string

与 Text 属性中的文本段落相同,其中突出显示了与查询最相关的短语。

text

string

从与搜索查询最相关的文档中提取的代表性文本段落。

DocumentDebugInfo

包含可用于进一步浏览搜索结果的调试信息。

名称 类型 说明
semantic

SemanticDebugInfo

包含特定于语义排名请求的调试信息。

ErrorAdditionalInfo

资源管理错误附加信息。

名称 类型 说明
info

object

其他信息。

type

string

其他信息类型。

ErrorDetail

错误详细信息。

名称 类型 说明
additionalInfo

ErrorAdditionalInfo[]

错误附加信息。

code

string

错误代码。

details

ErrorDetail[]

错误详细信息。

message

string

错误消息。

target

string

错误目标。

ErrorResponse

错误响应

名称 类型 说明
error

ErrorDetail

错误对象。

HybridCountAndFacetMode

确定计数和分面应包括与搜索查询匹配的所有文档,还是仅包括“maxTextRecallSize”窗口中检索的文档。 默认值为“countAllResults”。

名称 类型 说明
countAllResults

string

在计算“count”和“facet”时,包括搜索查询匹配的所有文档,无论这些文档是否位于“maxTextRecallSize”检索窗口中。

countRetrievableResults

string

计算“count”和“facets”时,仅包括“maxTextRecallSize”检索窗口中匹配的文档。

HybridSearch

T用于配置混合搜索行为的查询参数。

名称 类型 说明
countAndFacetMode

HybridCountAndFacetMode

确定计数和分面是应包括与搜索查询匹配的所有文档,还是仅包括“maxTextRecallSize”窗口中检索到的文档。

maxTextRecallSize

integer

确定混合搜索请求的文本查询部分要检索的最大文档数。 这些文档将与与矢量查询匹配的文档组合在一起,以生成单个最终结果列表。 选择较大的 maxTextRecallSize 值将允许使用顶部参数和跳过参数 () 检索和分页更多文档,但代价是资源利用率和延迟更高。 该值需要介于 1 到 10,000 之间。 默认值为 1000。

QueryAnswerType

一个 值,该值指定是否应作为搜索响应的一部分返回答案。

名称 类型 说明
extractive

string

从响应以自然语言表示为问题的查询而返回的文档内容中提取答案候选项。

none

string

不要返回查询的答案。

QueryCaptionType

一个 值,该值指定是否应将字幕作为搜索响应的一部分返回。

名称 类型 说明
extractive

string

从包含与搜索查询相关的段落的匹配文档中提取标题。

none

string

不要返回查询的标题。

QueryDebugMode

启用可用于进一步浏览搜索结果的调试工具。

名称 类型 说明
disabled

string

不会返回任何查询调试信息。

semantic

string

允许用户进一步浏览其重新调整的结果。

QueryLanguage

查询的语言。

名称 类型 说明
ar-eg

string

阿拉伯语 (埃及) 的查询语言值。

ar-jo

string

阿拉伯语 (Jordan) 的查询语言值。

ar-kw

string

科威特) 阿拉伯语 (查询语言值。

ar-ma

string

摩洛哥) 阿拉伯语 (查询语言值。

ar-sa

string

沙特阿拉伯) 阿拉伯语 (查询语言值。

bg-bg

string

保加利亚语 (保加利亚) 的查询语言值。

bn-in

string

查询孟加拉语 (印度) 的语言值。

ca-es

string

加泰罗尼亚语的查询语言值。

cs-cz

string

捷克共和国) (的查询语言值。

da-dk

string

丹麦语 (丹麦语) 的查询语言值。

de-de

string

德语 (德国) 的查询语言值。

el-gr

string

希腊 (希腊) 的查询语言值。

en-au

string

查询英语 (澳大利亚) 的语言值。

en-ca

string

加拿大) (英语的查询语言值。

en-gb

string

查询英国英语 () 的语言值。

en-in

string

查询英语 (印度) 的语言值。

en-us

string

英语 (美国) 的查询语言值。

es-es

string

西班牙语 (西班牙) 的查询语言值。

es-mx

string

西班牙语 (墨西哥) 的查询语言值。

et-ee

string

爱沙尼亚语 (爱沙尼亚) 的查询语言值。

eu-es

string

Basque 的查询语言值。

fa-ae

string

查询波斯语 (U.A.E.) 的语言值。

fi-fi

string

芬兰语) (芬兰语的查询语言值。

fr-ca

string

法语 (加拿大) 的查询语言值。

fr-fr

string

法语 (法国) 的查询语言值。

ga-ie

string

爱尔兰 (爱尔兰) 的查询语言值。

gl-es

string

加利西亚语的查询语言值。

gu-in

string

古吉拉特语 (印度) 的查询语言值。

he-il

string

以色列) (希伯来语的查询语言值。

hi-in

string

印地语 (印度) 的查询语言值。

hr-ba

string

(波斯尼亚黑塞哥维那) 的查询语言值。

hr-hr

string

克罗地亚) (克罗地亚的查询语言值。

hu-hu

string

匈牙利语 (匈牙利) 的查询语言值。

hy-am

string

亚美尼亚语 (亚美尼亚) 查询语言值。

id-id

string

印尼语 (印度尼西亚语) 的查询语言值。

is-is

string

冰岛语 (冰岛) 的查询语言值。

it-it

string

意大利语 (意大利) 查询语言值。

ja-jp

string

日语 (日本) 的查询语言值。

kn-in

string

Kannada (India) 的查询语言值。

ko-kr

string

朝鲜语 (朝鲜语) 的查询语言值。

lt-lt

string

立陶宛语 (立陶宛) 的查询语言值。

lv-lv

string

拉脱维亚语 (拉脱维亚语) 的查询语言值。

ml-in

string

查询马拉雅拉姆语 (印度) 的语言值。

mr-in

string

印度) 马拉地语 (查询语言值。

ms-bn

string

查询马来语 (文莱达鲁萨兰国) 的语言值。

ms-my

string

马来语 (马来西亚) 查询语言值。

nb-no

string

挪威语) 挪威语 (查询语言值。

nl-be

string

荷兰语 (比利时) 的查询语言值。

nl-nl

string

荷兰语 (荷兰) 的查询语言值。

no-no

string

挪威语) 挪威语 (查询语言值。

none

string

未指定查询语言。

pa-in

string

旁遮普语 (印度) 的查询语言值。

pl-pl

string

波兰 (波兰) 的查询语言值。

pt-br

string

巴西葡萄牙语 (查询语言值) 。

pt-pt

string

葡萄牙语 (葡萄牙) 的查询语言值。

ro-ro

string

罗马尼亚语 (罗马尼亚) 的查询语言值。

ru-ru

string

俄语 (俄罗斯) 的查询语言值。

sk-sk

string

斯洛伐克语 (斯洛伐克) 的查询语言值。

sl-sl

string

斯洛文尼亚语 (斯洛文尼亚) 的查询语言值。

sr-ba

string

查询塞尔维亚语 (波斯尼亚黑塞哥维那) 的语言值。

sr-me

string

塞尔维亚语 (黑山) 的查询语言值。

sr-rs

string

塞尔维亚语 (塞尔维亚语) 的查询语言值。

sv-se

string

) (瑞典 (的查询语言值。

ta-in

string

查询泰米尔语 (印度) 的语言值。

te-in

string

泰卢固语 (印度) 的查询语言值。

th-th

string

泰语 (泰国) 的查询语言值。

tr-tr

string

土耳其语 (土耳其) 的查询语言值。

uk-ua

string

乌克兰语 (乌克兰) 的查询语言值。

ur-pk

string

巴基斯坦 (乌尔都语) 的查询语言值。

vi-vn

string

越南语 (越南) 的查询语言值。

zh-cn

string

中文 (中国) 的查询语言值。

zh-tw

string

中文 (台湾) 的查询语言值。

QueryResultDocumentRerankerInput

发送到语义扩充过程的原始串联字符串。

名称 类型 说明
content

string

用于语义扩充的内容字段的原始串联字符串。

keywords

string

用于语义扩充的关键字 (keyword) 字段的原始串联字符串。

title

string

用于语义扩充的游戏字段的原始字符串。

QueryResultDocumentSemanticField

对发送到语义扩充过程的字段的说明,以及它们的使用方式

名称 类型 说明
name

string

发送到语义扩充过程的字段的名称

state

SemanticFieldState

字段用于语义扩充过程的方式 (完全使用、部分使用或未使用)

QuerySpellerType

一个 值,该值指定用于更正单个搜索查询词拼写的拼写检查器的类型。

名称 类型 说明
lexicon

string

拼写检查器使用 queryLanguage 参数指定的语言的静态词典更正单个查询词。

none

string

拼写检查器未启用。

QueryType

指定搜索查询的语法。 默认值为“simple”。 如果查询使用 Lucene 查询语法,请使用“full”;如果不需要查询语法,请使用“semantic”。

名称 类型 说明
full

string

使用完整的 Lucene 查询语法进行搜索。 搜索文本使用 Lucene 查询语言进行解释,该语言允许字段特定和加权搜索以及其他高级功能。

semantic

string

最适合用自然语言而不是关键字表示的查询。 通过使用在 Web 料料库上训练的排名模型重新排名排名靠前的搜索结果,提高搜索结果的精度。

simple

string

使用简单的查询语法进行搜索。 搜索文本使用一种简单的查询语言进行解释,该语言允许使用诸如 +、* 和“”等符号。 默认情况下,查询将跨所有可搜索字段进行评估,除非指定了 searchFields 参数。

RawVectorQuery

提供原始向量值时用于矢量搜索的查询参数。

名称 类型 说明
exhaustive

boolean

如果为 true,则跨向量索引内的所有向量触发一个详尽的 k 最近邻搜索。 对于精确匹配至关重要(例如确定基本真实值)的方案非常有用。

fields

string

集合 (类型为 Edm.Single) 的矢量字段,该字段将包含在搜索的向量中。

k

integer

要作为排名靠前的命中返回的最近邻居数。

kind string:

vector

正在执行的向量查询的类型。

oversampling

number

过度采样因子。 最小值为 1。 它替代索引定义中配置的“defaultOversampling”参数。 仅当“rerankWithOriginalVectors”为 true 时,才能设置它。 仅当对基础向量字段使用压缩方法时,才允许使用此参数。

threshold VectorThreshold:

用于矢量查询的阈值。 请注意,仅当所有“字段”使用相同的相似性指标时,才能设置此值。

vector

number[]

搜索查询的向量表示形式。

weight

number

与其他向量查询和/或同一搜索请求中的文本查询相比,矢量查询的相对权重。 合并由不同向量查询生成的多个排名列表的结果和/或通过文本查询检索的结果时,将使用此值。 权重越高,与该查询匹配的文档在最终排名中就越高。 默认值为 1.0,该值必须是大于零的正数。

ScoringStatistics

一个 值,该值指定我们是要计算评分统计信息 ((例如全局) 文档频率)以提高评分的一致性,还是在本地计算以降低延迟。 默认值为“local”。 在评分之前,使用“global”聚合全局评分统计信息。 使用全局评分统计信息会增加搜索查询的延迟。

名称 类型 说明
global

string

将全局计算评分统计信息,以便获得更一致的评分。

local

string

评分统计信息将在本地计算,以降低延迟。

SearchDocumentsResult

包含索引中搜索结果的响应。

名称 类型 说明
@odata.count

integer

搜索操作找到的结果总数;如果未请求计数,则为 null。 如果存在,计数可能大于此响应中的结果数。 如果使用$top或$skip参数,或者查询无法在单个响应中返回所有请求的文档,则可能会发生这种情况。

@odata.nextLink

string

当查询无法在单个响应中返回所有请求的结果时返回的延续 URL。 可以使用此 URL 来构建另一个 GET 或 POST 搜索请求,以获取搜索响应的下一部分。 请确保使用与生成此响应的请求相同的谓词 (GET 或 POST) 。

@search.answers

AnswerResult[]

搜索操作的答案查询结果;如果未指定 answers 查询参数或设置为“none”,则为 null。

@search.coverage

number

一个指示查询中包含的索引百分比的值;如果未在请求中指定 minimumCoverage,则为 null。

@search.facets

object

搜索操作的 facet 查询结果,组织为每个分面字段的存储桶集合;如果查询不包含任何分面表达式,则为 null。

@search.nextPageParameters

SearchRequest

当查询无法在单个响应中返回所有请求的结果时返回的继续 JSON 有效负载。 可以将此 JSON 与 一起使用 @odata.nextLink 来制定另一个 POST 搜索请求,以获取搜索响应的下一部分。

@search.semanticPartialResponseReason

SemanticErrorReason

为语义排名请求返回部分响应的原因。

@search.semanticPartialResponseType

SemanticSearchResultsType

为语义排名请求返回的部分响应的类型。

value

SearchResult[]

查询返回的结果序列。

SearchMode

指定要将文档算作匹配项,是必须匹配任一搜索词还是必须匹配所有搜索词。

名称 类型 说明
all

string

必须匹配所有搜索词,才能将文档计数为匹配项。

any

string

必须匹配任何搜索词,才能将文档计数为匹配项。

SearchRequest

用于筛选、排序、分面、分页和其他搜索查询行为的参数。

名称 类型 说明
answers

QueryAnswerType

一个 值,该值指定是否应作为搜索响应的一部分返回答案。

captions

QueryCaptionType

一个 值,该值指定是否应将字幕作为搜索响应的一部分返回。

count

boolean

一个 值,该值指定是否提取结果的总计数。 默认值为 false。 将此值设置为 true 可能会影响性能。 请注意,返回的计数是一个近似值。

debug

QueryDebugMode

启用调试工具,该工具可用于进一步浏览重新列出的结果。

facets

string[]

要应用于搜索查询的分面表达式的列表。 每个分面表达式都包含一个字段名称,后跟一个逗号分隔的 name:value 对列表。

filter

string

要应用于搜索查询的 OData $filter表达式。

highlight

string

用于命中突出显示的字段名称的逗号分隔列表。 仅可搜索字段可用于命中突出显示。

highlightPostTag

string

追加到命中突出显示的字符串标记。 必须使用 highlightPreTag 进行设置。 默认值为 </em>。

highlightPreTag

string

一个字符串标记,在前面附加以命中突出显示。 必须使用 highlightPostTag 进行设置。 默认值为 <em>。

hybridSearch

HybridSearch[]

用于配置混合搜索行为的查询参数。

minimumCoverage

number

介于 0 和 100 之间的数字,指示搜索查询必须涵盖的索引百分比才能将查询报告为成功。 此参数可用于确保搜索可用性,即使只有一个副本 (replica) 的服务也是如此。 默认值为 100。

orderby

string

OData 的逗号分隔列表$orderby表达式,用于对结果进行排序。 每个表达式可以是字段名称,也可以是对 geo.distance () 或 search.score () 函数的调用。 每个表达式后跟 asc 表示升序,或 desc 表示降序。 默认值为升序。 排序的依据将是文档的匹配分数。 如果未指定$orderby,则默认排序顺序为按文档匹配分数降序。 最多可以有 32 个$orderby子句。

queryLanguage

QueryLanguage

一个 值,该值指定搜索查询的语言。

queryType

QueryType

一个 值,该值指定搜索查询的语法。 默认值为“simple”。 如果查询使用 Lucene 查询语法,请使用“full”。

scoringParameters

string[]

要用于评分函数的参数值列表 (例如,referencePointParameter) 使用格式 name-values。 例如,如果评分配置文件定义了一个具有名为“mylocation”的参数的函数,则参数字符串将为“mylocation--122.2,44.8” (不带引号) 。

scoringProfile

string

用于为匹配的文档评估匹配分数以便对结果进行排序的评分配置文件的名称。

scoringStatistics

ScoringStatistics

一个 值,该值指定我们是要计算评分统计信息 ((例如全局) 文档频率)以提高评分的一致性,还是在本地计算以降低延迟。 默认值为“local”。 在评分之前,使用“global”聚合全局评分统计信息。 使用全局评分统计信息会增加搜索查询的延迟。

search

string

全文搜索查询表达式;使用“*”或省略此参数以匹配所有文档。

searchFields

string

要确定全文搜索的范围的字段名称的逗号分隔列表。 在完整的 Lucene 查询中使用字段搜索 (fieldName:searchExpression) 时,每个字段搜索表达式的字段名称优先于此参数中列出的任何字段名称。

searchMode

SearchMode

一个 值,该值指定是否必须匹配任何或所有搜索词才能将文档计数为匹配项。

select

string

要检索的字段的逗号分隔列表。 如果未指定,将包含架构中标记为可检索的所有字段。

semanticConfiguration

string

在处理语义类型查询的文档时使用的语义配置的名称。

semanticErrorHandling

SemanticErrorMode

允许用户选择语义调用应完全失败,还是 (默认) 返回部分结果。

semanticFields

string

用于语义排名的字段名称的逗号分隔列表。

semanticMaxWaitInMilliseconds

integer

允许用户在请求失败之前设置语义扩充完成处理所花费的时间上限。

semanticQuery

string

允许设置单独的搜索查询,该查询将仅用于语义重新引用、语义标题和语义答案。 对于需要在基本检索和排名阶段与 L2 语义阶段之间使用不同的查询的方案非常有用。

sessionId

string

一个值,用于创建粘滞会话,这有助于获得更一致的结果。 只要使用相同的 sessionId,就会尽力尝试以相同的副本 (replica) 集为目标。 请注意,重复重复使用相同的 sessionID 值可能会干扰跨副本的请求负载均衡,并会对搜索服务的性能产生负面影响。 用作 sessionId 的值不能以“_”字符开头。

skip

integer

要跳过的搜索结果数。 此值不能大于 100,000。 如果需要按顺序扫描文档,但由于此限制而无法使用 skip,请考虑对完全有序的键使用 orderby,并改为使用范围查询进行筛选。

speller

QuerySpellerType

一个 值,该值指定用于更正单个搜索查询词拼写的拼写检查器的类型。

top

integer

要检索的搜索结果数。 这可以与$skip结合使用,以实现搜索结果的客户端分页。 如果结果由于服务器端分页而被截断,响应将包含一个可用于对下一页结果发出另一个搜索请求的延续标记。

vectorFilterMode

VectorFilterMode

确定是否在执行向量搜索之前或之后应用筛选器。 默认值为“preFilter”。

vectorQueries VectorQuery[]:

矢量和混合搜索查询的查询参数。

SearchResult

包含搜索查询找到的文档以及关联的元数据。

名称 类型 说明
@search.captions

CaptionResult[]

标题是相对于搜索查询而言,文档中最具代表性的段落。 它们通常用作文档摘要。 仅对“semantic”类型的查询返回标题。

@search.documentDebugInfo

DocumentDebugInfo[]

包含可用于进一步浏览搜索结果的调试信息。

@search.highlights

object

文档中指示匹配搜索词的文本片段,按每个适用字段组织;如果查询未启用命中突出显示,则为 null。

@search.rerankerScore

number

语义排名器为排名靠前的搜索结果计算的相关性分数。 搜索结果先按 RerankerScore 排序,然后按分数排序。 RerankerScore 仅针对类型为“semantic”的查询返回。

@search.score

number

与查询返回的其他文档相比,文档的相关性分数。

SearchScoreThreshold

矢量查询的结果将根据“@search.score”值进行筛选。 请注意, @search.score 这是作为搜索响应的一部分返回的 。 将为更高的 @search.score选择阈值方向。

名称 类型 说明
kind string:

searchScore

用于筛选矢量查询的阈值类型

value

number

阈值将根据“@search.score”值进行筛选。 请注意, @search.score 这是作为搜索响应的一部分返回的 。 将为更高的 @search.score选择阈值方向。

SemanticDebugInfo

名称 类型 说明
contentFields

QueryResultDocumentSemanticField[]

发送到语义扩充过程的内容字段,以及它们的使用方式

keywordFields

QueryResultDocumentSemanticField[]

发送到语义扩充过程的关键字 (keyword) 字段,以及它们的使用方式

rerankerInput

QueryResultDocumentRerankerInput

发送到语义扩充过程的原始串联字符串。

titleField

QueryResultDocumentSemanticField

发送到语义扩充过程的标题字段,以及它的使用方式

SemanticErrorMode

允许用户选择语义调用应完全失败,还是 (默认) 返回部分结果。

名称 类型 说明
fail

string

如果在语义处理步骤期间出现异常,则查询将失败并返回相应的 HTTP 代码,具体取决于错误。

partial

string

如果语义处理失败,仍返回部分结果。 部分结果的定义取决于失败的语义步骤以及失败的原因。

SemanticErrorReason

为语义排名请求返回部分响应的原因。

名称 类型 说明
capacityOverloaded

string

请求被限制。 仅返回基本结果。

maxWaitExceeded

string

如果设置了“semanticMaxWaitInMilliseconds”,并且语义处理持续时间超过了该值。 仅返回基本结果。

transient

string

语义过程至少有一个步骤失败。

SemanticFieldState

字段用于语义扩充过程的方式 (完全使用、部分使用或未使用)

名称 类型 说明
partial

string

字段部分用于语义扩充。

unused

string

字段未用于语义扩充。

used

string

字段已完全用于语义扩充。

SemanticSearchResultsType

为语义排名请求返回的部分响应的类型。

名称 类型 说明
baseResults

string

没有任何语义扩充或重新进行的结果。

rerankedResults

string

结果已使用重排器模型重新进行,并将包含语义标题。 它们不包括任何答案、答案要点或描述文字要点。

VectorFilterMode

确定是否在执行向量搜索之前或之后应用筛选器。

名称 类型 说明
postFilter

string

在返回候选矢量结果集后,将应用筛选器。 根据筛选器选择性,这可能会导致结果少于参数“k”请求的结果。

preFilter

string

筛选器将在搜索查询之前应用。

VectorizableImageBinaryQuery

提供需要矢量化的图像的 base 64 编码二进制文件时用于矢量搜索的查询参数。

名称 类型 说明
base64Image

string

要矢量化以执行矢量搜索查询的图像的 base 64 编码二进制文件。

exhaustive

boolean

如果为 true,则对向量索引中的所有向量触发一个详尽的 k 最近邻搜索。 适用于精确匹配至关重要的方案,例如确定基本真实值。

fields

string

集合 (Edm.Single 类型的向量字段) 包含在搜索的矢量中。

k

integer

要作为热门命中数返回的最近邻居的数目。

kind string:

imageBinary

正在执行的向量查询的类型。

oversampling

number

过度采样因子。 最小值为 1。 它替代索引定义中配置的“defaultOversampling”参数。 仅当“rerankWithOriginalVectors”为 true 时,才能设置它。 仅当对基础向量字段使用压缩方法时,才允许使用此参数。

threshold VectorThreshold:

用于矢量查询的阈值。 请注意,仅当所有“字段”使用相同的相似性指标时,才能设置此值。

weight

number

与其他向量查询和/或同一搜索请求中的文本查询相比,矢量查询的相对权重。 合并由不同向量查询生成的多个排名列表的结果和/或通过文本查询检索的结果时,将使用此值。 权重越高,与该查询匹配的文档在最终排名中就越高。 默认值为 1.0,该值必须是大于零的正数。

VectorizableImageUrlQuery

提供表示需要矢量化的图像值的 URL 时用于矢量搜索的查询参数。

名称 类型 说明
exhaustive

boolean

如果为 true,则对向量索引中的所有向量触发一个详尽的 k 最近邻搜索。 适用于精确匹配至关重要的方案,例如确定基本真实值。

fields

string

集合 (Edm.Single 类型的向量字段) 包含在搜索的矢量中。

k

integer

要作为热门命中数返回的最近邻居的数目。

kind string:

imageUrl

正在执行的向量查询的类型。

oversampling

number

过度采样因子。 最小值为 1。 它替代索引定义中配置的“defaultOversampling”参数。 仅当“rerankWithOriginalVectors”为 true 时,才能设置它。 仅当对基础向量字段使用压缩方法时,才允许使用此参数。

threshold VectorThreshold:

用于矢量查询的阈值。 请注意,仅当所有“字段”使用相同的相似性指标时,才能设置此值。

url

string

要矢量化以执行矢量搜索查询的图像的 URL。

weight

number

与其他向量查询和/或同一搜索请求中的文本查询相比,矢量查询的相对权重。 合并由不同向量查询生成的多个排名列表的结果和/或通过文本查询检索的结果时,将使用此值。 权重越高,与该查询匹配的文档在最终排名中就越高。 默认值为 1.0,该值必须是大于零的正数。

VectorizableTextQuery

提供需要向量化的文本值时用于矢量搜索的查询参数。

名称 类型 说明
exhaustive

boolean

如果为 true,则对向量索引中的所有向量触发一个详尽的 k 最近邻搜索。 适用于精确匹配至关重要的方案,例如确定基本真实值。

fields

string

集合 (Edm.Single 类型的向量字段) 包含在搜索的矢量中。

k

integer

要作为热门命中数返回的最近邻居的数目。

kind string:

text

正在执行的向量查询的类型。

oversampling

number

过度采样因子。 最小值为 1。 它替代索引定义中配置的“defaultOversampling”参数。 仅当“rerankWithOriginalVectors”为 true 时,才能设置它。 仅当对基础向量字段使用压缩方法时,才允许使用此参数。

text

string

要矢量化以执行矢量搜索查询的文本。

threshold VectorThreshold:

用于矢量查询的阈值。 请注意,仅当所有“字段”使用相同的相似性指标时,才能设置此值。

weight

number

与其他向量查询和/或同一搜索请求中的文本查询相比,矢量查询的相对权重。 合并由不同向量查询生成的多个排名列表的结果和/或通过文本查询检索的结果时,将使用此值。 权重越高,与该查询匹配的文档在最终排名中就越高。 默认值为 1.0,该值必须是大于零的正数。

VectorQueryKind

正在执行的向量查询的类型。

名称 类型 说明
imageBinary

string

向量查询,其中提供了需要矢量化的图像的 base 64 编码二进制文件。

imageUrl

string

向量查询,其中提供了一个 URL,表示需要矢量化的图像值。

text

string

向量查询,其中提供了需要矢量化的文本值。

vector

string

提供原始矢量值的向量查询。

VectorSimilarityThreshold

将基于矢量相似性指标筛选向量查询的结果。 请注意,这是相似性指标的规范定义,而不是“距离”版本。 将根据字段使用的指标自动选择 (较大或更小) 的阈值方向。

名称 类型 说明
kind string:

vectorSimilarity

用于筛选矢量查询的阈值类型

value

number

阈值将根据相似性指标值进行筛选。 请注意,这是相似性指标的规范定义,而不是“距离”版本。 将根据字段使用的指标自动选择 (较大或更小) 的阈值方向。

VectorThresholdKind

正在执行的向量查询的类型。

名称 类型 说明
searchScore

string

矢量查询的结果将根据“@search.score”值进行筛选。 请注意, @search.score 这是作为搜索响应的一部分返回的 。 将为更高的 @search.score选择阈值方向。

vectorSimilarity

string

将基于矢量相似性指标筛选向量查询的结果。 请注意,这是相似性指标的规范定义,而不是“距离”版本。 将根据字段使用的指标自动选择 (较大或更小) 的阈值方向。