Quando pesquisa na sua app Vertex AI Search, pode especificar filtros de relevância ao nível do documento para que apenas os documentos que cumprem o limite do filtro sejam devolvidos como resultados. Esta página explica os tipos de limiar, a importância de otimizar o limiar e como especificar filtros de relevância e o respetivo limiar.
Acerca da filtragem por relevância ao nível do documento
Quando uma consulta de pesquisa devolve um resultado, atribui um nível de relevância a cada documento obtido. No pedido de pesquisa, pode definir um limite para devolver apenas os documentos que atingem o limite do filtro. A definição de um limite elevado pode reduzir o número de documentos devolvidos pela consulta. Por outro lado, definir um limite baixo pode diluir os resultados com documentos que têm pouca relevância para a consulta do utilizador.
Assim, se verificar que o resultado contém demasiados documentos de relevância insuficiente para os seus utilizadores, defina um limite de relevância elevado para restringir os resultados apenas aos poucos que são mais relevantes. Se um limite elevado for demasiado restritivo, pode reduzi-lo para um valor mais ideal.
Tipos de pesquisas
Pode aplicar filtros de relevância aos seguintes tipos de pesquisas:
- Pesquisa de palavras-chave: obtém documentos com base na pesquisa de palavras-chave.
- Pesquisa de semelhança semântica: obtém documentos com base em incorporações.
Na definição do filtro de relevância, pode especificar o tipo de limite para cada uma destas pesquisas. A pesquisa obtém os documentos para a pesquisa fornecida e, em seguida, aplica o limite especificado.
Tipos de limite
Pode especificar um dos seguintes tipos de limite para a pesquisa de palavras-chave e semelhança semântica quando envia o seu pedido de pesquisa.
Limite de relevância: quando define este limite, a pesquisa usa um modelo proprietário para determinar a relevância de um documento. Neste caso, a pesquisa pode usar qualquer sinal pertinente, como a pontuação de semelhança das palavras-chave, a pontuação de relevância do tópico e a pontuação de semelhança semântica.
O limite de relevância é uma definição detalhada que permite os seguintes valores:
HIGH,MEDIUM,LOWeLOWEST. Um limite deHIGHpode devolver menos documentos com uma pontuação de relevância elevada, enquanto o limite deLOWESTpode devolver mais documentos que podem não ser relevantes para a consulta de pesquisa.Limite de relevância semântica: quando define este limite, o filtro baseia-se exclusivamente na pontuação de semelhança semântica para determinar a relevância de um documento.
O limite de relevância semântica é uma definição detalhada e é um valor de vírgula flutuante no intervalo [0,1]. A definição do limite como zero devolve todos os documentos, enquanto a definição do limite como um devolve os documentos mais relevantes.
Definição e exemplo do filtro de relevância
Para definir filtros de relevância no seu pedido de pesquisa, especifique apenas um tipo de limite (limite de relevância e limite de relevância semântica) para cada tipo de pesquisa (pesquisa de palavras-chave e pesquisa semântica). Pode especificar um ou ambos os tipos de pesquisa na especificação do filtro de relevância. No entanto, tem de existir apenas um tipo de limite definido em cada tipo de pesquisa. Por exemplo, considere o seguinte:
{
"relevanceFilterSpec": {
"keywordSearchThreshold": {
"relevanceThreshold": "LOW"
},
"semanticSearchThreshold": {
"semanticRelevanceThreshold": 0.871
}
}
}
Neste pedido de pesquisa, os resultados são devolvidos em duas fases: obtenção e filtragem.
- A pesquisa obtém os documentos de acordo com a correspondência de palavras-chave e, em seguida, filtra os documentos com um limite de relevância baixo. Isto devolve um grande número de documentos obtidos.
- Em simultâneo, a pesquisa obtém os documentos de acordo com a similaridade semântica e, em seguida, filtra os documentos com um limite de relevância semântica elevado de
0.871. Isto devolve menos documentos obtidos.
A ênfase da pesquisa é mais na correspondência de palavras-chave do que na semelhança semântica. Os filtros permitem mais documentos que são obtidos devido à correspondência de palavras-chave.
Da mesma forma, pode definir o filtro de relevância da seguinte forma para devolver menos documentos com palavras-chave correspondentes e mais documentos com semelhança semântica.
"relevanceFilterSpec": {
"keywordSearchThreshold": {
"semanticRelevanceThreshold": 0.871
},
"semanticSearchThreshold": {
"relevanceThreshold": "LOW"
}
}
Tipos de dados e apps suportados para o filtro de relevância ao nível do documento
O filtro de relevância ao nível do documento pode ser aplicado a arquivos de dados com os seguintes tipos de dados:
- Dados de Websites com indexação avançada de Websites
- Dados não estruturados personalizados
- Dados estruturados personalizados
O filtro de relevância ao nível do documento não funciona para arquivos de dados com indexação básica de Websites, dados de multimédia ou dados de cuidados de saúde.
Além disso, não é possível usar o filtro de relevância ao nível do documento com apps de pesquisa combinada. As apps de pesquisa mista são apps associadas a várias bases de dados.
Outros tipos de filtros
O filtro de relevância ao nível do documento não é a única forma de filtrar os dados devolvidos pelas consultas. Também pode usar expressões de filtro para filtrar os resultados com base nos metadados (na indexação avançada de Websites e nos repositórios de dados não estruturados com metadados) e nos valores dos campos (nos repositórios de dados estruturados).
Para mais informações, consulte:
Se usar uma expressão de filtro e o filtro de relevância ao nível do documento, a expressão de filtro é aplicada primeiro aos resultados e, em seguida, é aplicado o filtro de relevância ao nível do documento.
Antes de começar
Certifique-se de que criou uma app e um repositório de dados e que carregou dados para o repositório de dados. Para mais informações, consulte o artigo Crie uma app de pesquisa. Consulte também o artigo Tipos de dados e apps suportados para o filtro de relevância ao nível do documento.
Pesquise e filtre resultados por relevância ao nível do documento
Para filtrar por relevância, siga estes passos:
Encontre o ID da app. Se já tiver o ID da app, avance para o passo seguinte.
Na Google Cloud consola, aceda à página Aplicações de IA.
Na página Apps, encontre o nome da sua app e obtenha o ID da app na coluna ID.
Para filtrar a pesquisa por relevância ao nível do documento, especifique o campo
relevanceFilterSpecque define apenas um tipo de limite para cada tipo de pesquisa através do métodoengines.servingConfigs.search. Ou seja, pode especificarrelevanceThresholdousemanticRelevanceThresholdpara um determinado tipo de pesquisa.curl -X POST -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/servingConfigs/default_search:search" \ -d '{ "servingConfig": "projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/servingConfigs/default_search", "query": "QUERY", "relevanceFilterSpec": { "keywordSearchThreshold": { "relevanceThreshold": "RELEVANCE_THRESHOLD" }, "semanticSearchThreshold": { "semanticRelevanceThreshold": SEMANTIC_RELEVANCE_THRESHOLD } } }'Substitua o seguinte:
PROJECT_ID: o ID do seu projeto Google Cloud .APP_ID: o ID da app Vertex AI Search que quer consultar.QUERY: o texto da consulta a pesquisar.RELEVANCE_THRESHOLD: um dos seguintes:HIGH,MEDIUM,LOW,LOWEST.SEMANTIC_RELEVANCE_THRESHOLD: um valor de vírgula flutuante no intervalo [0,1].
Teste várias consultas com limites diferentes para determinar as melhores definições de limite para os seus dados e aplicação.