Configuração de pesquisa
A configuração de pesquisa pode modificar os critérios de pesquisa e o comportamento dos filtros de pesquisa. Temos os seguintes quatro exemplos de utilização para a configuração de pesquisa.
Disponibilidade:
- Streaming Video Warehouse: todos os exemplos de utilização seguintes estão ativados.
- Batch Video Warehouse: o critério de pesquisa está ativado, mas o aspeto de pesquisa não está ativado.
- Image Warehouse: a configuração de pesquisa não está disponível.
Exemplo de utilização 1: critérios de um para muitos
Os utilizadores podem criar critérios de pesquisa personalizados que são mapeados para vários esquemas de dados existentes. Por exemplo, a seguinte configuração de pesquisa cria um critério de pesquisa personalizado, "pessoa". Quando os utilizadores pesquisam de acordo com o critério "pessoa", como pesquisar "João" de acordo com o critério "pessoa", o nosso serviço expande o critério "pessoa" para "jogador", "treinador" e "líder de claque" e, em seguida, pesquisa de acordo com todos estes esquemas de dados. Por outras palavras, quer "Mike" esteja anotado como "jogador", "treinador" ou "líder de claque", são devolvidos resultados relacionados.
{
name: "projects/$PROJECT_NUMBER/locations/$LOCATION_ID/corpora/$CORPUS_ID/searchConfigs/person"
search_criteria_property {
mapped_fields: "player"
mapped_fields: "coach"
mapped_fields: "cheerleader"
}
}
Exemplo de utilização 2: faceta individual
Os utilizadores podem ativar a faceta de pesquisa para um esquema de dados existente criando uma configuração de pesquisa no mesmo. Por exemplo, a seguinte configuração de pesquisa ativa o aspeto de pesquisa para a localização. Quando os utilizadores pesquisam por "localização", podem agora selecionar valores de categorias por "localização", como "Tóquio" ou "Londres", para restringir ainda mais os resultados da pesquisa.
Tenha em atenção que o ID da configuração de pesquisa, facet_property.mapped_field e o ID do esquema de dados têm de ser a mesma string, neste caso, "location".
{
name: "projects/$PROJECT_NUMBER/locations/$LOCATION_ID/corpora/$CORPUS_ID/searchConfigs/location"
facet_property {
mapped_fields: "location",
display_name: "A customized name for UI",
result_size: 5,
bucket_type: FACET_BUCKET_TYPE_VALUE
}
}
Exemplo de utilização 3: critérios e faceta de um para muitos
Os utilizadores podem criar critérios de pesquisa personalizados e também ativar a faceta de pesquisa ao mesmo tempo. Por exemplo, a seguinte configuração de pesquisa cria critérios de pesquisa personalizados que mapeiam "location" para "city", "state" e "province". Entretanto, o filtro de pesquisa está ativado. Todos os valores de agrupamento de "city", "state" e "province" são devolvidos em conjunto.
Tenha em atenção que, neste caso, os mapped_fields de search_criteria_property e facet_property têm de ser idênticos. Além disso, deve ser o ID do esquema de dados existente.
{
name: "projects/$PROJECT_NUMBER/locations/$LOCATION_ID/corpora/$CORPUS_ID/searchConfigs/location"
search_criteria_property {
mapped_fields: "city"
mapped_fields: "state"
mapped_fields: "province"
}
facet_property {
mapped_fields: "city"
mapped_fields: "state"
mapped_fields: "province"
display_name: "places"
result_size: 5,
bucket_type: FACET_BUCKET_TYPE_VALUE
}
}
Exemplo de utilização 4: faceta baseada no intervalo
Para os exemplos de utilização 2 e 3, podemos alterar o tipo de grupo de uma faceta para ser baseado em intervalos. As facetas baseadas em intervalos são semelhantes às facetas normais, mas cada intervalo de facetas abrange um período contínuo. É necessária uma definição adicional para configurar o intervalo contínuo.
As facetas de intervalo estão disponíveis para:
- Números inteiros
- Datas
Existem três tipos de facetas de intervalo:
- Intervalo fixo: cada grupo tem o mesmo tamanho.
- Intervalo personalizado: tamanhos de contentores programáveis, por exemplo, logarítmicos.
- Intervalo de datas: níveis de detalhe de agrupamento fixos de DIA, MÊS e ANO (aplicável apenas para facetas de intervalo de datas).
A seguinte configuração de pesquisa ativa o aspeto de pesquisa no critério de pesquisa "inventory-count" e os grupos de aspetos serão [-inf, 0), [0, 10), [10, 20), [20, 30), [30, inf).
{
name: "projects/$PROJECT_NUMBER/locations/$LOCATION_ID/corpora/$CORPUS_ID/searchConfigs/inventory-count"
facet_property {
mapped_fields: "inventory-count"
display_name: "Inventory Count"
result_size: 5
bucket_type:FACET_BUCKET_TYPE_FIXED_RANGE
fixed_range_bucket_spec {
bucket_start {
integer_value: 0
}
bucket_granularity {
integer_value: 10
}
bucket_count: 5
}
}
}
A seguinte configuração de pesquisa ativa a faceta de pesquisa nos critérios de pesquisa "film-date" com uma granularidade de DIA.
{
name: "projects/$PROJECT_NUMBER/locations/$LOCATION_ID/corpora/$CORPUS_ID/searchConfigs/film-date"
facet_property {
mapped_fields: "film-date"
display_name: "Film Date"
result_size: 5
bucket_type: FACET_BUCKET_TYPE_DATETIME
datetime_bucket_spec {
granularity: DAY
}
}
}
Hiperónimo de pesquisa
O hiperónimo de pesquisa pode modificar a forma como as consultas de pesquisa correspondem às anotações de strings de pesquisa inteligentes.
Disponibilidade:
- Streaming Warehouse: a pesquisa de hiperónimos está ativada para a consulta de pesquisa global e a consulta de string de critérios de pesquisa inteligente.
- VoD Warehouse: a pesquisa de hiperónimos está ativada para a string de critérios de pesquisa inteligente query.
- Image Warehouse: o hiperónimo de pesquisa não está disponível.
Um hiperónimo de pesquisa mapeia um hiperónimo para vários hipónimos. Por exemplo, o hiperónimo de pesquisa seguinte mapeia "veículo" para "sedan", "caminhão" e "SUV". A pesquisa de "veículo" numa consulta de pesquisa global ou nos critérios de string de pesquisa inteligente também vai corresponder a resultados anotados com "sedan", "caminhão" e "SUV", bem como "veículo".
{
name: "projects/$PROJECT_NUMBER/locations/$LOCATION_ID/corpora/$CORPUS_ID/searchHypernyms/car-hypernym"
hypernym: "vehicle"
hyponyms: "sedan"
hyponyms: "truck"
hyponyms: "suv"
}