Agente de Gestão e Normalização (Supabase)
Este fluxo atua como uma camada de validação e normalização inteligente entre a linguagem natural do usuário e a estrutura relacional do Supabase. O processo garante que cada novo móvel inserido cumpra a integridade de dados requerida, elimin
graph TD
%%{init: {'theme': 'mc','layout': 'elk'}}%%
AdvancedAgent-c7337[Agent]
style AdvancedAgent-c7337 stroke:#a170ff
GoogleGenerativeAIModel-ha7vb[Gemini]
style GoogleGenerativeAIModel-ha7vb stroke:#a170ff
ChatInput-scyl4[<div><img alt="logo" src="/_astro/messages-square.BaSDmT6g.svg" style="height: 20px !important;width: 20px !important"/></div>Chat Input]
style ChatInput-scyl4 stroke:#a170ff
ChatOutput-92g4x[<div><img alt="logo" src="/_astro/messages-square.BaSDmT6g.svg" style="height: 20px !important;width: 20px !important"/></div>Chat Output]
style ChatOutput-92g4x stroke:#a170ff
SupabaseComponent-nn4yr[Supabase]
style SupabaseComponent-nn4yr stroke:#a170ff
SupabaseComponent-z7v6b[Supabase2]
style SupabaseComponent-z7v6b stroke:#a170ff
SupabaseComponent-ug1hf[Supabase3]
style SupabaseComponent-ug1hf stroke:#a170ff
SupabaseComponent-wulup[Supabase4]
style SupabaseComponent-wulup stroke:#a170ff
AdvancedAgent-c7337 -.- ChatOutput-92g4x
linkStyle 0 stroke:#a170ff
GoogleGenerativeAIModel-ha7vb -.- AdvancedAgent-c7337
linkStyle 1 stroke:#a170ff
ChatInput-scyl4 -.- AdvancedAgent-c7337
linkStyle 2 stroke:#a170ff
SupabaseComponent-nn4yr -.- AdvancedAgent-c7337
linkStyle 3 stroke:#a170ff
SupabaseComponent-z7v6b -.- AdvancedAgent-c7337
linkStyle 4 stroke:#a170ff
SupabaseComponent-ug1hf -.- AdvancedAgent-c7337
linkStyle 5 stroke:#a170ff
SupabaseComponent-wulup -.- AdvancedAgent-c7337
linkStyle 6 stroke:#a170ff
📄 Documento Técnico – Fluxo de Gestão de Inventário (Supabase)
🧩 Descrição Geral
O fluxo automatiza a interpretação de pedidos em linguagem natural e a sua conversão em registros estruturados dentro de uma base Supabase. Através de um agente avançado, o sistema valida, normaliza e executa operações CRUD sobre a tabela Muebles, garantindo integridade e consistência dos dados.
⚙️ Funcionalidades Principais
- Interpretação de linguagem natural para extração de campos de inventário.
- Validação e normalização de categorias, materiais, cores e quantidade.
- Inserção, consulta, atualização e exclusão de registros no Supabase.
- Resposta ao usuário com confirmação ou mensagem de erro, no formato de texto.
🔄 Passos do Fluxo de Trabalho
| Nome do Componente | Papel no Fluxo | Entradas Principais | Saídas Principais |
|---|---|---|---|
| Chat Input | Captura da mensagem do usuário. | Mensagem textual enviada pelo cliente. | Mensagem em formato Message. |
| Advanced Agent | Processa a mensagem, decide a ação e gera resposta. | arg_input (texto), llm (modelo), tools (Supabase). | response (texto). |
| Gemini | Modelo de linguagem responsável pela análise semântica. | input_value (texto), system_prompt (regra de negócio), temperature, max_output_tokens, etc. | model_output (modelo). |
| Supabase Insert | Insere novo registro de móvel. | Dados de mobiliário (nome, categoria, material, preço, stock, cor). | Dados de retorno (registro inserido). |
| Supabase Get | Recupera registro(s) existente(s). | filter_string (filtro de consulta). | Dados de retorno (registro(s) obtido(s)). |
| Supabase Delete | Exclui registro(s) existente(s). | filter_string (filtro de exclusão). | Dados de retorno (registro(s) excluído(s)). |
| Supabase Update | Atualiza registro(s) existente(s). | filter_string (filtro de atualização) + campos a atualizar. | Dados de retorno (registro(s) atualizado(s)). |
| Chat Output | Exibe a resposta final ao usuário. | input_value (texto gerado pelo agente). | Mensagem de saída (texto para o chat). |
Observação: O Label Component fornece apenas descrição visual e não participa da execução lógica.
🧠 Notas
- O Advanced Agent utiliza o Gemini como modelo primário; fallback e retries estão habilitados caso o modelo falhe.
- As ferramentas Supabase são configuradas como tools no agente, permitindo que ele chame‑as conforme a intenção detectada.
- O fluxo suporta modo batch: cada item da lista de entrada é tratado de forma independente, com paralelismo configurável.
- O system_prompt contém regras de negócio estritas (categorias, formato de materiais, etc.), garantindo que apenas dados válidos sejam enviados à base.
- A comunicação entre componentes é feita por meio de mensagens Message; não há exposição de IDs internos na documentação.
- O agente pode incluir estado de execução em respostas se a opção output_state estiver ativada.
- A taxa de uso dos modelos e das chamadas de ferramenta pode ser limitada via parâmetros max_iterations, tool_call_limit, model_retry_max_attempts e similares.
- Para depuração, as saídas de cada componente são cacheadas, permitindo re‑executar etapas sem repetir chamadas externas.