Przewodnik po wywoływaniu funkcji AI na Edge

Pakiet SDK wywoływania funkcji AI Edge (FC SDK) to biblioteka, która umożliwia deweloperom używanie wywoływania funkcji z usługami LLM na urządzeniu. Wywoływanie funkcji umożliwia łączenie modeli z zewnętrznymi narzędziami i interfejsami API, dzięki czemu modele mogą wywoływać określone funkcje z niezbędnymi parametrami, aby wykonywać działania w rzeczywistych warunkach.

Zamiast generować tylko tekst, LLM korzystający z pakietu FC SDK może generować ustrukturyzowane wywołanie funkcji, która wykonuje działanie, takie jak wyszukiwanie aktualnych informacji, ustawianie alarmów czy rezerwowanie.

Pakiet SDK AI Edge FC jest dostępny na Androida i może być uruchamiany całkowicie na urządzeniu za pomocą interfejsu LLM Inference API. Aby zacząć korzystać z pakietu SDK, postępuj zgodnie z przewodnikiem po Androidzie, który zawiera podstawowe informacje o implementacji przykładowej aplikacji z wykorzystaniem wywoływania funkcji.

Potok wywoływania funkcji

Aby skonfigurować LLM na urządzeniu z możliwością wywoływania funkcji, wykonaj te kluczowe czynności:

  1. Definiowanie deklaracji funkcji: struktura i parametry funkcji, do których może się odwoływać LLM, muszą być zdefiniowane w kodzie aplikacji. Obejmuje to określanie nazw, parametrów i typów funkcji.
  2. Formatowanie promptów i wyjść: tekst wejściowy i wyjściowy może zawierać naturalny język i wywołania funkcji. Formatowanie określa, jak struktury danych są konwertowane na ciągi znaków i z nich zwracane, co umożliwia LLM prawidłowe formatowanie informacji.
  3. Przetwarzanie danych wyjściowych: parsowanie wykrywa, czy wygenerowana odpowiedź zawiera wywołanie funkcji, i przekształca ją w uporządkowany typ danych, aby aplikacja mogła wykonać wywołanie funkcji.
  4. Sprawdzanie odpowiedzi: jeśli parsujący wykryje wywołanie funkcji, aplikacja wywołuje funkcję z odpowiednimi parametrami i typem danych ustrukturyzowanych. W przeciwnym razie zwraca tekst w języku naturalnym.

Kluczowe komponenty

Pakiet FC SDK zawiera te kluczowe komponenty:

  • Backend do wnioskowania: interfejs do przeprowadzania wnioskowania na modelu generatywnej AI. Pakiet FC SDK korzysta z interfejsu LLM Inference API do wykonywania wnioskowania na modelach LiteRT (TFLite). Interfejs API korzysta z interfejsu InferenceBackend.
  • Formatowanie promptów: interfejs do formatowania żądań i odpowiedzi wysyłanych do i otrzymywanych z modela generatywnej AI. Pakiet FC SDK udostępnia formater, który konwertuje deklaracje funkcji na format wymagany przez LLM i wstawia je w promptach systemowych. Formatowanie obsługuje też tokeny specyficzne dla modelu, aby wskazywać kolejność użytkownika i modelu. Interfejs API korzysta z interfejsu ModelFormatter.
  • Parsowanie wyjścia: pakiet FC SDK udostępnia parsownik, który wykrywa, czy wyjście modelu reprezentuje wywołanie funkcji, i przekształca je w strukturę danych do wykorzystania przez aplikację. Interfejs API korzysta z interfejsu ModelFormatter.
  • Ograniczone kodowanie: interfejs do tworzenia ograniczeń i zarządzania nimi, który zapewnia, że wygenerowany wynik będzie zgodny z określonymi regułami lub warunkami. W przypadku obsługiwanych modeli pakiet FC SDK skonfiguruje backend inferencji tak, aby używać kodowania ograniczonego, co zapewni, że model będzie zwracać tylko prawidłowe nazwy funkcji i parametry. Interfejs API korzysta z interfejsu ConstraintProvider.