Partilhar via


moreLikeThis (visualização) na Pesquisa de IA do Azure

Importante

Esta funcionalidade está em pré-visualização pública em Termos de Utilização Suplementares. A API REST de visualização suporta esse recurso.

moreLikeThis=[key] é um parâmetro de consulta na API de Pesquisa de Documentos que localiza documentos semelhantes ao documento especificado pela chave do documento. Quando uma solicitação de pesquisa é feita com moreLikeThiso , uma consulta é gerada com termos de pesquisa extraídos do documento fornecido que descrevem melhor esse documento. A consulta gerada é então usada para fazer a solicitação de pesquisa. O moreLikeThis parâmetro não pode ser usado com o parâmetro search, search=[string].

Por padrão, o conteúdo de todos os campos pesquisáveis de nível superior é considerado. Se você quiser especificar campos específicos, você pode usar o searchFields parâmetro.

O moreLikeThis parâmetro não é suportado para tipos complexos e a presença de tipos complexos afetará sua lógica de consulta. Se o índice for um tipo complexo, você deverá definir searchFields os campos pesquisáveis de nível superior sobre os quais moreLikeThis itera. Por exemplo, se o índice tiver um tipo pesquisável field1 , e field2 esse for um tipo complexo com subcampos pesquisáveis, o valor de searchFields deve ser definido como field1 excluir field2.Edm.String

Exemplos

Todos os exemplos a seguir usam o exemplo de hotéis do Guia de início rápido: criar um índice de pesquisa no portal do Azure.

Consulta simples

A consulta a seguir localiza documentos cujos campos de descrição são mais semelhantes ao campo do documento de origem, conforme especificado pelo moreLikeThis parâmetro:

GET /indexes/hotels-sample-index/docs?moreLikeThis=29&searchFields=Description&api-version=2024-05-01-preview

Neste exemplo, a solicitação procura hotéis semelhantes ao com HotelId 29. Em vez de usar HTTP GET, você também pode invocar MoreLikeThis usando HTTP POST:

POST /indexes/hotels-sample-index/docs/search?api-version=2024-05-01-preview
    {
      "moreLikeThis": "29",
      "searchFields": "Description"
    }

Aplicar filtros

MoreLikeThis pode ser combinado com outros parâmetros de consulta comuns, como $filter. Por exemplo, a consulta pode ser restrita apenas a hotéis cuja categoria é "Orçamento" e cuja classificação é superior a 3,5:

GET /indexes/hotels-sample-index/docs?moreLikeThis=20&searchFields=Description&$filter=(Category eq 'Budget' and Rating gt 3.5)&api-version=2024-05-01-preview

Selecionar campos e limitar resultados

O $top seletor pode ser usado para limitar quantos resultados devem ser retornados em uma MoreLikeThis consulta. Além disso, os campos podem ser selecionados com $select. Aqui os três melhores hotéis são selecionados juntamente com sua identificação, nome e classificação:

GET /indexes/hotels-sample-index/docs?moreLikeThis=20&searchFields=Description&$filter=(Category eq 'Budget' and Rating gt 3.5)&$top=3&$select=HotelId,HotelName,Rating&api-version=2024-05-01-preview

Próximos passos

Você pode usar qualquer cliente REST para este exercício.