Wnioskowanie hybrydowe

Google udostępnia szeroki wybór wiodących w branży modeli AI i interfejsów API do wnioskowania w chmurze i na urządzeniu. Wnioskowanie hybrydowe umożliwia płynne równoważenie obciążeń AI między urządzeniem lokalnym a chmurą, co pozwala optymalizować wydajność, koszty i dostępność.

Wnioskowanie hybrydowe ma 2 główne zalety w przypadku aplikacji na Androida:

  • Maksymalizowanie zasięgu: modele w chmurze stanowią kluczowe rozwiązanie awaryjne, gdy modele na urządzeniu, takie jak Gemini Nano, są niedostępne z powodu ograniczeń sprzętowych lub systemu operacyjnego urządzenia. Dzięki temu funkcje AI będą działać na jak największej liczbie urządzeń użytkowników.
  • Koszt i możliwości offline: modele na urządzeniu pomagają zapewnić płynne działanie funkcji AI, gdy użytkownik jest offline. Dodatkowo przeniesienie rutynowych zadań na urządzenie lokalne pomaga obniżyć koszty wnioskowania w chmurze.

Oto zalety wnioskowania na urządzeniu i wnioskowania w chmurze:

Wnioskowanie na urządzeniu Wnioskowanie w chmurze
Dostępny offline Zgodność z każdym urządzeniem
Brak kosztów wnioskowania Zaawansowane możliwości modelu

Opcje implementacji

Wnioskowanie hybrydowe możesz wdrożyć na te sposoby:

Firebase AI Logic Hybrid API

Hybrydowy interfejs API Firebase AI Logic udostępnia jeden ujednolicony interfejs do dzielenia wnioskowania między środowiskami chmurowymi i na urządzeniu.

Zawiera parametr onDeviceConfig, który umożliwia zdefiniowanie trybu wnioskowania i zarządzanie routingiem:

  • PREFER_ON_DEVICE: próbuje użyć modelu na urządzeniu, automatycznie przełączając się na model hostowany w chmurze, jeśli model na urządzeniu jest niedostępny lub nieobsługiwany w przypadku danego żądania.

  • PREFER_IN_CLOUD: próbuje używać modelu hostowanego w chmurze, gdy urządzenie jest online i model jest dostępny. W przypadku braku połączenia z internetem przełącza się na model na urządzeniu.

  • ONLY_ON_DEVICE: próbuje użyć modelu na urządzeniu, ale zgłasza wyjątek, jeśli jest on niedostępny lub nieobsługiwany w przypadku żądania.

  • ONLY_IN_CLOUD: próbuje użyć modelu hostowanego w chmurze, gdy urządzenie jest online i model jest dostępny. W pozostałych przypadkach zgłasza wyjątek.

val model = Firebase.ai(backend = GenerativeBackend.Companion.googleAI())
    .generativeModel(
        modelName = "gemini-3.5-flash",
        onDeviceConfig = OnDeviceConfig(mode = InferenceMode.Companion.PREFER_ON_DEVICE)
    )

val response = model.generateContent("Write a story about a green robot.")
print(response.text)

Szczegóły implementacji znajdziesz w dokumentacji Firebase. Możesz też zapoznać się z przykładowym modelem AI hybrydowej w katalogu AI.

Routing niestandardowy

Jeśli Twoja aplikacja ma określone wymagania biznesowe lub dotyczące UX, możesz też wdrożyć niestandardową logikę routingu. Umożliwia to dynamiczne określanie ścieżki wnioskowania na podstawie czynników w czasie rzeczywistym, takich jak:

  • Opóźnienie sieciowe
  • stan systemu urządzenia (np. poziom baterii i obciążenie procesora);
  • Złożoność zapytania użytkownika

To niestandardowe podejście do wnioskowania hybrydowego jest stosowane przez wiodące aplikacje, które wdrożyły własne niestandardowe przekierowywanie, aby zapewniać niezawodne funkcje AI, w tym:

  • Gboard: Gboard korzysta z niestandardowego wnioskowania hybrydowego, aby obsługiwać narzędzia do pisania, takie jak korekta i zmiana stylu.

  • Kakao Mobility: firma Kakao Mobility stworzyła narzędzie do wyodrębniania jednostek przy użyciu niestandardowej hybrydowej metody wnioskowania na potrzeby usługi dostarczania paczek. Automatycznie wyodrębnia ono imiona i nazwiska odbiorców, adresy i numery telefonów z wiadomości w języku naturalnym, aby usprawnić formularze zamówień.