Para reproduzir a camada semântica EDB Postgres AgentCore, o exemplo técnico da AWS coloca uma base de conhecimento semântica do AIDB dentro do EDB Postgres AI e conecta a ela um agente no Amazon Bedrock AgentCore por MCP. A camada indexa metadados do esquema; o PostgreSQL aplica os privilégios da função usada na consulta. O fluxo abaixo acompanha a demonstração com dados C360, sem tratar os resultados dessa amostra como medidas de desempenho.
O que a camada semântica indexa
A base de conhecimento semântica (SemKB) procura informações sobre tabelas, colunas, views, comentários e relações entre tabelas. Ela não indexa as linhas de dados. O agente usa esse contexto para localizar estruturas e significados úteis antes de formular consultas.
No exemplo, comentários COMMENT ON explicam o sentido de campos e termos de negócio. Chaves estrangeiras descrevem relações e caminhos de junção; views registram definições reutilizáveis. Um alias semântico pode expor uma consulta SELECT somente para leitura, parametrizada e acompanhada de uma descrição em linguagem natural.
Prepare o esquema e escreva as definições
- Carregue os dados C360. O tutorial usa quatro arquivos CSV, organizados no esquema
c360em quatro tabelas:customers,locations,productsepurchases. O exemplo também cria a view derivadabig_spender. - Documente o significado dos campos e das relações. Use comentários do PostgreSQL para explicar o que cada coluna representa e configure as chaves estrangeiras para que as relações entre tabelas possam ser identificadas. Na amostra,
purchases.pricerepresenta o total do pedido, não o preço unitário. Essa definição muda o resultado de uma consulta que, de outro modo, poderia multiplicar o total pela quantidade. - Explicite os termos de negócio nas views e nos aliases. A view
big_spenderdefine como grande comprador quem fez ao menos um pedido acima de US$ 250. O aliasbig_spenders_by_stateoferece uma consulta somente para leitura, parametrizada por estado. Esses critérios são definições da demonstração, não significados universais de “grande comprador”.
Configure a SemKB e escolha o processamento
- Crie a base de conhecimento para o esquema C360. A configuração usada no tutorial chama a SemKB de
c360_kb, associa o esquemac360ao modelobge-small-en-v1.5-f16e defineauto_processingcomoLive. Quando há mais de uma SemKB, as buscas precisam especificarkb_name.
O tutorial descreve três modos para processar mudanças no esquema:
| Modo | Comportamento diante de mudanças no esquema | Como atualizar |
Live | Usa gatilhos de eventos do PostgreSQL para processar mudanças. | O processamento acompanha os eventos do esquema. |
Background | Processa as mudanças de forma assíncrona, por um worker. | O worker trata as mudanças em segundo plano. |
Disabled | Não processa as mudanças automaticamente. | Execute aidb.refresh_semantic_kb() explicitamente. |
Habilite e conecte o endpoint MCP
- Ative o servidor MCP do AIDB. No PostgreSQL, habilite
edb.endpoints_mcp_enablede incluaaidbemshared_preload_libraries; depois, reinicie o servidor. O exemplo usa a porta8765. Para aceitar conexões fora do loopback, configure um certificado TLS e sua chave. - Conecte o Gateway ao endpoint. Na arquitetura do tutorial, um Application Load Balancer (ALB) HTTPS encaminha as solicitações ao endpoint
edb-endpointsdo AIDB, que atende ao Model Context Protocol (MCP) por HTTP em fluxo contínuo. O AgentCore Gateway registra esse endpoint como destino MCP. Como o endpoint já fala MCP, essa rota não exige uma camada de tradução com AWS Lambda.
Na configuração descrita, o grupo de destino do ALB usa HTTPS na porta 8765, mas não valida a cadeia do certificado do servidor de destino. O tutorial recomenda conectividade privada pela VPC para produção.
Como identidade e credenciais chegam ao PostgreSQL
- Separe a identidade do usuário da credencial do banco. No fluxo demonstrado, o Amazon Cognito emite o JWT do usuário. O AgentCore Gateway valida esse token e avalia a política de acesso às ferramentas. O AgentCore Identity fornece ao destino MCP a credencial da função PostgreSQL por autenticação HTTP Basic. O código do agente não recebe essa credencial.
- Defina os privilégios no PostgreSQL. A função associada à credencial controla o que a consulta pode ler. No teste da AWS, uma função restrita recebe erro de permissão ao tentar acessar
customers.ssn; privilégios por coluna e segurança em nível de linha (RLS) fazem a restrição valer no banco. Gateway e Identity cuidam de etapas diferentes do fluxo, enquanto os privilégios e a RLS são aplicados pelo PostgreSQL.
Confira consultas, permissões e rastros
Teste as mesmas perguntas com as funções autorizadas e restritas. A demonstração mostra que o mesmo agente e as mesmas ferramentas podem produzir resultados de acesso diferentes conforme a credencial usada. O erro ao consultar customers.ssn verifica a restrição de coluna; regras de RLS podem limitar as linhas visíveis.
Para acompanhar as execuções, o AIDB pode registrar rastros de SQL no esquema aidb_otel quando a telemetria está configurada. Separadamente, o AgentCore envia rastros de chamadas de ferramentas e modelos, além do uso de tokens, para o CloudWatch Transaction Search.
Valide definições e atualidade à parte
Permissão para consultar uma coluna não resolve se a consulta aplicou o significado de negócio pretendido. Em uma demonstração comunitária separada, feita com Snowflake e uma amostra de 34 fornecedores, “ativo” produziu contagens de 25, 24 e 21 conforme a definição usada: compras ou faturas nos últimos 12 meses, atividade nos últimos 90 dias ou um campo de status do ERP. O exemplo ilustra que a camada pode aplicar uma definição escolhida, mas a organização ainda precisa decidir qual definição aprova.
Em discussões sobre agentes em bancos grandes, profissionais também relataram conferir consultas com perguntas de resultado conhecido, examinar o plano da consulta e registrar a definição de negócio utilizada. Um participante descreveu comparar impressões digitais de versões do esquema e sinalizar definições que apontam para tabelas alteradas; outro relato atribuiu um saldo desatualizado à defasagem de uma réplica. São práticas e experiências relatadas por usuários, não recursos específicos do AIDB.
A amostra C360 tem quatro tabelas e uma view. A configuração descrita serve para entender a sequência de integração e os pontos de controle; por si só, ela não mede como a arquitetura se comporta em esquemas maiores.