Caso de uso · validate_reply

"O bug das 48 parcelas": quando seu chatbot confunde quantidade com valor

Acontece todo dia em chatbots de cobrança, vendas e atendimento. E custa vendas.

Sua empresa tem um agente de IA para vendas. Ele oferece parcelamento. O cliente responde com um número. O bot extrai o número. Erro: o bot confundiu a quantidade de parcelas que o cliente propôs com um valor em reais.

Resultado: proposta errada, cliente frustrado, venda perdida. E o pior: o bug é silencioso — o bot não sabe que errou.

O bug em ação

BOT TRADICIONAL — DIÁLOGO REAL
Agente: "Posso parcelar em 20x de R$100. Topa?"
Usuário: "Bora em 48?"
❌ Bot extraiu: "48"
Interpretou como: R$ 48,00
Correto seria: 48 parcelas (contraproposta)

Por que o bot erra sozinho

O bot recebe apenas a mensagem do usuário: "Bora em 48?". Sem contexto de que o agente acabou de oferecer PARCELAS, "48" parece um valor monetário ou simplesmente um número sem significado definido.

Mesmo com um prompt bem elaborado, o bot não foi projetado para analisar o par agente+usuário como uma unidade semântica — ele vê só a resposta isolada.

Como o NaLU AI resolve com validate_reply

API RESPONSE — validate_reply
{
  "obtained": true,
  "reply_type": "counter_proposal",
  "extracted_value": "48",
  "value_type": "quantity",
  "extracted_meaning": "Usuário propôs 48 parcelas como
    contraproposta à oferta de 20 parcelas de R$100",
  "confidence": 0.95,
  "needs_clarification": false,
  "suggestion_to_agent": "O cliente está propondo 48 parcelas
    em vez das 20 oferecidas. Você pode ajustar a proposta
    para 48x de um valor menor?"
}

O validate_reply analisa o PAR agente+usuário e entende que "48" é uma contraproposta de quantidade de parcelas, não um valor monetário — porque o agente acabou de oferecer PARCELAS (20x de R$100), não um preço fixo.

Custo de resolver

Custo por análise
R$ 0,0097
5 créditos · plano Starter
Custo de NÃO resolver
Venda perdida
Cliente frustrado · dados poluídos

Código de integração

cURL
curl https://api.naluai.dev/v1/extract/reply \
  -H "Authorization: Bearer SEU_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "agent_message": "Posso parcelar em 20x de R$100. Topa?",
    "user_reply": "Bora em 48?",
    "language": "pt-BR"
  }'
JavaScript (n8n / Make)
const { reply_type, extracted_value, value_type } =
  await $http.post('https://api.naluai.dev/v1/extract/reply', {
    agent_message: $node['Agent'].json.message,
    user_reply: $node['User'].json.reply,
    language: 'pt-BR'
  }, { headers: { Authorization: 'Bearer ' + $env.NALU_TOKEN } });

// reply_type === 'counter_proposal'
// extracted_value === '48'
// value_type === 'quantity'

Teste com seus próprios diálogos

O playground é grátis. 10 chamadas por dia, sem cadastro.

Testar no playground →

Ou criar uma conta e ganhar 3.000 créditos grátis.