getUsersByVectorSearch
Busca semântica (vetorial) por usuários. 🔐 Este método requer autorização.
Descrição
Este método realiza uma busca semântica (vetorial) por usuários 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 IUsersResponse - um contêiner com items (os usuários) e total.
Users.getUsersByVectorSearch(
body*,
langCode,
offset,
limit
);
Esquema de parâmetros
Esquema
body(obrigatório): IUsersVectorSearch
Corpo da busca vetorial
exemplo:
{ queryText: "john" }
body.queryText(obrigatório): string
Consulta de busca em linguagem natural.
exemplo: "john"
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ódigodo 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 Users.getUsersByVectorSearch({ queryText: 'john' });
Exemplo com atributos
const response = await Users.getUsersByVectorSearch(
{
queryText: 'john',
vectorDistanceThreshold: 0.3,
maxHits: 50,
debug: true,
},
'en_US',
0,
30,
);
Exemplo de resposta
{
"items": [
{
"id": 8,
"total": "1",
"identifier": "test@test.ru",
"authProviderIdentifier": "email",
"formData": [
{
"marker": "name_reg",
"type": "string",
"value": "Ivan"
},
{
"marker": "phone_reg",
"type": "string",
"value": "+19258382556"
}
],
"formIdentifier": "reg",
"groups": [
1
],
"state": {},
"rating": {},
"moduleFormConfigs": []
}
],
"total": 1
}
Esquema de resposta
Esquema: IUsersResponse
items: IUserEntity[]
Array de objetos de usuário encontrados.
items.id: number
Identificador do objeto.
exemplo: 12345
items.identifier: string
Identificador de texto para o campo de registro.
exemplo: "user_12345"
items.authProviderIdentifier: string
Identificador de texto do provedor de autenticação.
exemplo: "auth_provider_12345"
items.formData: FormDataType[]
Array de objetos de dados de formulário com os seguintes valores.
exemplo:
[
{
"marker": "last_name",
"type": "string",
"value": "Username"
}
]
items.formIdentifier: string
Identificador de texto do formulário.
exemplo: "form_12345"
items.total: string
Valor total.
exemplo: "0"
items.groups: Array<string | number>
Array de grupos de usuários.
exemplo:
[
"group_1",
"group_2"
]
items.state: object
Objeto contendo informações adicionais sobre o estado do usuário.
exemplo:
{
"key": "value"
}
items.moduleFormConfigs: Array<IFormConfig>
Array opcional de objetos de configuração de formulário associados ao usuário.
items.rating: IRating
Dados de avaliação.
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().