getPagesByVectorSearch
Busca semântica (vetorial) para páginas.
Descrição
Este método realiza uma busca semântica (vetorial) para páginas a partir de uma consulta em linguagem natural - ele corresponde ao significado em vez de palavras-chave exatas. Ele retorna uma Promise que resolve para um objeto IPagesResponse - um contêiner com items (as páginas) e total - não um array simples.
.getPagesByVectorSearch(
,
,
,
);
Esquema de parâmetros
Esquema
body(obrigatório): IPagesVectorSearch
Corpo da busca vetorial
exemplo:
{ queryText: "winter sale" }
body.queryText(obrigatório): string
Consulta de busca em linguagem natural.
exemplo: "promoção de inverno"
body.vectorDistanceThreshold: number
Substituição do limite de distância do cosseno (0..2).
exemplo: 0.3
body.maxHits: number
Candidatos Top-K buscados antes da paginação. Padrão: 100. Máx: 500.
exemplo: 10
body.debug: boolean
Quando verdadeiro, cada item retornado recebe um campo distance.
exemplo: false
langCode: string
Códigos de idioma. Padrão: "en_US"
exemplo: "en_US"
offset: number
Parâmetro para paginação. Padrão: 0
exemplo: 0
limit: number
Parâmetro para paginação. Padrão: 30
exemplo: 30
Exemplos
Exemplo mínimo
const response = await Pages.getPagesByVectorSearch({ queryText: 'winter sale' });
Exemplo com atributos
const response = await Pages.getPagesByVectorSearch(
{
queryText: 'winter sale',
vectorDistanceThreshold: 0.3,
maxHits: 50,
debug: true,
},
'en_US',
0,
30,
);
Exemplo de resposta
{
"items": [],
"total": 0
}
Esquema de resposta
Esquema: IPagesResponse
items: IPagesEntity[]
Array de objetos de página encontrados.
items.id: number
O identificador do objeto.
exemplo: 8
items.parentId: number | null
O id da página pai, se contiver null, então é a página de nível superior.
exemplo: 10
items.pageUrl: string
Url única da página.
exemplo: "blog"
items.depth: number
Profundidade de aninhamento da página em relação ao parentId.
exemplo: 10
items.localizeInfos: ILocalizeInfo
O nome da página, levando em conta a localização.
exemplo:
{
"title": "Blog",
"menuTitle": "Blog",
"htmlContent": "",
"plainContent": ""
}
items.isVisible: boolean
Um sinal de visibilidade da página.
exemplo: true
items.type: PageType
Tipo de página.
exemplo: "common_page"
items.templateIdentifier: string | null
Id do usuário do template vinculado.
exemplo: "template"
items.attributeSetIdentifier: string | null
Id do conjunto de atributos.
exemplo: "page"
items.attributeValues: IAttributeValues
Mapa de valores de atributos indexados por marcador; objeto vazio quando nenhum.
exemplo:
{
"text": {
"type": "string",
"value": "some text",
"position": 0,
"additionalFields": []
}
}
items.isSync: boolean
Indicação de indexação da página.
exemplo: true
items.template: object
Objeto template.
exemplo:
{}
items.position: number
Número do item (para ordenação).
exemplo: 2
items.config: Record<string, number>
Configurações de saída para páginas de catálogo.
exemplo:
{
"rowsPerPage": 1,
"productsPerRow": 1
}
items.products: number
O número de produtos vinculados à página.
exemplo: 0
items.childrenCount: number
Contagem de filhos.
exemplo: 1
items.blocks: IBlockEntity[] | string[]
blocos.
exemplo:
{
"id": 4,
"attributeSetIdentifier": null,
"title": "Template",
"generalTypeId": 4,
"identifier": "template",
"version": 0,
"generalTypeName": "catalog_page",
"attributeValues": {},
"position": 1
}
items.moduleFormConfigs: Array<IFormConfig>
Configurações de formulário do módulo vinculadas à página.
items.rating: IRating
Dados de avaliação.
items.total: string
Número total de produtos vinculados à página.
exemplo: "10"
items.categoryPath: string | null
String do caminho da categoria; null para páginas aninhadas que não têm seu próprio caminho de categoria.
exemplo: "catalog"
items.distance: number
Distância cosseno em relação à consulta. Retornado apenas pelo endpoint de busca semântica (vetorial) quando debug: true é passado no corpo da busca.
exemplo: 0.12
total: number
Número total de registros encontrados.
exemplo: 100
ℹ️ A busca semântica corresponde ao significado, não ao texto literal. Para correspondência de palavras-chave em todos os tipos de entidades de uma vez, use globalSearch().