Pesquisar documentos (API REST de visualização)
Aplica-se a: 2023-07-01-Preview. Esta versão não é mais suportada. Atualize imediatamente para uma versão mais recente.
Importante
2023-07-01-Preview adiciona:
- "vetores" parâmetro de consulta especificando quaisquer solicitações de consulta vetorial. Cada objeto deve conter a representação vetorial da consulta, o número "k" de vizinhos mais próximos a serem retornados nos resultados e os campos vetoriais a serem usados durante a execução da consulta.
2021-04-30-Preview adiciona:
- "semanticConfiguration" suporta a classificação semântica de escopo para campos específicos.
- "legendas" retorna frases extraídas de passagens-chave nos documentos semanticamente classificados mais altos.
2020-06-30-Preview adiciona:
- "queryType=semantic" suporta reclassificação semântica e respostas.
- "searchFields" em uma consulta semântica estabelece a ordem de prioridade dos campos usados para formular legendas e respostas. Esta abordagem foi substituída por "semanticConfiguration" em 2021-04-30-Preview e agora está obsoleta.
- "speller" permite a correção ortográfica na entrada da consulta.
- "queryLanguage" é necessário para "queryType=semantic" e "speller".
- "featuresMode" descompacta uma pontuação de pesquisa, relatando a frequência do termo por campo, a pontuação de semelhança por campo e o número de correspondências exclusivas por campo.
Uma solicitação de consulta direciona a coleção de documentos de um único índice em um serviço de pesquisa. Inclui parâmetros que definem os critérios de correspondência e parâmetros que moldam a resposta. Você também pode usar um alias de índice para direcionar um índice específico em vez de usar o próprio nome do índice.
Você pode usar GET ou POST para a maioria das consultas, mas deve usar POST para pesquisa vetorial porque os parâmetros de consulta vetorial não cabem em um URI. Os parâmetros de consulta são especificados na cadeia de caracteres de consulta para solicitações GET e no corpo da solicitação para solicitações POST.
GET https://[service name].search.windows.net/indexes/[index name]/docs?[query parameters]
Content-Type: application/json
api-key: [admin or query key]
Se você estiver usando POST, adicione a ação "pesquisar" como um parâmetro URI.
POST https://[service name].search.windows.net/indexes/[index name]/docs/search?api-version=[api-version]
Content-Type: application/json
api-key: [admin or query key]
Quando chamado com GET, o comprimento da URL da solicitação não pode exceder 8 KB. Este comprimento é suficiente para a maioria das aplicações. No entanto, alguns aplicativos produzem consultas grandes, especificamente quando expressões de filtro OData são usadas. Para essas aplicações, HTTP POST é uma escolha melhor porque permite filtros maiores do que GET.
Com o POST, o número de cláusulas em um filtro é o fator limitante, não o tamanho da cadeia de caracteres bruta do filtro, já que o limite de tamanho da solicitação para POST é de aproximadamente 16 MB. Embora o limite de tamanho da solicitação POST seja grande, as expressões de filtro não podem ser arbitrariamente complexas. Para obter mais informações sobre limitações de complexidade de filtro, consulte OData Expression Syntax for Azure AI Search.
Parâmetros de URI
Recomendações de codificação de URL
Lembre-se de codificar URL parâmetros de consulta específicos ao chamar a API GET REST diretamente. Para uma operação de de Pesquisa de Documentos
- Pesquisar
- $filter
- faceta
- destaquePreTag
- destaquePostTag
A codificação de URL só é recomendada para parâmetros individuais. Se você codificar inadvertidamente a cadeia de caracteres de consulta inteira (tudo após o ?
), as solicitações serão interrompidas.
Além disso, a codificação de URL só é necessária ao chamar a API REST diretamente usando GET. Nenhuma codificação de URL é necessária ao usar o POST ou ao usar a biblioteca de cliente .NET do Azure AI Search, que lida com a codificação para você.
Cabeçalhos de solicitação
A tabela a seguir descreve os cabeçalhos de solicitação obrigatórios e opcionais.
Campos | Descrição |
---|---|
Tipo de conteúdo | Necessário. Defina esse valor como "application/json" |
Chave API | Opcional se você estiver usando funções do Azure e um token de portador for fornecido na solicitação, caso contrário, uma chave será necessária. Uma chave de api é uma cadeia de caracteres exclusiva gerada pelo sistema que autentica a solicitação no seu serviço de pesquisa. As solicitações de consulta na coleção de documentos podem especificar uma chave de administrador ou uma chave de consulta como a chave da API. A chave de consulta é usada para operações somente leitura na coleção de documentos. Consulte Conectar-se à Pesquisa de IA do Azure usando de autenticação de chave para obter detalhes. |
Órgão do Pedido
Para GET: Nenhum.
Para o POST:
{
"answers": "none" (default) | "extractive",
"count": true | false (default),
"captions": "none" (default) | "extractive",
"facets": [ "facet_expression_1", "facet_expression_2", ... ],
"featuresMode" : "disabled" (default) | "enabled",
"filter": "odata_filter_expression",
"highlight": "highlight_field_1, highlight_field_2, ...",
"highlightPreTag": "pre_tag",
"highlightPostTag": "post_tag",
"minimumCoverage": # (% of index that must be covered to declare query successful; default 100),
"orderby": "orderby_expression",
"queryLanguage": "en-us" (default) | (a supported language code),
"queryType": "simple" (default) | "full" | "semantic",
"scoringParameters": [ "scoring_parameter_1", "scoring_parameter_2", ... ],
"scoringProfile": "scoring_profile_name",
"scoringStatistics" : "local" (default) | "global",
"search": "simple_query_expression",
"searchFields": "field_name_1, field_name_2, ...",
"searchMode": "any" (default) | "all",
"select": "field_name_1, field_name_2, ...",
"semanticConfiguration": "semantic_configuration_name",
"sessionId" : "session_id",
"skip": # (default 0),
"speller": "none" (default) | "lexicon",
"top": #,
"vectors": [
{
"value": "a vector representation of the query",
"k": an integer (number of nearest neighbors to return as top results),
"fields": "a comma-delimited list of vector fields to use in the query"
}
]
}
Continuação das respostas parciais da pesquisa
Às vezes, a Pesquisa de IA do Azure não pode retornar todos os resultados solicitados em uma única resposta de Pesquisa. Uma resposta parcial pode acontecer por diferentes motivos, como quando a consulta retorna muitos documentos não especificando $top ou especificando um valor para $ top que é muito grande. Nesses casos, a Pesquisa de IA do Azure inclui a anotação @odata.nextLink no corpo da resposta e também @search.nextPageParameters se era uma solicitação POST. Você pode usar os valores dessas anotações para formular outra solicitação de pesquisa para obter a próxima parte da resposta da pesquisa. Esse comportamento é chamado de de continuação
Os motivos pelos quais o Azure AI Search pode retornar tokens de continuação são específicos da implementação e estão sujeitos a alterações. Clientes robustos devem estar sempre prontos para lidar com casos em que menos documentos do que o esperado são retornados e um token de continuação é incluído para continuar recuperando documentos. Observe também que você deve usar o mesmo método HTTP que a solicitação original para continuar. Por exemplo, se você enviou uma solicitação GET, todas as solicitações de continuação enviadas também devem usar GET (e da mesma forma para POST).
Observação
O objetivo do @odata.nextLink e @search.nextPageParameters é proteger o serviço de consultas que solicitam muitos resultados, não fornecer um mecanismo geral para paginação. Se quiser visualizar os resultados, use $top e $skip juntos. Por exemplo, se você quiser páginas de tamanho 10, sua primeira solicitação deve ter $top=10 e $skip=0, a segunda solicitação deve ter $top=10 e $skip=10, a terceira solicitação deve ter $top=10 e $skip=20, e assim por diante.
Parâmetros de consulta
Uma consulta aceita vários parâmetros na URL quando chamada com GET e como propriedades JSON no corpo da solicitação quando chamada com POST. A sintaxe para alguns parâmetros é ligeiramente diferente entre GET e POST. Essas diferenças são observadas na tabela a seguir.
Designação | Tipo | Descrição |
---|---|---|
respostas (pré-visualização) | string | Opcional. Os valores válidos são "nenhum" e "extrativo". O padrão é "nenhum". Este parâmetro só é válido se o tipo de consulta for "semântico". Quando definida como "extrativa", a consulta formula e retorna respostas de passagens importantes nos documentos semanticamente classificados mais altos. O padrão é uma resposta, mas você pode especificar até 10 adicionando uma contagem. Por exemplo, "answers": "extractive|count-3" retorna três respostas. Para que uma resposta seja retornada, deve haver conteúdo literal no campo de destino que se pareça com uma resposta. Os modelos de linguagem usados para as respostas são treinados para reconhecer as respostas, não para gerá-las. Além disso, a consulta em si deve parecer uma pergunta. |
API-versão | string | Necessário. Versão da API REST usada para a solicitação. Para obter uma lista das versões suportadas, consulte versões da API. Para esta operação, a versão api é especificada como um parâmetro URI, independentemente de você chamar de documentos de pesquisa com GET ou POST. |
legendas (pré-visualização) | string | Opcional. Os valores válidos são "nenhum" e "extrativo". O padrão é "nenhum". Este parâmetro só é válido se o tipo de consulta for "semântico". Quando definida como "extrativa", a consulta retorna legendas extraídas de passagens importantes nos documentos mais bem classificados. Quando captions é definido como 'extractive', o realce é ativado por padrão e pode ser configurado anexando o caractere de pipe '|' seguido pela opção 'highlight-<true/false>', como 'extractive|highlight-true'. |
$count | Booleano | Opcional. Os valores válidos são "true" ou "false". O padrão é "false". Quando chamado com POST, esse parâmetro é chamado count em vez de $count. Especifica se a contagem total de resultados deve ser buscada. Este valor é a contagem de todos os documentos que correspondem aos parâmetros de pesquisa e $filter, ignorando $top e $skip. Definir esse valor como "true" pode prejudicar o desempenho. A contagem é precisa se o índice estiver estável, mas reportará ou reportará em excesso quaisquer documentos que sejam ativamente adicionados, atualizados ou excluídos. Se você quiser obter apenas a contagem sem documentos, você pode usar $top=0. |
facetas ou facetas | string | Opcional. Um campo para faceta por, onde o campo é atribuído como "facetable". Quando chamado com GET, facet é um campo (facet: field1 ). Quando chamado com POST, esse parâmetro é nomeado facets em vez de facet e é especificado como uma matriz (facets: [field1, field2, field3] ). A cadeia de caracteres pode conter parâmetros para personalizar a facetagem, expressa como pares nome-valor separados por vírgula.
Os valores válidos são "count", "sort", "values", "interval" e "timeoffset". "contagem" é o número máximo de termos facetados; O padrão é 10. Não há limite máximo para o número de termos, mas valores mais altos degradam o desempenho, especialmente se o campo facetado contiver um grande número de termos exclusivos. Por exemplo, "facet=category,count:5" obtém as cinco principais categorias nos resultados de facetas. Se o parâmetro count for menor que o número de termos exclusivos, os resultados podem não ser precisos. Isso se deve à maneira como as consultas de faceta são distribuídas entre os fragmentos. Para obter uma contagem precisa em todos os fragmentos, você pode definir contagem como zero ou com um valor maior ou igual ao número de valores exclusivos no campo da tabela facial. A contrapartida é o aumento da latência. "sort" pode ser definido como "count", "-count", "value", "-value". Use count para classificar decrescente por contagem. Use -count para classificar em ordem crescente por contagem. Use value para classificar ascendente por valor. Use -value para classificar decrescente por valor (por exemplo, "facet=category,count:3,sort:count" obtém as três principais categorias em resultados de facetas em ordem decrescente pelo número de documentos com o nome de cada cidade). Se as três principais categorias são Budget, Motel e Luxury, e Budget tem cinco hits, Motel tem seis e Luxury tem quatro, então os baldes estão na ordem Motel, Budget, Luxury. Para -value, "facet=rating,sort:-value" produz buckets para todas as classificações possíveis, em ordem decrescente por valor (por exemplo, se as classificações forem de 1 a 5, os buckets serão ordenados 5, 4, 3, 2, 1, independentemente de quantos documentos corresponderem a cada classificação). "valores" podem ser definidos como valores numéricos delimitados por pipe ou Edm.DateTimeOffset especificando um conjunto dinâmico de valores de entrada de faceta (por exemplo, "facet=baseRate,values:10 | 20" produz três caçambas: uma para taxa básica 0 até, mas não incluindo 10, uma para 10 até, mas não incluindo 20, e uma para 20 e superior). Uma string "facet=lastRenovationDate,values:2010-02-01T00:00:00Z" produz dois buckets: um para hotéis renovados antes de fevereiro de 2010 e outro para hotéis renovados em 1º de fevereiro de 2010 ou posterior. Os valores devem ser listados em ordem sequencial e crescente para obter os resultados esperados. "intervalo" é um intervalo inteiro maior que 0 para números, ou minuto, hora, dia, semana, mês, trimestre, ano para valores de data e hora. Por exemplo, "facet=baseRate,interval:100" produz buckets com base em intervalos de taxa básica de tamanho 100. Se as taxas básicas estiverem todas entre $60 e $600, haverá baldes para 0-100, 100-200, 200-300, 300-400, 400-500 e 500-600. A string "facet=lastRenovationDate,interval:year" produz um balde para cada ano em que os hotéis foram renovados. "timeoffset" pode ser definido como ([+-]hh:mm, [+-]hhmm ou [+-]hh). Se usado, o parâmetro timeoffset deve ser combinado com a opção interval e somente quando aplicado a um campo do tipo Edm.DateTimeOffset. O valor especifica o deslocamento de tempo UTC a ser considerado na definição de limites de tempo. Por exemplo: "facet=lastRenovationDate,interval:day,timeoffset:-01:00" usa o limite de dia que começa às 01:00:00 UTC (meia-noite no fuso horário de destino). contagem e classificação podem ser combinadas na mesma especificação de faceta, mas não podem ser combinadas com intervalo ou valores, e intervalo e valores não podem ser combinados juntos. As facetas do intervalo na hora da data são calculadas com base na hora UTC se o deslocamento de tempo não for especificado. Por exemplo: para "facet=lastRenovationDate,interval:day", o limite do dia começa às 00:00:00 UTC. |
featuresMode (pré-visualização) | Booleano | Opcional. Os valores válidos são "enabled" e "disabled". O padrão é "desativado". Um valor que especifica se os resultados devem incluir recursos de resultado da consulta, usado para calcular a pontuação de relevância de um documento em relação à consulta, como semelhança por campo. Use "enabled" para expor mais recursos de resultado de consulta: por pontuação de similaridade de campo, por frequência de termo de campo e por número de campo de tokens exclusivos correspondentes. Para obter mais informações, consulte Semelhança e pontuação. |
$filter | string | Opcional. Uma expressão de pesquisa estruturada na sintaxe OData padrão. Somente campos filtráveis podem ser usados em um filtro. Quando chamado com POST, esse parâmetro é chamado filter em vez de $filter. Consulte Sintaxe de Expressão OData para de Pesquisa de IA do Azure para obter detalhes sobre o subconjunto da gramática de expressão OData suportada pela Pesquisa de IA do Azure. |
Destaque | string | Opcional. Um conjunto de nomes de campo separados por vírgulas usados para destaques de cliques. Apenas os campos pesquisáveis podem ser usados para realce de cliques. Por padrão, o Azure AI Search retorna até cinco destaques por campo. O limite é configurável por campo acrescentando "-<max # de destaques>" após o nome do campo. Por exemplo, "highlight=title-3,description-10" retorna até três acertos destacados do campo de título e até 10 acertos do campo de descrição. O número máximo de destaques deve ser um número inteiro entre 1 e 1000, inclusive. |
destaquePostTag | string | Opcional. O padrão é "</em>" . Uma marca de cadeia de caracteres que acrescenta ao termo realçado. Deve ser definido com highlightPreTag. Os caracteres reservados no URL devem ser codificados por porcentagem (por exemplo, %23 em vez de #). |
destaquePreTag | string | Opcional. O padrão é "</em>" . Uma marca de cadeia de caracteres que precede o termo realçado. Deve ser definido com highlightPostTag. Os caracteres reservados no URL devem ser codificados por porcentagem (por exemplo, %23 em vez de #). |
mínimoCobertura | inteiro | Opcional. Os valores válidos são um número entre 0 e 100, indicando a porcentagem do índice que deve estar disponível para atender à consulta antes que ela possa ser relatada como um sucesso. O padrão é "100".
Cem por cento de cobertura significa que todos os estilhaços responderam ao pedido (nem problemas de saúde do serviço nem atividades de manutenção reduziram a cobertura). Sob a configuração padrão, menor que a cobertura total retorna o código de status HTTP 503. Reduzir o mínimoA cobertura pode ser útil se estiverem ocorrendo erros 503 e você quiser aumentar a probabilidade de sucesso da consulta, especialmente para serviços configurados para uma réplica. Se você definir minimumCoverage e Search for bem-sucedido, ele retornará HTTP 200 e incluirá um valor @search.coverage na resposta indicando a porcentagem do índice que foi incluído na consulta. Nesse cenário, nem todos os documentos correspondentes têm a garantia de estar presentes nos resultados da pesquisa, mas se a disponibilidade da pesquisa for mais importante do que a recuperação, reduzir a cobertura pode ser uma estratégia de mitigação viável. |
$orderby | string | Opcional. Uma lista de expressões separadas por vírgulas para classificar os resultados. Quando chamado com POST, esse parâmetro é nomeado orderby em vez de $orderby. Cada expressão pode ser um nome de campo ou uma chamada para a função geo.distance(). Cada expressão pode ser seguida por "asc" para indicar ascendente, e "desc" para indicar descendente. Se houver valores nulos no campo de classificação, os nulos aparecerão primeiro em ordem crescente e por último em ordem decrescente. O padrão é ordem crescente. Os empates serão quebrados pelas pontuações dos documentos. Se nenhum $orderby for especificado, a ordem de classificação padrão será decrescente por pontuação de correspondência de documento. Há um limite de 32 cláusulas para $orderby. |
queryLanguage (visualização) | string | Opcional. Os valores válidos são um idioma suportado. O padrão é "en-us". Esse parâmetro deve ser definido se você usar speller=lexicon ou queryType=semantic. A linguagem especificada em queryLanguage é usada tanto para a verificação ortográfica quanto pelos modelos semânticos que reclassificam os resultados e extraem uma legenda ou resposta. As bibliotecas usadas para queryLanguage são independentes de outros atributos de campo baseados em localidade, como analisadores de idioma usados para indexação e pesquisa de texto completo. |
queryType | string | Opcional. Os valores válidos são "simples", "completo" ou "semântico" (visualização). O padrão é "simples". Esse valor é ignorado para pesquisa vetorial, mas se aplica à pesquisa de texto em cenários híbridos.
"simples" interpreta cadeias de caracteres de consulta usando o de sintaxe de consulta simples que permite símbolos como + , * e "" . As consultas são avaliadas em todos os campos pesquisáveis (ou campos indicados em searchFields) em cada documento por padrão.
"full" interpreta cadeias de caracteres de consulta usando a sintaxe de consulta Lucene completa que permite pesquisas ponderadas e específicas de campo. A pesquisa de intervalo na linguagem de consulta Lucene não é suportada em favor do $filter, que oferece funcionalidade semelhante. "semântica" melhora a precisão dos resultados da pesquisa reclassificando as 50 melhores correspondências usando um modelo de classificação treinado no corpus do Bing para consultas expressas em linguagem natural em vez de palavras-chave. Se você definir o tipo de consulta como semântica, também deverá definir queryLanguage e semanticConfiguration. Opcionalmente, você pode definir respostas se quiser também retornar as 3 principais respostas se a entrada da consulta tiver sido formulada em linguagem natural ("o que é um ...), e você pode, opcionalmente, definir legendas para extrair passagens importantes dos documentos mais bem classificados. |
scoringParameter | string | Opcional. Indica os valores para cada parâmetro definido em uma função de pontuação (como referencePointParameter) usando o formato "name-value1,value2,..." Quando chamado com POST, esse parâmetro é chamado scoringParameters em vez de scoringParameter. Além disso, você o especifica como uma matriz JSON de cadeias de caracteres onde cada cadeia de caracteres é um par nome-valores separado.
Para pontuar perfis que incluam uma função, separe a função de sua lista de entrada com um caractere - . Por exemplo, uma função chamada "mylocation" seria "&scoringParameter=mylocation--122.2,44.8". O primeiro traço separa o nome da função da lista de valores, enquanto o segundo traço faz parte do primeiro valor (longitude neste exemplo).
Para parâmetros de pontuação, como o aumento de tags que pode conter vírgulas, você pode escapar de quaisquer desses valores na lista usando aspas simples. Se os próprios valores contiverem aspas simples, você pode escapar deles dobrando. Suponha que você tenha um parâmetro de aumento de tag chamado "mytag" e queira aumentar os valores de tag "Hello, O'Brien" e "Smith", a opção de string de consulta seria "&scoringParameter=mytag-'Hello, O''Brien',Smith". As aspas só são necessárias para valores que contenham vírgulas. |
scoringProfile | string | Opcional. O nome de um perfil de pontuação para avaliar as pontuações de correspondência para documentos correspondentes, a fim de classificar os resultados. |
scoringStatistics | string | Opcional. Os valores válidos são "local" ou "global". O padrão é "local". Especifique se deseja calcular as estatísticas de pontuação, como a frequência do documento, globalmente (em todos os fragmentos) para uma pontuação mais consistente ou localmente (no fragmento atual) para latência mais baixa. Consulte Estatísticas de pontuação no Azure AI Search. As estatísticas de pontuação serão sempre calculadas localmente para termos que usam pesquisa difusa ('~'). |
Pesquisar | string | Opcional. O texto a pesquisar. Esse valor é ignorado para pesquisa vetorial, mas se aplica à pesquisa de texto em cenários híbridos. Nas APIs REST, todos os campos pesquisáveis são pesquisados por padrão, a menos que searchFields seja especificado. No índice, o texto em um campo pesquisável é tokenizado, de modo que vários termos podem ser separados por espaço em branco (por exemplo: 'search=hello world'). Para corresponder a qualquer termo, use * (isso pode ser útil para consultas de filtro booleano). Omitir esse parâmetro tem o mesmo efeito que defini-lo como * . Consulte de sintaxe de consulta simples para obter detalhes sobre a sintaxe de pesquisa.
Os resultados às vezes podem ser surpreendentes ao consultar campos pesquisáveis. O tokenizador inclui lógica para lidar com casos comuns ao texto em inglês, como apóstrofos, vírgulas em números e assim por diante. Por exemplo, 'search=123,456' corresponderá a um único termo '123,456' em vez dos termos individuais '123' e '456', uma vez que vírgulas são usadas como separadores de milhares para grandes números em inglês. Por esse motivo, recomendamos o uso de espaço em branco em vez de pontuação para separar termos no parâmetro de pesquisa. |
searchMode | string | Opcional. Os valores válidos são "qualquer" ou "todos" O padrão é "qualquer". Especifica se algum ou todos os termos de pesquisa devem ser correspondidos para contar o documento como uma correspondência. |
pesquisaCampos | string | Opcional. A lista de nomes de campos separados por vírgulas para procurar o texto especificado. Os campos de destino devem ser marcados como pesquisáveis no esquema de índice e devem ser do tipo Edm.String , Edm.ComplexType ou Collection(Edm.String) . |
$select | string | Opcional. Uma lista de campos separados por vírgulas a serem incluídos no conjunto de resultados. Apenas os campos marcados como recuperáveis podem ser incluídos nesta cláusula. Se não especificado ou definido como * , todos os campos marcados como recuperáveis no esquema são incluídos na projeção. Quando chamado com POST, esse parâmetro é chamado select em vez de $select. |
semanticConfiguration (visualização) | string | Opcional. Obrigatório se queryType="semantic". O nome da configuração semântica que lista quais campos devem ser usados para classificação semântica, legendas, destaques e respostas. Para obter mais informações, consulte Criar uma consulta semântica. |
sessionId | string | Opcional. O uso do sessionId ajuda a melhorar a consistência da pontuação de relevância para serviços de pesquisa com várias réplicas. Em configurações com várias réplicas, pode haver pequenas diferenças entre pontuações de relevância de documentos individuais para a mesma consulta. Quando uma ID de sessão é fornecida, o serviço faz um esforço melhor para rotear uma determinada solicitação para a mesma réplica para essa sessão. Desconfie que a reutilização repetida dos mesmos valores de ID de sessão pode interferir no balanceamento de carga das solicitações entre réplicas e afetar negativamente o desempenho do serviço de pesquisa. O valor usado como sessionId não pode começar com um caractere '_'. Se um serviço não tiver réplicas, esse parâmetro não terá efeito sobre o desempenho ou a consistência da pontuação. |
$skip | inteiro | Opcional. O número de resultados da pesquisa a ignorar. Quando chamado com POST, esse parâmetro é chamado skip em vez de $skip. Este valor não pode ser superior a 100.000. Se você precisar digitalizar documentos em sequência, mas não puder usá$skip devido a essa limitação, considere usar $orderby em um campo que tenha valores exclusivos para cada documento no índice (como a chave do documento, por exemplo) e $filter com uma consulta de intervalo. |
ortografia (pré-visualização) | String | Opcional. Os valores válidos são "nenhum" e "léxico". O padrão é "nenhum". Melhore a recuperação corrigindo termos de consulta de pesquisa individuais. Você pode usá-lo em tipos de consulta simples, completos e semânticos. Se usado, o parâmetro speller requer queryLanguage. Para obter mais informações e exemplos, consulte Adicionar verificação ortográfica a consultas. |
$top | inteiro | Opcional. O número de resultados da pesquisa a serem recuperados. O padrão é 50. Quando chamado com POST, esse parâmetro é chamado top em vez de $top. Se você especificar um valor maior que 1000 e houver mais de 1000 resultados, somente os primeiros 1000 resultados serão retornados, juntamente com um link para a próxima página de resultados (consulte "@odata.nextLink" no exemplo abaixo).
Azure AI Search usa de paginação do lado do servidor para evitar que as consultas recuperem muitos documentos ao mesmo tempo. O tamanho de página padrão é 50, enquanto o tamanho máximo de página é 1000. Isso significa que, por padrão de Pesquisa de Documentos retornará no máximo 50 resultados se você não especificar $top. Se houver mais de 50 resultados, a resposta inclui informações para recuperar a próxima página de no máximo 50 resultados (consulte "@odata.nextLink" e "@search.nextPageParameters" no Exemplos abaixo. Da mesma forma, se você especificar um valor maior que 1000 para $top e houver mais de 1000 resultados, somente os primeiros 1000 resultados serão retornados, juntamente com informações para recuperar a próxima página de no máximo 1000 resultados. |
vetores (visualização) | matriz | Opcional. O tipo de objeto dentro da matriz é uma consulta vetorial. Os parâmetros de consulta para consultas vetoriais.
"valor" é a representação vetorial de uma consulta de pesquisa. Esta representação deve ser formada externamente. O Azure AI Search não cria incorporações. "k" é um número inteiro que especifica o número de vizinhos mais próximos a serem retornados como principais acertos. O padrão é 50. O mínimo é 1 e o máximo é 10.000. "campos" é uma lista delimitada por vírgulas que contém dados vetoriais. Apenas os campos do tipo Collection(Edm.Single) podem ser incluídos na lista de "campos". |
Resposta
Código de status: 200 OK é retornado para uma resposta bem-sucedida. Há duas respostas de exemplo neste artigo, uma para pesquisa semântica e outra para featuresMode.
Exemplo de resposta para consulta semântica
O primeiro exemplo mostra a resposta completa para o resultado mais alto para a consulta semântica "como as nuvens se formam".
"@search.answers" aparece quando você especifica o parâmetro answers e quando a consulta e os campos de destino no índice contêm conteúdo que pode ser reconhecido como uma resposta. A matriz @search.answers que tem uma chave, texto e destaques. A pontuação é um indicador da força da resposta.
"valor" é o corpo da resposta. O @search.rerankerScore é atribuído pelo algoritmo de classificação semântica e é usado para classificar os resultados (@search.score é do algoritmo de similaridade BM25, usado ao pontuar os resultados iniciais). As legendas incluem texto simples e versões realçadas. Este exemplo foi criado usando OCR e habilidades de reconhecimento de entidade. Os campos para o conteúdo extraído e mesclado são incluídos na resposta.
{
"@search.answers": [
{
"key": "aHR0cHM6Ly9oZWlkaXN0YmxvYnN0b3JhZ2UuYmxvYi5jb3JlLndpbmRvd3MubmV0L25hc2EtZWJvb2stMS01MC9wYWdlLTQ1LnBkZg2",
"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
}
],
"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."
}
],
"content": "\nA\nT\n\nM\nO\n\nS\nP\n\nH\nE\n\nR\nE\n\nE\nA\n\nR\nT\n\nH\n\n34\n\nValley Fog\nCanada\n\nFog 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",
"metadata_storage_path": "aHR0cHM6Ly9oZWlkaXN0YmxvYnN0b3JhZ2UuYmxvYi5jb3JlLndpbmRvd3MubmV0L25hc2EtZWJvb2stMS01MC9wYWdlLTQxLnBkZg2",
"people": [],
"locations": [
"Pacific Northwest",
"North America",
"Vancouver"
],
"merged_content": "\nA\nT\n\nM\nO\n\nS\nP\n\nH\nE\n\nR\nE\n\nE\nA\n\nR\nT\n\nH\n\n34\n\nValley Fog\nCanada\n\nFog 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",
"text": [],
"layoutText": []
}
]
}
Exemplo de resposta para featuresMode
Este exemplo mostra a saída "@search.features" de uma consulta que inclui featuresMode.
{
"@odata.count": # (if $count=true was provided in the query),
"@search.coverage": # (if minimumCoverage was provided in the query),
"@search.facets": { (if faceting was specified in the query)
"facet_field": [
{
"value": facet_entry_value (for non-range facets),
"from": facet_entry_value (for range facets),
"to": facet_entry_value (for range facets),
"count": number_of_documents
}
],
...
},
"@search.nextPageParameters": { (request body to fetch the next page of results if not all results could be returned in this response and Search was called with POST)
"count": ... (value from request body if present),
"facets": ... (value from request body if present),
"featuresMode" : ... (value from request body if present),
"filter": ... (value from request body if present),
"highlight": ... (value from request body if present),
"highlightPreTag": ... (value from request body if present),
"highlightPostTag": ... (value from request body if present),
"minimumCoverage": ... (value from request body if present),
"orderby": ... (value from request body if present),
"scoringParameters": ... (value from request body if present),
"scoringProfile": ... (value from request body if present),
"scoringStatistics": ... (value from request body if present),
"search": ... (value from request body if present),
"searchFields": ... (value from request body if present),
"searchMode": ... (value from request body if present),
"select": ... (value from request body if present),
"sessionId" : ... (value from request body if present),
"skip": ... (page size plus value from request body if present),
"top": ... (value from request body if present minus page size),
},
"value": [
{
"@search.score": document_score (if a text query was provided),
"@search.highlights": {
field_name: [ subset of text, ... ],
...
},
"@search.features": {
"field_name": {
"uniqueTokenMatches": feature_score,
"similarityScore": feature_score,
"termFrequency": feature_score,
},
...
},
key_field_name: document_key,
field_name: field_value (retrievable fields or specified projection),
...
},
...
],
"@odata.nextLink": (URL to fetch the next page of results if not all results could be returned in this response; Applies to both GET and POST)
}
Exemplos
Você pode encontrar mais exemplos em Sintaxe de Expressão OData para Pesquisa de IA do Azure.
Exemplo: pesquisa simples
Encontre documentos no índice usando sintaxe de consulta simples. Esta consulta retorna hotéis onde os campos pesquisáveis contêm os termos "conforto" e "localização", mas não "motel":
Get /indexes/hotels/docs?search=comfort +location –motel&searchMode=all&api-version=2021-04-30-Preview
POST /indexes/hotels/docs/search?api-version=2021-04-30-Preview
{
"search": "comfort +location -motel",
"searchMode": "all"
}
Dica
O uso de searchMode=all
substitui o padrão de searchMode=any
, garantindo que -motel
significa "E NÃO" em vez de "OU NÃO". Sem searchMode=all
, você obtém "OU NÃO", que expande em vez de restringir os resultados da pesquisa, e isso pode ser contraintuitivo para alguns usuários.
Exemplo: pesquisa completa de Lucene
Encontre documentos no índice usando a sintaxe de consulta Lucene (consulte sintaxe de consulta Lucene no Azure AI Search). Esta consulta retorna hotéis onde o campo de categoria contém o termo "orçamento" e todos os campos pesquisáveis contendo a frase "recentemente renovado". Os documentos que contêm a expressão "recentemente renovados" são classificados mais alto como resultado do termo boost value (3)
GET /indexes/hotels/docs?search=Category:budget AND \"recently renovated\"^3&searchMode=all&api-version=2021-04-30-Preview&querytype=full`
POST /indexes/hotels/docs/search?api-version=2021-04-30-Preview
{
"search": "Category:budget AND \"recently renovated\"^3",
"queryType": "full",
"searchMode": "all"
}
Exemplo: pesquisa semântica
Invoque o modelo de classificação semântica com respostas, legendas e conteúdo realçado. A resposta para esta consulta pode ser encontrada na seção anterior.
POST /indexes/hotels/docs/search?api-version=2021-04-30-Preview
{
"search": "how do clouds form",
"queryType": "semantic",
"semanticConfiguration": "my-semantic-config",
"queryLanguage": "en-us",
"answers": "extractive",
"captions": "extractive",
"count": "true"
}
Exemplo: pesquisa vetorial
Para um índice que tenha campos do tipo Collection(Edm.Single)
e uma configuração de vetor, você pode especificar parâmetros de consulta vetorial. Os parâmetros de consulta vetorial incluem os campos vetoriais que estão no escopo da consulta, o número "k" de principais acertos a serem retornados e uma representação vetorial da entrada da consulta.
Adicionar um parâmetro "select" é útil se o índice incluir campos de texto. A correspondência e a relevância são baseadas em vetores, mas os campos que contêm conteúdo legível por humanos são mais úteis para quem lê os resultados. Como alternativa, você pode escrever código que converte os dados vetoriais nos resultados da pesquisa em texto.
POST https://{{search-service-name}}.search.windows.net/indexes/{{index-name}}/docs/search?api-version={{api-version}}
Content-Type: application/json
api-key: {{admin-api-key}}
{
"search": (this parameter is ignored in vector search),
"vectors": [{
"value": [
-0.009154141,
0.018708462,
. . .
-0.02178128,
-0.00086512347
],
"fields": "contentVector",
"k": 5
}],
"select": "title, content, category"
}
Exemplo: orderby
Pesquise o índice e retorne os resultados ordenados por data em ordem decrescente.
GET /indexes/hotels/docs?search=*&$orderby=LastRenovationDate desc&api-version=2021-04-30-Preview
POST /indexes/hotels/docs/search?api-version=2021-04-30-Preview
{
"search": "*",
"orderby": "LastRenovationDate desc"
}
Exemplo: filtrar usando uma expressão OData
Recupere documentos que correspondam a uma expressão de filtro específica:
GET /indexes/hotels/docs?$filter=(Rooms/BaseRate ge 60 and Rooms/BaseRate lt 300) or HotelName eq 'Fancy Stay'&api-version=2021-04-30-Preview
POST /indexes/hotels/docs/search?api-version=2021-04-30-Preview
{
"filter": "(Rooms/BaseRate ge 60 and Rooms/BaseRate lt 300) or HotelName eq 'Fancy Stay'"
}
Exemplo: pesquisa facetada
Em uma pesquisa facetada, pesquise o índice e recupere facetas para categorias, classificações, tags, bem como itens com baseRate em intervalos específicos.
GET /indexes/hotels/docs?search=*&facet=Category&facet=Rating&facet=Tags&facet=Rooms/BaseRate,values:80|150|220&api-version=2021-04-30-Preview
POST /indexes/hotels/docs/search?api-version=2021-04-30-Preview
{
"search": "test",
"facets": [ "Category", "Rating", "Tags", "Rooms/BaseRate,values:80|150|220" ]
}
Observe que a última faceta está em um subcampo. As facetas contam o documento pai (Hotéis) e não os subdocumentos intermediários (Quartos), portanto, a resposta determinará o número de hotéis que têm quartos em cada faixa de preço.
Exemplo: restringir uma consulta facetada
Usando um filtro, restrinja o resultado da consulta facetada anterior depois que o usuário seleciona a Classificação 3 e a categoria "Motel".
GET /indexes/hotels/docs?search=*&facet=tags&facet=Rooms/BaseRate,values:80|150|220&$filter=Rating eq 3 and Category eq 'Motel'&api-version=2021-04-30-Preview
POST /indexes/hotels/docs/search?api-version=2021-04-30-Preview
{
"search": "test",
"facets": [ "tags", "Rooms/BaseRate,values:80|150|220" ],
"filter": "Rating eq 3 and Category eq 'Motel'"
}
Exemplo: pesquisa facetada com limites em cada categoria
Em uma pesquisa facetada, defina um limite superior para termos exclusivos retornados em uma consulta. O padrão é 10, mas você pode aumentar ou diminuir esse valor usando o parâmetro count no atributo facet. Este exemplo retorna facetas para cidade, limitado a 5.
GET /indexes/hotels/docs?search=*&facet=Address/City,count:5&api-version=2021-04-30-Preview
POST /indexes/hotels/docs/search?api-version=2021-04-30-Preview
{
"search": "test",
"facets": [ "Address/City,count:5" ]
}
Exemplo: de pesquisa em campo
Pesquisar o índice em campos específicos (por exemplo, um campo de idioma)
GET /indexes/hotels/docs?search=hôtel&searchFields=Description_fr&api-version=2021-04-30-Preview
POST /indexes/hotels/docs/search?api-version=2021-04-30-Preview
{
"search": "hôtel",
"searchFields": "Description_fr"
}
Pesquise o índice em vários campos. Por exemplo, você pode armazenar e consultar campos pesquisáveis em vários idiomas, todos dentro do mesmo índice. Se as descrições em inglês e francês coexistirem no mesmo documento, você poderá retornar qualquer uma ou todas nos resultados da consulta:
GET /indexes/hotels/docs?search=hotel&searchFields=Description,Description_fr&api-version=2021-04-30-Preview
POST /indexes/hotels/docs/search?api-version=2021-04-30-Preview
{
"search": "hotel",
"searchFields": "Description, Description_fr"
}
Só é possível consultar um índice de cada vez. Não crie vários índices para cada idioma, a menos que você planeje consultar um de cada vez.
Exemplo: resultados de paginação
Obtenha a primeira página de itens (o tamanho da página é 10):
GET /indexes/hotels/docs?search=*&$skip=0&$top=10&api-version=2021-04-30-Preview
POST /indexes/hotels/docs/search?api-version=2021-04-30-Preview
{
"search": "*",
"skip": 0,
"top": 10
}
Obtenha a segunda página de itens (o tamanho da página é 10):
GET /indexes/hotels/docs?search=*&$skip=10&$top=10&api-version=2021-04-30-Preview
POST /indexes/hotels/docs/search?api-version=2021-04-30-Preview
{
"search": "*",
"skip": 10,
"top": 10
}
Exemplo: limitar campos em um conjunto de resultados
Recupere um conjunto específico de campos:
GET /indexes/hotels/docs?search=*&$select=HotelName,Description&api-version=2021-04-30-Preview
POST /indexes/hotels/docs/search?api-version=2021-04-30-Preview
{
"search": "*",
"select": "HotelName, Description"
}
Exemplo: realce de hit nos resultados
Pesquise o índice e retorne fragmentos com destaques de acertos:
GET /indexes/hotels/docs?search=something&highlight=Description&api-version=2021-04-30-Preview
POST /indexes/hotels/docs/search?api-version=2021-04-30-Preview
{
"search": "something",
"highlight": "Description"
}
Exemplo: Pesquisa geoespacial
Pesquise o índice e retorne documentos classificados de mais perto para mais longe de um local de referência:
GET /indexes/hotels/docs?search=something&$orderby=geo.distance(Location, geography'POINT(-122.12315 47.88121)')&api-version=2021-04-30-Preview
POST /indexes/hotels/docs/search?api-version=2021-04-30-Preview
{
"search": "something",
"orderby": "geo.distance(Location, geography'POINT(-122.12315 47.88121)')"
}
Exemplo: "encontrar por mim" (aumentar a relevância de locais próximos
Pesquise o índice assumindo que há um perfil de pontuação chamado "geo" com duas funções de pontuação de distância, uma definindo um parâmetro chamado "currentLocation" e outra definindo um parâmetro chamado "lastLocation". No exemplo a seguir, "currentLocation" tem um delimitador de um único traço (-
). É seguido pelas coordenadas de longitude e latitude, onde longitude é um valor negativo.
GET /indexes/hotels/docs?search=something&scoringProfile=geo&scoringParameter=currentLocation--122.123,44.77233&scoringParameter=lastLocation--121.499,44.2113&api-version=2021-04-30-Preview
POST /indexes/hotels/docs/search?api-version=2021-04-30-Preview
{
"search": "something",
"scoringProfile": "geo",
"scoringParameters": [ "currentLocation--122.123,44.77233", "lastLocation--121.499,44.2113" ]
}
Exemplo: consulta sobre índice completo em vez de fragmentos
Encontre documentos no índice, favorecendo a pontuação consistente em detrimento da latência mais baixa. Essa consulta calcula as frequências do documento em todo o índice e faz um esforço melhor para direcionar a mesma réplica para todas as consultas dentro da mesma "sessão", o que ajuda a gerar uma classificação estável e reproduzível.
GET /indexes/hotels/docs?search=hotel&sessionId=mySessionId&scoringStatistics=global&api-version=2021-04-30-Preview
POST /indexes/hotels/docs/search?api-version=2021-04-30-Preview
{
"search": "hotel",
"sessionId": "mySessionId",
"scoringStatistics" :"global"
}
Exemplo: estatísticas de pontuação (featuresMode)
Encontre documentos no índice e retorne uma lista de recursos de recuperação de informações para cada resultado, descrevendo a pontuação entre o documento correspondente e a consulta. A consulta também calcula as frequências do documento em todo o índice para produzir uma pontuação mais consistente.
GET /indexes/hotels/docs?search=hotel&featuresMode=enabled&scoringStatistics=global&api-version=2021-04-30-Preview
POST /indexes/hotels/docs/search?api-version=2021-04-30-Preview
{
"search": "hotel",
"featuresMode": "enabled",
"scoringStatistics" :"global"
}
Um exemplo de uma resposta que inclui search.features
é semelhante à seguinte:
"@search.score": 0.91875637,
"@search.features": {
"Description": {
"uniqueTokenMatches": 1,
"similarityScore": 0.2917966,
"termFrequency": 2
},
"HotelName": {
"uniqueTokenMatches": 1,
"similarityScore": 0.44458693,
"termFrequency": 1
}
. . .
Definições
Esta seção fornece detalhes sobre parâmetros que são muito complexos para cobrir na tabela principal.
Ligação | Descrição |
---|---|
queryLanguage | Lista dos idiomas suportados para pesquisa ortográfica e semântica. |
queryLanguage
Os valores válidos para o parâmetro queryLanguage são fornecidos na tabela a seguir, na coluna "queryLanguage", e não diferenciam maiúsculas de minúsculas. O padrão para o parâmetro como um todo é "en-us". Dentro de cada idioma, há uma variante padrão para cada código de idioma de dois caracteres. Por exemplo, se você especificar "es", "es-us" será usado por padrão. O parâmetro queryLanguage é necessário para uma solicitação de consulta que inclui "queryType=semantic" ou "speller=lexicon". Há apenas um valor queryLanguage para toda a solicitação, e esse valor será usado para classificação semântica, legendas, respostas e ortografia (não há substituição para recursos individuais).
No momento, o suporte a idiomas varia de acordo com o recurso. Apenas inglês, espanhol, francês e alemão são suportados para o conjunto completo de recursos, mas observe que a verificação ortográfica implementa menos variantes.
Se você especificar um código de idioma que não é suportado por um determinado recurso, como EN-GB com ortografia, o serviço retornará HTTP 400.
Para obter mais informações sobre como usar cada recurso, consulte Habilitar classificação semântica e legendas, Retornar uma resposta semânticae Adicionar verificação ortográfica a consultas.
A designação "(visualização)" indica que o teste de validação em todos os recursos (classificação semântica, legendas, respostas e verificação ortográfica) está em andamento ou pendente. Incentivamos o uso de todas as variantes de idioma na tabela a seguir, mas recomendamos mais testes de idiomas de visualização para garantir que os resultados sejam válidos para o seu conteúdo. As línguas com uma marca de verificação e sem designação de pré-visualização foram validadas utilizando conjuntos de dados equivalentes, com ganhos mensuráveis em termos de relevância.
Idioma | queryLanguage | Classificador semântico e legendas | Resposta semântica | Ortografia |
---|---|---|---|---|
Português [en ] |
en, en-US (padrão), en-GB , en-IN , en-CA , en-AU |
✔️ | ✔️ | ✔️ (en, en-US ) |
Francês [fr ] |
fr , fr-FR (padrão), fr-CA |
✔️ | ✔️ | ✔️ (fr, fr-FR ) |
Alemão [de ] |
de, de-DE (padrão) |
✔️ | ✔️ | ✔️ (de, de-DE ) |
Espanhol [es ] |
es, es-ES (padrão), es-MX |
✔️ | ✔️ | ✔️ (es, es-ES ) |
Italiano [it ] |
it, it-IT (padrão) |
✔️ | ✔️ | |
Japonês [ja ] |
ja, ja-JP (padrão) |
✔️ | ✔️ (pré-visualização) | |
Chinês [zh ] |
zh, zh-CN (padrão), zh-TW |
✔️ | ✔️ (pré-visualização) | |
Português [pt ] |
pt, pt-BR (padrão), pt-PT |
✔️ | ✔️ (pré-visualização) | |
Holandês [nl ] |
nl, nl-BE, nl-NL (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | ✔️ (nl, nl-NL ) |
Árabe [ar ] |
ar, ar-SA (padrão), ar-EG, ar-MA, ar-KW, ar-JO |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Arménio |
hy-AM (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Bangla |
bn-IN (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Basco |
eu-ES (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Búlgaro [bg ] |
bg, bg-BG (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Catalão [ca ] |
ca, ca-ES (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Croata [hr ] |
hr, hr-HR (padrão), hr-BA |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Checo [cs ] |
cs, cs-CZ (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Dinamarquês [da ] |
da, da-DK (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Estónio [et ] |
et, et-EE (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Finlandês [fi ] |
fi, fi-FI (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Galego |
gl-ES (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Grego [el ] |
el, el-GR (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Guzerate |
gu-IN (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Hebraico |
he-IL (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Hindi [hi ] |
hi, hi-IN (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Húngaro [hu ] |
hu, hu-HU (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Islandês [is ] |
is, is-IS (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Indonésio [id ] |
id, id-ID (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Irlandês |
ga-IE (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Canarês |
kn-IN (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Coreano [ko ] |
ko, ko-KR (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Letão [lv ] |
lv, lv-LV (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Lituano [lt ] |
lt, lt-LT (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Malaiala |
ml-IN (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Malaio [ms ] |
ms, ms-MY (padrão), ms-BN |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Marata |
mr-IN (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Norueguês [no ] |
não, no-NO (padrão), nb-NO | ✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Persa |
fa-AE (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Polaco [pl ] |
pl, pl-PL (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Punjabi |
pa-IN (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Romeno [ro ] |
ro, ro-RO (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Russo [ru ] |
ru, ru-RU (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Sérvio [sr ] (cirílico ou latino) |
sr, sr-BA (padrão), sr-ME, sr-RS |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Eslovaco [sk ] |
sk, sk-SK (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Esloveno [sl ] |
sl, sl-SL (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Tâmil [ta ] |
ta, ta-IN (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Sueco [sv ] |
sv, sv-SE (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Telugu |
te-IN (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Tailandês [th ] |
th, th-TH (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Turco [tr ] |
tr, tr-TR (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Ucraniano [uk ] |
uk, uk-UA (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Urdu |
ur-PK (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) | |
Vietnamita [va ] |
va, vi-VN (padrão) |
✔️ (pré-visualização) | ✔️ (pré-visualização) |
Ver também
- Criando consultas no Azure AI Search
- consultas no de Pesquisa de IA do Azure
- Como funciona a pesquisa de texto completo no Azure AI Search
- Sintaxe de Expressão OData para o de Pesquisa do Azure
- Sintaxe de consulta simples no Azure AI Search