Como funciona

Function calling é um mecanismo que permite a um modelo indicar que uma função da aplicação deve ser chamada para obter informação ou realizar uma ação. A aplicação descreve as funções disponíveis e os parâmetros esperados. O modelo escolhe se uma delas é adequada e pode produzir os argumentos em formato estruturado.

A chamada não significa necessariamente que o modelo executou a função. Em geral, o software que integra o modelo recebe a indicação, valida os argumentos e decide se está autorizado a executar a operação. Depois, devolve o resultado ao modelo para que ele possa responder ao usuário ou continuar o fluxo.

Um ciclo comum tem estas etapas:

  1. A aplicação envia a conversa e a descrição das funções disponíveis.
  2. O modelo responde com texto ou indica uma função e seus argumentos.
  3. A aplicação valida os dados e aplica as regras de permissão.
  4. Se permitido, o código executa a função e retorna o resultado.
  5. O modelo usa esse resultado para compor a resposta final.

Os nomes, formatos e recursos variam entre APIs. O integrador deve validar tipos, campos obrigatórios, limites e autorização no próprio código. Uma saída estruturada ajuda a interpretar a intenção, mas não prova que a ação é segura ou correta.

Exemplo prático

Considere uma loja virtual em que uma pessoa pergunta: “Qual é o prazo de entrega para meu pedido?”. A aplicação pode disponibilizar uma função chamada consultar_entrega, com parâmetros como identificador do pedido. O modelo identifica que precisa consultar essa informação e prepara a chamada estruturada.

O servidor não deve executar o pedido só porque o modelo escreveu um identificador. Ele precisa confirmar a identidade da pessoa, verificar se ela pode acessar aquele pedido e conferir se o parâmetro tem o formato esperado. Só então consulta o sistema logístico e devolve o prazo encontrado.

Com o resultado em mãos, o modelo pode explicar a previsão em linguagem natural. Se a função falhar, a aplicação deve retornar um erro controlado e evitar que a resposta invente um prazo. Assim, a interface conversacional é conectada a um sistema real sem transferir ao modelo a autoridade final sobre permissões e efeitos.

Para que serve

Function calling serve para integrar modelos de linguagem com APIs, bancos de dados e funções do próprio produto. Pode apoiar consultas de informação, operações administrativas ou automações, desde que cada ação tenha validações e controles adequados.

É especialmente útil quando o modelo precisa interagir com dados atualizados ou acionar capacidades que não possui por si só. Por exemplo, consultar o estado de um pedido requer acesso ao sistema da empresa; o modelo formula a solicitação, enquanto o código confiável realiza a consulta autorizada.

Para operações que alteram dados, como cancelar uma reserva, prefira etapas explícitas de confirmação e registre o que foi pedido e executado. Defina permissões mínimas, trate erros e impeça chamadas repetidas ou fora de contexto. O desenho da função é parte da segurança do produto.

Diferença entre function calling e tool calling

Os termos são frequentemente usados para descrever padrões próximos: o modelo solicita que uma ferramenta ou função seja usada, e a aplicação coordena a execução. Algumas plataformas usam “function calling” para enfatizar funções com parâmetros estruturados; “tool calling” pode abranger também outras ferramentas. A terminologia depende da API, então consulte a documentação do provedor usado.