Pular para o conteúdo principal

AI Agent — Arquitetura Detalhada

Prompt template

SYSTEM:
Você é {assistant.name}, {general_instructions}

DADOS DA LOJA/CANAL:
{store_data}

HORÁRIO DE ATENDIMENTO:
{business_hours}

BASE DE CONHECIMENTO RELEVANTE:
{rag_chunks} ← recuperados por pgvector (similaridade ≥ 0.75)

INSTRUÇÕES INDIVIDUAIS:
{individual_instructions_with_contact_variables}
Exemplo: "O nome do contato é {{contact.name}} e está no plano {{contact.custom.plano}}"

REGRAS INVIOLÁVEIS:
- Se questionado se é IA, responda que é.
- Não invente informações não presentes na base de conhecimento.
- Se não souber, diga que vai verificar e escale para humano.
- Se o cliente demonstrar frustração ou pedir humano, escale.

HISTÓRICO DA CONVERSA:
{last_20_messages}

USER: {current_message}

Modelo de embeddings

OpenAI text-embedding-3-small (1536 dimensões)

  • Custo: $0.02/1M tokens (~$0.04 para 10.000 chunks de 200 tokens)
  • Chamado apenas no processamento de chunks (não em tempo de resposta)

Agrupamento de mensagens

Se o contato enviar múltiplas mensagens rápidas:

  1. Sistema aguarda delay_seconds (padrão: 3s) após a última mensagem
  2. Processa todas as mensagens como uma única entrada para o LLM
  3. Evita respostas fragmentadas e reduz custo de tokens