Guia de chamada de função de IA no Edge

O SDK de chamada de função de borda da IA (SDK FC) é uma biblioteca que permite que os desenvolvedores usem a chamada de função com LLMs no dispositivo. A chamada de função permite conectar modelos a ferramentas e APIs externas, permitindo que os modelos chamem funções específicas com os parâmetros necessários para executar ações reais.

Em vez de gerar apenas texto, um LLM que usa o SDK do FC pode gerar uma chamada estruturada para uma função que executa uma ação, como pesquisar informações atualizadas, definir alarmes ou fazer reservas.

O SDK do FC de IA de borda está disponível para Android e pode ser executado totalmente no dispositivo com a API de inferência de LLM. Comece a usar o SDK seguindo o guia do Android, que orienta você em uma implementação básica de um app de exemplo usando a chamada de função.

Pipeline de chamada de função

A configuração de um LLM no dispositivo com recursos de chamada de função requer as seguintes etapas principais:

  1. Definir declarações de função: a estrutura e os parâmetros das funções que a LLM pode chamar precisam ser definidos no código do aplicativo. Isso inclui especificar nomes, parâmetros e tipos de função.
  2. Formatar comandos e saídas: o texto de entrada e de saída pode conter linguagem natural e chamadas de função. Um formatador controla como as estruturas de dados são convertidas de e para strings, permitindo que o LLM formate as informações de maneira adequada.
  3. Analisar saídas: um analisador detecta se a resposta gerada contém uma chamada de função e a analisa em um tipo de dados estruturado para que o aplicativo possa executar a chamada de função.
  4. Examinar respostas: se o analisador detectar uma chamada de função, o aplicativo vai chamar a função com os parâmetros e o tipo de dados estruturados adequados. Caso contrário, ele retorna o texto do idioma natural.

Principais componentes

O SDK do FC contém os seguintes componentes principais:

  • Back-end de inferência: uma interface para executar inferências em um modelo de IA generativa. O SDK do FC usa a API de inferência do LLM para executar inferências em modelos do LiteRT (TFLite). A API usa a interface InferenceBackend.
  • Formatador de comando: uma interface para formatar solicitações e respostas para e do modelo de IA generativa. O SDK do FC fornece um formatador que converte declarações de função no formato específico do modelo exigido pelo LLM e as insere no comando do sistema. O formatador também processa tokens específicos do modelo para indicar as jogadas do usuário e do modelo. A API usa a interface ModelFormatter.
  • Parâmetro de saída: o SDK do FC fornece um analisador que detecta se a saída do modelo representa uma chamada de função e a analisa em uma estrutura de dados para uso pelo aplicativo. A API usa a interface ModelFormatter.
  • Decodificação restrita: uma interface para criar e gerenciar restrições e garantir que a saída gerada siga regras ou condições específicas. Para modelos com suporte, o SDK do FC vai configurar o back-end de inferência para usar a decodificação restrita, que garante que o modelo só gere nomes e parâmetros de função válidos. A API usa a interface ConstraintProvider.