Modelo de dados de segmento manual e comportamento de sincronização

  • Versão de lançamento: Australia
  • Atualizado 16 de abr. de 2026
  • 3 min. de leitura
  • Os segmentos manuais usam um modelo de dados de duas tabelas com sincronização automática entre a tabela de configuração e a tabela de tempo de execução usada para operações de pesquisa.

    Visão geral do modelo de dados

    Os segmentos manuais usam uma arquitetura de duas tabelas que separa a configuração dos dados de tempo de execução. Esse design garante que a tabela de configuração permaneça a única fonte da verdade enquanto a tabela de tempo de execução é otimizada para desempenho de pesquisa.

    tabela de configuração: sn_query_gen_segment_table_config
    É aqui que você define segmentos manuais. Cada registro representa uma configuração de segmento que os administradores criam e mantêm.
    Tabela sincronizada: sn_query_gen_segment
    Você não grava nesta tabela diretamente. Quando uma configuração de segmento manual é criada ou atualizada, uma regra de negócios a sincroniza automaticamente nesta tabela, que é consultada no momento da pesquisa.

    Campos da tabela de configuração

    . sn_query_gen_segment_table_ a tabela de configuração contém os seguintes campos para definir segmentos manuais:

    Tabela 1. Campos da tabela de configuração de segmento manual
    Campo Nome da Coluna Comprimento máximo Necessários Finalidade
    Nome da tabela table_name Sim A tabela (entidade) à qual o segmento se aplica. Deve ter uma entidade ativa na camada semântica.
    Nome name 255 caracteres Sim Nome amigável ao qual o LLM corresponde durante a pesquisa semântica.
    Descrição description 4 000 caracteres Não Esclarecimento opcional usando termos comumente usados. Ajuda o LLM a entender quando aplicar o segmento.
    Filtro filter 4 000 caracteres Sim Consulta codificada que define as condições de filtro do segmento. Usa o construtor de condições (v2).
    Ativo active Não O padrão é verdadeiro . Quando falso , o segmento está desativado e excluído da pesquisa.

    Campos de tabela sincronizados

    . sn_query_gen_segment a tabela contém os dados de tempo de execução usados para operações de pesquisa:

    Tabela 2. Campos da tabela de segmentos sincronizados
    Campo Origem
    name Copiado da configuração de segmento manual
    description Copiado da configuração de segmento manual
    filter Copiado da configuração de segmento manual
    table De table_name
    entity Referência resolvida para sn_query_gen_entity
    source_table Sempre sn_query_gen_segment_table_config
    source_id Sys_id do registro de configuração de segmento manual
    active Manual_segment.active E entity.active

    Comportamento de sincronização

    Os segmentos manuais são sincronizados automaticamente entre as tabelas de configuração e tempo de execução. Você não precisa acionar a sincronização manualmente.

    Tabela 3. Gatilhos de sincronização
    Gatilho Quando O que acontece
    Regra de negócio na configuração Insira ou atualize em sn_query_gen_segment_table_config Sincroniza o registro individual em sn_query_gen_segment (assíncrono)
    Entidade inserir/atualizar Quando uma entidade é criada ou atualizada com active=true Re-sincroniza todos os segmentos (incluindo manual) para essa entidade
    Trabalho agendado semanalmente Aos sábados à meia-noite Sincronização completa de todas as origens de 6 segmentos; limpeza de registros órfãos

    Durante a sincronização, um segmento manual será qualificado se:

    1. active = true no registro de configuração
    2. A tabela referenciada tem uma entidade ativa em sn_query_gen_entity

    Se uma das condições não for atendida, o segmento sincronizado será desativado (não excluído).

    Ativação e desativação

    O status ativo de um segmento sincronizado é: Manual_segment.active E entity.active .

    Tabela 4. Eventos de ativação e desativação
    Evento Resultado
    Configuração de segmento manual activefalso Segmento sincronizado desativado
    Configuração de segmento manual activeverdadeiro Segmento sincronizado reativado (se a entidade também estiver ativa)
    Entidade activefalso Todos os segmentos dessa entidade desativados
    Configuração de segmento manual excluída Segmento sincronizado excluído
    Entidade excluída Segmentos órfãos limpos pelo trabalho agendado

    Os segmentos desativados são excluídos dos resultados da pesquisa.

    Proteções de ACL

    A tabela de segmento sincronizada tem ACLs estritas para que a tabela de configuração permaneça a única fonte de verdade:

    • Criar: Bloqueado ( admin_overrides = false): os segmentos só podem ser criados por meio de sincronização
    • Gravar em name: Bloqueado: Deve ser alterado no registro de configuração
    • Gravar em description: Bloqueado: Deve ser alterado no registro de configuração

    Considerações de comprimento do filtro

    Enquanto o. filtero campo oferece suporte a até 4 000 caracteres, a propriedade do sistema sn_query_gen.segments.max_filter_lengtho padrão é 2 000. Filtros maiores que este limite são truncados quando incluídos no prompt do LLM.

    Dica:
    Mantenha os filtros concisos para obter melhores resultados. Considere dividir segmentos complexos em vários segmentos focados em vez de criar um segmento com muitas condições.

    Domain Separation

    Os segmentos manuais oferecem suporte à separação de domínio. Ao criar um registro de configuração de segmento com um específico sys_domain, o segmento sincronizado herda esse domínio. No momento da pesquisa, os segmentos são filtrados pelo contexto de domínio do usuário.

    Se a separação de domínio não estiver habilitada em sua instância, este campo ficará inativo e poderá ser ignorado.