Chatbot com IA

Responda com dados ao vivo dos seus próprios sistemas

A chamada de ferramentas permite que o chatbot chame sua API no meio de uma conversa, leia o que retorna e use isso em sua resposta. O cliente pergunta sobre o pedido e o bot dá a resposta real, em vez de uma genérica.

O treinamento ensina ao chatbot coisas que permanecem as mesmas. A chamada de ferramentas cobre o que muda a cada minuto: status de um pedido, código de rastreio, uma reserva. É um recurso avançado e precisa de código personalizado no seu servidor, então planeje com quem cuida dos seus sistemas.

Passo a passo

1

Decida onde a consulta pertence

A chamada de ferramentas é usada por Perguntas e Respostas (Q&A) e por Fluxos. Coloque-a em um Q&A quando uma única pergunta precisar de uma resposta ao vivo, e em um fluxo quando a consulta for uma etapa de um caminho de conversa mais longo.

2

Aponte para seu endpoint

Em URL, insira o endereço do endpoint da API que responderá à solicitação. Em Headers, adicione os pares chave:valor que seu endpoint precisa. No Q&A, os headers são separados por vírgula; nos fluxos, você os adiciona um por um.

3

Defina o que o cliente deve fornecer

Propriedades são os valores que o chatbot precisa coletar antes de chamar você, por exemplo, uma cidade ou um código de rastreio. Se os valores possíveis forem conhecidos antecipadamente, liste-os em Valores permitidos para que o bot permaneça dentro desse conjunto.

4

Leia a solicitação no seu servidor

Enviamos ao seu servidor esta estrutura: {"sb":{"user_id":"123","conversation_id":"123","user_language":"es"},"arguments":{}} — como corpo JSON para POST e como cabeçalho para GET. Cada chave de argumento é o nome da propriedade em kebab case, então "Número do Pedido" chega como order-number. Você também pode colocar um valor diretamente na URL com um campo de mesclagem, por exemplo {order-number}.

5

Retorne JSON que o chatbot possa usar

Seu servidor deve responder com um JSON contendo os valores que você deseja que o bot fale, por exemplo {"order_status":"Entregue há 2 horas e 25 minutos","success":true}. Inclua "success": true apenas quando a solicitação realmente for bem-sucedida.

Referência de configurações

ConfiguraçãoO que faz
URL O endereço do seu endpoint de API que o chatbot irá chamar.
Headers Pares chave:valor enviados com a solicitação, separados por vírgula no Q&A e adicionados um a um nos fluxos.
Properties Os valores que o usuário deve fornecer antes que a chamada possa ser feita, como uma cidade ou um número de rastreamento.
Allowed values Restringe uma propriedade a um conjunto conhecido de opções, em vez de texto livre.

Informações úteis

"success": true é uma promessa, não uma formalidade

Retorne-o apenas quando a solicitação realmente funcionar. Se o número do pedido for inválido ou nada for encontrado, omita-o para que o chatbot não apresente uma falha como resposta.

Nomes de argumentos mudam de forma

Os nomes das propriedades chegam em kebab case, então "Order Number" se torna order-number. Corresponda essa grafia no seu código e em qualquer campo de mesclagem que você colocar na URL.

GET e POST recebem os dados de forma diferente

Para POST, o payload chega como um corpo JSON. Para GET, chega como um cabeçalho. Verifique qual método seu endpoint usa antes de começar a ler a solicitação.

Você recebe contexto a cada chamada

A requisição inclui user_id, conversation_id e user_language, assim seu endpoint sabe quem está perguntando e em qual idioma.

Essa aqui precisa de um desenvolvedor.

Tools calling é um recurso avançado. A parte do painel é simples, mas algo no seu servidor precisa receber a requisição e retornar o JSON.

Perguntas frequentes

Onde posso usar tools calling?
No Q&A e nos Flows. Ambos podem chamar seu endpoint e usar o resultado na resposta.
O que exatamente você envia para o meu servidor?
Um payload com este formato: {"sb":{"user_id":"123","conversation_id":"123","user_language":"es"},"arguments":{}}. É um corpo JSON para requisições POST e um cabeçalho para requisições GET.
Como faço para obter o valor do cliente na minha URL?
Use um campo de mesclagem com o nome da propriedade em kebab case, por exemplo {order-number}. O valor fornecido pelo cliente é inserido ali antes da chamada ser feita.
O que meu servidor deve retornar?
JSON contendo os valores que o chatbot deve usar, como {"order_status":"Entregue há 2 horas e 25 minutos","success":true}.
O que acontece se o cliente fornecer um número que não existe?
Omita "success": true da sua resposta. Essa flag só deve estar presente em respostas onde a requisição realmente foi bem-sucedida.
Posso limitar o que o cliente pode inserir?
Sim. Se você já conhece as opções possíveis para uma propriedade, coloque-as em Valores permitidos.

Pronto para acabar com o caos?

Unifique suas mensagens, automatize as perguntas repetitivas e transforme conversas em receita — começando hoje.

Começar agora
Planos a partir de $7/mês · Cancele quando quiser