Руководство по вызову функций AI Edge

Библиотека AI Edge Function Calling SDK (FC SDK) позволяет разработчикам использовать вызов функций с LLM-моделями, работающими непосредственно на устройстве. Вызов функций позволяет подключать модели к внешним инструментам и API, давая моделям возможность вызывать определенные функции с необходимыми параметрами для выполнения действий в реальном мире.

Вместо простого генерирования текста, LLM, использующий FC SDK, может генерировать структурированный вызов функции, которая выполняет действие, например, поиск актуальной информации, установку оповещений или бронирование.

SDK AI Edge FC доступен для Android и может полностью запускаться на устройстве с использованием API LLM Inference. Чтобы начать использовать SDK, следуйте руководству для Android , которое описывает базовую реализацию примера приложения с использованием вызова функций.

Конвейер вызова функций

Для настройки встроенного в устройство модуля LLM с возможностью вызова функций необходимо выполнить следующие ключевые шаги:

  1. Определение объявлений функций : Структура и параметры функций, которые может вызывать LLM, должны быть определены в коде вашего приложения. Это включает в себя указание имен функций, параметров и типов.
  2. Форматирование подсказок и выходных данных : Вводимый и выводимый текст может содержать естественный язык и вызовы функций. Форматировщик управляет преобразованием структур данных в строки и обратно, позволяя LLM соответствующим образом форматировать информацию.
  3. Анализ выходных данных : Парсер определяет, содержит ли сгенерированный ответ вызов функции, и преобразует его в структурированный тип данных, чтобы приложение могло выполнить этот вызов функции.
  4. Анализ ответов : Если парсер обнаруживает вызов функции, приложение вызывает эту функцию с соответствующими параметрами и структурированным типом данных. В противном случае оно возвращает текст на естественном языке.

Ключевые компоненты

Комплект разработчика FC SDK содержит следующие ключевые компоненты:

  • Inference Backend : Интерфейс для выполнения вывода в генеративной модели ИИ. SDK FC использует API LLM Inference для выполнения вывода в моделях LiteRT (TFLite). API использует интерфейс InferenceBackend .
  • Prompt Formatter : Интерфейс для форматирования запросов и ответов к модели генеративного ИИ и от нее. SDK FC предоставляет форматтер, который преобразует объявления функций в формат, специфичный для модели и требуемый LLM, и вставляет их в системный запрос. Форматтер также обрабатывает токены, специфичные для модели, для обозначения хода пользователя и модели. API использует интерфейс ModelFormatter .
  • Парсер выходных данных : SDK FC предоставляет парсер, который определяет, представляет ли выход модели вызов функции, и преобразует его в структуру данных для использования приложением. API использует интерфейс ModelFormatter .
  • Ограниченное декодирование : интерфейс для создания и управления ограничениями, гарантирующими соответствие генерируемых выходных данных определенным правилам или условиям. Для поддерживаемых моделей SDK FC настроит бэкэнд вывода на использование ограниченного декодирования, что гарантирует, что модель будет выводить только допустимые имена функций и параметры. API использует интерфейс ConstraintProvider .