WhatsApp: conhecimento do assistente
Base de conhecimento, dicionário de correções de marca e registro das chamadas à IA do assistente de WhatsApp.
O assistente de WhatsApp responde clientes sozinho. Para responder bem, ele precisa de duas coisas que a loja controla: uma base de conhecimento (os textos que ele pode usar) e um dicionário de correções (para entender como o cliente escreve). Esta seção cobre as duas, mais o registro das chamadas que o assistente faz a provedores de IA.
Como funciona
Fluxo típico para ensinar algo novo ao assistente:
- Cadastre o texto
POST /kbcomtitleecontent_text. Usestatus: "draft"se ainda estiver revisando. - Confira a busca
POST /kb/searchcom uma pergunta de cliente. O texto novo deve aparecer emhits. - Ative
PATCH /kb/{id}comstatus: "active". Se criou como ativa, esta etapa não existe. - Ensine as grafias
POST /brand-correctionspara cada apelido ou erro comum, e teste comPOST /brand-corrections/test.
Estados de uma entrada da base:
| Estado | Letra | Significado |
|---|---|---|
active | A | Ativa: o assistente a encontra. |
draft | R | Rascunho: salva, mas fora da busca. |
archived | D | Arquivada: guardada, fora da busca. |
Conceitos-chave
Índice de busca por significado
Quando a loja tem IA configurada, cada entrada ganha um índice que permite achar o texto pelo sentido da pergunta, mesmo com palavras diferentes ("quanto tempo para trocar" acha "Política de troca"). Sem IA, a busca cai num simples trecho de texto. has_embedding mostra se a entrada tem índice, e POST /kb/regenerate-embeddings completa os que faltam.
Loja inteira ou um seller
Numa loja com vários sellers (lojistas), cada seller pode ter entradas e correções próprias. As sem vendor_id são da loja e servem a todos. Quando você filtra por seller na busca, as entradas da loja toda entram junto.
Correção de marca
É um par "grafia errada, nome certo" com um peso. A grafia é guardada em minúsculas. Se duas correções disputam a mesma grafia, vence o maior peso. A plataforma também aprende grafias sozinha (source = auto-learned).
Custos em centavos
O custo de cada chamada de IA, quando conhecido, vem em centavos de real inteiros.
Endpoints
| Método | Caminho | Para que serve | Página |
|---|---|---|---|
GET | /api/v1/admin/whatsapp/kb | Lista as entradas da base de conhecimento | Entradas da base |
POST | /api/v1/admin/whatsapp/kb | Cria uma entrada na base de conhecimento | Entradas da base |
GET | /api/v1/admin/whatsapp/kb/{id} | Lê uma entrada da base de conhecimento | Entradas da base |
PATCH | /api/v1/admin/whatsapp/kb/{id} | Altera uma entrada da base de conhecimento | Entradas da base |
DELETE | /api/v1/admin/whatsapp/kb/{id} | Apaga uma entrada da base de conhecimento | Entradas da base |
POST | /api/v1/admin/whatsapp/kb/search | Busca na base de conhecimento | Busca e índice da base |
POST | /api/v1/admin/whatsapp/kb/regenerate | Refaz o índice de busca da base | Busca e índice da base |
POST | /api/v1/admin/whatsapp/kb/regenerate-embeddings | Refaz o índice de busca da base (alias) | Busca e índice da base |
GET | /api/v1/admin/whatsapp/brand-corrections | Lista as correções de marca | Correções de marca |
POST | /api/v1/admin/whatsapp/brand-corrections | Cria (ou atualiza) uma correção de marca | Correções de marca |
PATCH | /api/v1/admin/whatsapp/brand-corrections/{id} | Altera uma correção de marca | Correções de marca |
DELETE | /api/v1/admin/whatsapp/brand-corrections/{id} | Apaga uma correção de marca | Correções de marca |
POST | /api/v1/admin/whatsapp/brand-corrections/test | Testa a busca inteligente com uma frase | Correções de marca |
GET | /api/v1/admin/whatsapp/ai-logs | Lista as chamadas à IA do assistente de WhatsApp | Registro de chamadas à IA |
Erros comuns
- Criar a entrada como rascunho e esperar que o assistente a use: só
activeentra na busca. - Usar
PUTpara alterar uma entrada: a rota éPATCH. - Mandar
tagsemPATCHpara acrescentar uma etiqueta: o campo substitui a lista inteira. - Esperar que
limit=500valha em/kbou/ai-logs: o teto é 200 e acima disso o limite vira 50. - Tentar renomear a grafia de uma correção: só
canonicaleweightmudam. Apague e crie de novo. - Rodar
regeneratenuma loja sem IA: a resposta é 503. - Passar um id que não é UUID: a plataforma responde 500 em vez de 400.