Atendimento ao Cliente Ecommerce
Fluxo de Atendimento ao Cliente com sistema de nivelamento para se integrar com um e-commerce
+3
graph TD
%%{init: {'theme': 'mc','layout': 'elk'}}%%
ChatInput-larrt[<div><img alt="logo" src="/_astro/messages-square.BaSDmT6g.svg" style="height: 20px !important;width: 20px !important"/></div>Chat Input]
style ChatInput-larrt stroke:#a170ff
GoogleGenerativeAIModel-hrflu[Gemini]
style GoogleGenerativeAIModel-hrflu stroke:#a170ff
GoogleGenerativeAIEmbeddings-fnjt0[Google Generative AI Embeddings]
style GoogleGenerativeAIEmbeddings-fnjt0 stroke:#a170ff
APIRequest-78xr1[API Request]
style APIRequest-78xr1 stroke:#a170ff
TelegramMessage-zvrp9[Telegram Message]
style TelegramMessage-zvrp9 stroke:#a170ff
ChatOutput-16z2g[<div><img alt="logo" src="/_astro/messages-square.BaSDmT6g.svg" style="height: 20px !important;width: 20px !important"/></div>Chat Output]
style ChatOutput-16z2g stroke:#a170ff
ChatOutput-0vfib[<div><img alt="logo" src="/_astro/messages-square.BaSDmT6g.svg" style="height: 20px !important;width: 20px !important"/></div>Chat Output2]
style ChatOutput-0vfib stroke:#a170ff
ChatOutput-7h910[<div><img alt="logo" src="/_astro/messages-square.BaSDmT6g.svg" style="height: 20px !important;width: 20px !important"/></div>Chat Output3]
style ChatOutput-7h910 stroke:#a170ff
GoogleGenerativeAIEmbeddings-mn2ew[Google Generative AI Embeddings2]
style GoogleGenerativeAIEmbeddings-mn2ew stroke:#a170ff
SplitText-xm92m[<div><img alt="logo" src="/_astro/scissors-line-dashed.CajsPhTx.svg" style="height: 20px !important;width: 20px !important"/></div>Split Text]
style SplitText-xm92m stroke:#a170ff
GDriveFilesComponent-q2n9y[<div><img alt="logo" src="/_astro/google_drive.wKmDsV2c.svg" style="height: 20px !important;width: 20px !important"/></div>Google Drive File Manager]
style GDriveFilesComponent-q2n9y stroke:#a170ff
ParseData-dpd2k[<div><img alt="logo" src="/_astro/braces.Djq0PW4_.svg" style="height: 20px !important;width: 20px !important"/></div>Parse Data]
style ParseData-dpd2k stroke:#a170ff
AdvancedAgent-zbpzj[Agent4]
style AdvancedAgent-zbpzj stroke:#a170ff
AdvancedAgent-aazz1[Agent]
style AdvancedAgent-aazz1 stroke:#a170ff
AdvancedAgent-hs2r4[Agent5]
style AdvancedAgent-hs2r4 stroke:#a170ff
ParseData-2g4fn[<div><img alt="logo" src="/_astro/braces.Djq0PW4_.svg" style="height: 20px !important;width: 20px !important"/></div>Parse Data2]
style ParseData-2g4fn stroke:#a170ff
ParseData-mrvuk[<div><img alt="logo" src="/_astro/braces.Djq0PW4_.svg" style="height: 20px !important;width: 20px !important"/></div>Parse Data3]
style ParseData-mrvuk stroke:#a170ff
ParseData-z8755[<div><img alt="logo" src="/_astro/braces.Djq0PW4_.svg" style="height: 20px !important;width: 20px !important"/></div>Parse Data4]
style ParseData-z8755 stroke:#a170ff
DeepseekModel-7c7w4[Deepseek2]
style DeepseekModel-7c7w4 stroke:#a170ff
DeepseekModel-juyng[Deepseek3]
style DeepseekModel-juyng stroke:#a170ff
DeepseekModel-ova3h[Deepseek4]
style DeepseekModel-ova3h stroke:#a170ff
SmartRouter-kldld[Agent Router]
style SmartRouter-kldld stroke:#a170ff
RetrieverTool-65vrx[<div><img alt="logo" src="/_astro/langchain-icon.BXtvU_nA.svg" style="height: 20px !important;width: 20px !important"/></div>RetrieverTool]
style RetrieverTool-65vrx stroke:#a170ff
AstraDB-bdkzn[Astra DB]
style AstraDB-bdkzn stroke:#a170ff
AstraDB-xlv27[Astra DB2]
style AstraDB-xlv27 stroke:#a170ff
ParseData-dpd2k -.- SplitText-xm92m
linkStyle 0 stroke:#a170ff
GDriveFilesComponent-q2n9y -.- ParseData-dpd2k
linkStyle 1 stroke:#a170ff
AdvancedAgent-zbpzj -.- ChatOutput-16z2g
linkStyle 2 stroke:#a170ff
AdvancedAgent-aazz1 -.- ChatOutput-7h910
linkStyle 3 stroke:#a170ff
APIRequest-78xr1 -.- AdvancedAgent-aazz1
linkStyle 4 stroke:#a170ff
AdvancedAgent-hs2r4 -.- ChatOutput-0vfib
linkStyle 5 stroke:#a170ff
TelegramMessage-zvrp9 -.- AdvancedAgent-hs2r4
linkStyle 6 stroke:#a170ff
ParseData-2g4fn -.- AdvancedAgent-zbpzj
linkStyle 7 stroke:#a170ff
ParseData-mrvuk -.- AdvancedAgent-aazz1
linkStyle 8 stroke:#a170ff
ParseData-z8755 -.- AdvancedAgent-hs2r4
linkStyle 9 stroke:#a170ff
DeepseekModel-7c7w4 -.- AdvancedAgent-zbpzj
linkStyle 10 stroke:#a170ff
DeepseekModel-juyng -.- AdvancedAgent-aazz1
linkStyle 11 stroke:#a170ff
DeepseekModel-ova3h -.- AdvancedAgent-hs2r4
linkStyle 12 stroke:#a170ff
ChatInput-larrt -.- SmartRouter-kldld
linkStyle 13 stroke:#a170ff
GoogleGenerativeAIModel-hrflu -.- SmartRouter-kldld
linkStyle 14 stroke:#a170ff
SmartRouter-kldld -.- ParseData-2g4fn
linkStyle 15 stroke:#a170ff
SmartRouter-kldld -.- ParseData-mrvuk
linkStyle 16 stroke:#a170ff
SmartRouter-kldld -.- ParseData-z8755
linkStyle 17 stroke:#a170ff
RetrieverTool-65vrx -.- AdvancedAgent-zbpzj
linkStyle 18 stroke:#a170ff
SplitText-xm92m -.- AstraDB-bdkzn
linkStyle 19 stroke:#a170ff
GoogleGenerativeAIEmbeddings-mn2ew -.- AstraDB-bdkzn
linkStyle 20 stroke:#a170ff
AstraDB-xlv27 -.- RetrieverTool-65vrx
linkStyle 21 stroke:#a170ff
GoogleGenerativeAIEmbeddings-fnjt0 -.- AstraDB-xlv27
linkStyle 22 stroke:#a170ff
🧩 Descrição Geral
O fluxo automatiza o atendimento ao cliente de um e‑commerce, classificando as consultas em três níveis de complexidade e delegando‑as a agentes especializados. Os agentes utilizam modelos de linguagem avançados (Gemini, Deepseek) e ferramentas externas (API REST, Telegram) para gerar respostas precisas, enquanto o sistema mantém uma base de conhecimento vetorial construída a partir de documentos armazenados no Google Drive.
⚙️ Funcionalidades Principais
- Recebe consultas de clientes via chat e identifica o seu nível de complexidade.
- Separa e processa documentos do Google Drive, gera embeddings e armazena‑os em um banco de dados vetorial.
- Roteia a consulta para o agente adequado (nível 1, 2 ou 3).
- Cada agente integra ferramentas específicas (chamada de API, envio de mensagem no Telegram).
- Gera respostas em linguagem natural e as devolve ao usuário no chat.
🔄 Passos do Fluxo de Trabalho
| Nome do Componente | Papel no Fluxo | Entradas Principais | Saídas Principais |
|---|---|---|---|
| Gerenciador de Arquivos do Google Drive | Busca e entrega o conteúdo de arquivos selecionados | Identificador ou seleção de arquivo no Google Drive | Dados do arquivo |
| Parse Data (ingestão) | Converte os dados do arquivo em texto plano | Dados do arquivo | Texto extraído |
| Dividir Texto | Fragmenta o texto em pedaços menores para vectorização | Texto extraído | Blocos de texto (chunks) |
| Embeddings do Gemini | Gera vetores semânticos para cada chunk | Blocos de texto | Vetores de embedding |
| Banco de Dados Vetorial (Astra DB) | Armazena os vetores e metadados, permitindo buscas semânticas | Vetores de embedding, metadados | Índice de busca vetorial |
| Entrada de Chat | Recebe a mensagem do usuário | Texto da mensagem | Mensagem para o sistema |
| Roteador Inteligente | Classifica a intenção da consulta em três níveis | Mensagem do usuário, modelo Gemini | Dados rotulados (nível 1, 2, 3) |
| Parse Data (nível 1) | Formata os dados rotulados do nível 1 em texto | Dados do nível 1 | Texto pronto |
| Modelo Deepseek (para nível 1) | Fornece o modelo de linguagem para o agente | Modelo Deepseek | Modelo treinado |
| Agente (nível 1) | Responde consultas de nível 1 usando o modelo Deepseek | Texto da consulta | Resposta do agente |
| Saída de Chat (nível 1) | Exibe a resposta ao usuário | Resposta do agente | Mensagem no chat |
| Parse Data (nível 2) | Formata os dados rotulados do nível 2 em texto | Dados do nível 2 | Texto pronto |
| Modelo Deepseek (para nível 2) | Fornece o modelo de linguagem para o agente | Modelo Deepseek | Modelo treinado |
| Chamada de API (externa) | Executa requisições HTTP para obter dados do sistema interno | Dados de consulta | Resposta da API |
| Agente (nível 2) | Responde consultas de nível 2, usando o modelo Deepseek e a API | Texto da consulta, ferramenta API | Resposta do agente |
| Saída de Chat (nível 2) | Exibe a resposta ao usuário | Resposta do agente | Mensagem no chat |
| Parse Data (nível 3) | Formata os dados rotulados do nível 3 em texto | Dados do nível 3 | Texto pronto |
| Modelo Deepseek (para nível 3) | Fornece o modelo de linguagem para o agente | Modelo Deepseek | Modelo treinado |
| Enviador de Mensagem no Telegram | Publica a resposta no canal do Telegram | Texto da resposta | Mensagem no Telegram |
| Agente (nível 3) | Responde consultas de nível 3, usando o modelo Deepseek e a ferramenta Telegram | Texto da consulta, ferramenta Telegram | Resposta do agente |
| Saída de Chat (nível 3) | Exibe a resposta ao usuário | Resposta do agente | Mensagem no chat |
🧠 Notas
- O fluxo de ingestão de documentos ocorre de forma assíncrona; a base vetorial é atualizada independentemente das consultas de clientes.
- Cada agente possui um limite de iterações (35) e pode usar memória de curto prazo para manter contexto entre trocas.
- As ferramentas de API e Telegram são configuradas apenas para os agentes dos níveis 2 e 3, respectivamente, permitindo chamadas externas e comunicação de ponta a ponta.
- O sistema utiliza modelo Gemini no roteador para garantir alta precisão na classificação de intenção.
- Os modelos Deepseek são atualizados de forma independente; o sistema permite trocar de modelo sem reconfigurar toda a lógica.
- Os embeddings são gerados com o modelo
models/text-embedding-004do Gemini, assegurando consistência entre o texto e os vetores armazenados. - O banco Astra DB suporta consultas de similaridade com métrica cosine e pode ser dimensionado em escala.
- Todas as respostas são formatadas por meio de templates de texto, garantindo consistência na comunicação com o cliente.