Za pomocą Firebase AI Logic możesz tworzyć oparte na AI aplikacje i funkcje Apple z wnioskowaniem hybrydowym. Wnioskowanie hybrydowe umożliwia uruchamianie wnioskowania za pomocą modeli na urządzeniu (w szczególności frameworka Foundation Models firmy Apple), gdy są one dostępne, i płynne przełączanie się na modele Google hostowane w chmurze (i odwrotnie).
Na tej stronie opisujemy, jak zacząć korzystać z pakietu SDK klienta, oraz przedstawiamy dodatkowe opcje konfiguracji i możliwości, takie jak temperatura.
Pamiętaj, że wnioskowanie na urządzeniu za pomocą Firebase AI Logic jest obsługiwane w przypadku aplikacji Apple korzystających z pakietu SDK Firebase AI Logic w wersji 12.13.0 lub nowszej i działających na urządzeniach z włączoną funkcją Apple Intelligence. Podlega ono wymaganiom dotyczącym dopuszczalnego użytkowania frameworka Foundation Models firmy Apple.
Zalecane przypadki użycia
Korzystanie z modelu na urządzeniu do wnioskowania zapewnia:
- większą prywatność,
- bezpłatne wnioskowanie,
- funkcje offline.
Korzystanie z funkcji hybrydowych zapewnia:
- podobne wrażenia z aplikacji dla wszystkich klientów niezależnie od urządzenia użytkownika,
- większą dostępność funkcji opartych na generatywnej AI niezależnie od połączenia z internetem, ograniczeń przydziału i możliwości urządzenia.
Obsługiwane funkcje, interfejsy API i urządzenia
Zanim wdrożysz wnioskowanie hybrydowe i na urządzeniu za pomocą Firebase AI Logic, zapoznaj się z tą sekcją, aby dowiedzieć się, co jest obsługiwane w przypadku aplikacji Apple.
Obsługiwane funkcje i możliwości wnioskowania na urządzeniu
Wnioskowanie na urządzeniu obsługuje tylko generowanie tekstu, a konkretnie te funkcje generowania tekstu:
generowanie tekstu na podstawie danych wejściowych zawierających tylko tekst,
przesyłanie strumieniowe tekstu na podstawie danych wejściowych zawierających tylko tekst.
Obsługiwane interfejsy API i urządzenia
Wnioskowanie w chmurze korzysta z wybranego dostawcy Gemini API (albo Gemini Developer API albo Agent Platform Gemini API (formerly Vertex AI)).
Wnioskowanie na urządzeniu korzysta z frameworka Foundation Models firmy Apple, który jest dostępny tylko na urządzeniach z włączoną funkcją Apple Intelligence. Model na urządzeniu jest pobierany automatycznie po włączeniu funkcji Apple Intelligence.
Rozpocznij
Upewnij się, że zapoznałeś(-aś) się z sekcją powyżej, w której opisujemy obsługiwane funkcje, interfejsy API i urządzenia.
Te instrukcje dotyczące pierwszych kroków opisują ogólną konfigurację wymaganą w przypadku każdego obsługiwanego żądania prompta, które chcesz wysłać.
Krok 1. Skonfiguruj projekt w Firebase i połącz aplikację z Firebase
Zaloguj się w konsoli Firebase, i wybierz projekt w Firebase.
W konsoli Firebase otwórz Usługi AI > AI Logic.
Kliknij Rozpocznij , aby uruchomić proces z przewodnikiem, który pomoże Ci skonfigurować wymagane interfejsy API i zasoby projektu.
Jeśli pojawi się prośba, postępuj zgodnie z instrukcjami wyświetlanymi na ekranie, aby zarejestrować aplikację i dodać do niej konfigurację Firebase.
Gdy pojawi się prośba o wybranie "dostawcy Gemini API", zalecamy wybranie Gemini Developer API, które umożliwia szybkie rozpoczęcie pracy bez opłat.
W dowolnym momencie możesz zawsze skonfigurować Agent Platform Gemini API (formerly Vertex AI) i wymagane do niego płatności.
Kontynuuj proces, aby skonfigurować wymagane interfejsy API i powiązane usługi dla Firebase AI Logic.
Od początku lipca 2026 r. ten etap procesu automatycznie wymusza Firebase App Check w przypadku AI Logic, która jest krytyczną usługą pomagającą chronić Gemini API, gdy jest ona dostępna bezpośrednio z aplikacji. W ramach pierwszych kroków (patrz dalsze instrukcje w tym przewodniku) musisz skonfigurować App Check dostawcę debugowania na potrzeby lokalnego programowania, gdy App Check jest wymuszane.
Aby dodać do aplikacji wymagane pakiety SDK, przejdź do następnego kroku w tym przewodniku.
Krok 2. Dodaj wymagane pakiety SDK
Do instalacji zależności Xcode i do zarządzania nimi możesz używać menedżera pakietów Swift (SPM). Obsługa hybrydowa jest dostępna tylko w przypadku korzystania z SPM.
Biblioteka Firebase AI Logic zapewnia dostęp do interfejsów API do interakcji
z modelami generatywnymi. Biblioteka jest częścią pakietu SDK Firebase na platformy Apple (firebase-ios-sdk).
Jeśli korzystasz już z Firebase, upewnij się, że pakiet Firebase ma wersję 12.13.0 lub nowszą.
Po otwarciu projektu aplikacji wybierz w Xcode opcję File > Add Package Dependencies (Plik > Dodaj zależności pakietu).
Gdy pojawi się prośba, dodaj repozytorium pakietu SDK Firebase na platformy Apple:
https://github.com/firebase/firebase-ios-sdkWybierz najnowszą wersję pakietu SDK.
Wybierz biblioteki
FirebaseAILogiciFirebaseAppCheck.
Gdy skończysz, Xcode zacznie automatycznie wyszukiwać i pobierać zależności w tle.
Krok 3. Skonfiguruj dostawcę debugowania App Check na potrzeby lokalnego programowania
Od początku lipca 2026 r. w ramach procesu konfiguracji z przewodnikiem dla AI Logic w konsoli automatycznie wymuszane jest Firebase App Check, aby chronić Gemini API. Na potrzeby lokalnego programowania musisz skonfigurować App Check dostawcę debugowania, aby pominąć atest, ale nadal utrzymywać wymuszanie App Check.
Oto jak używać dostawcy debugowania podczas interaktywnego uruchamiania aplikacji w symulatorze (np. podczas lokalnego programowania):
W projekcie Xcode zaimportuj
FirebaseAppChecki zainicjuj App Check za pomocą fabryki dostawcy debugowania zanim skonfigurujeszFirebase.import SwiftUI import FirebaseCore import FirebaseAppCheck @main struct YourApp: App { init() { let providerFactory = AppCheckDebugProviderFactory() AppCheck.setAppCheckProviderFactory(providerFactory) FirebaseApp.configure() } var body: some Scene { WindowGroup { NavigationView { ContentView() } } } }Uzyskaj token debugowania:
Uruchom aplikację w symulatorze lub na urządzeniu testowym.
Otwórz konsolę Xcode i poszukaj tokena debugowania App Check. Przykład:
<Warning> [AppCheckCore][I-GAC004001] App Check debug token: '123a4567-b89c-12d3-e456-789012345678'.Skopiuj token (np.
123a4567-b89c-12d3-e456-789012345678).
Zarejestruj token debugowania w App Check:
W konsoli Firebase otwórz kartę Bezpieczeństwo > Sprawdzanie aplikacji > Aplikacje.
Znajdź swoją aplikację, kliknij rozszerzone menu (), a następnie wybierz Zarządzaj tokenami debugowania.
Postępuj zgodnie z instrukcjami wyświetlanymi na ekranie, aby zarejestrować token debugowania.
Szczegółowe informacje o dostawcy debugowania (w tym o tym, jak uzyskać nowy token debugowania) znajdziesz w oficjalnej dokumentacji.App Check
Krok 4. Zainicjuj usługę i utwórz instancję sesji modelu
|
Kliknij dostawcę Gemini API, aby wyświetlić na tej stronie treści i kod dotyczące tego dostawcy. |
Zanim wyślesz do modelu żądanie prompta, skonfiguruj te elementy:
Zainicjuj usługę dla wybranego Gemini API dostawcy.
Utwórz instancję
GenerativeModelSessionzHybridModel.Ustaw modele
primaryisecondaryzgodnie z własnymi preferencjami. Możesz ustawić kolejność prób wnioskowania:Najpierw spróbuj wnioskowania na urządzeniu, ale zezwól na przełączenie się na chmurę: ustaw
primaryna model „systemowy”, asecondaryna model w chmurze.Najpierw spróbuj wnioskowania w chmurze, ale zezwól na przełączenie się na urządzenie: ustaw
primaryna model w chmurze, asecondaryna model „systemowy”.
Pamiętaj, że pakiet SDK obsługuje ustawienie tylko jednego
model, co oznacza, że pakiet SDK będzie próbował tylko wnioskowania na urządzeniu lub w chmurze. Aby jednak uzyskać hybrydowe wrażenia, musisz utworzyćHybridModeli ustawić modeleprimaryisecondary.Więcej informacji o działaniu "trybów wnioskowania" (kolejności prób wnioskowania) znajdziesz w sekcji Opcje konfiguracji.
Poniższy przykład pokazuje, jak najpierw spróbować wnioskowania na urządzeniu, ale zezwolić na przełączenie się na model hostowany w chmurze:
// Initialize the Gemini Developer API backend service.
let ai = FirebaseAI.firebaseAI(backend: .googleAI())
// Initialize a cloud model that supports your use case.
let cloudModel = ai.geminiModel(name: "GEMINI_MODEL_NAME")
// Initialize an on-device model that supports your use case.
let systemModel = FirebaseAI.SystemLanguageModel.default
// Create a Hybrid Model.
// Provide your preferred model as `primary` and your fallback model as `secondary`.
// In this example, attempt to use on-device model; otherwise, fall back to cloud.
let hybridModel = HybridModel(
primary: systemModel,
secondary: cloudModel
)
// Create a GenerativeModelSession with the HybridModel created earlier.
let session = firebaseAI.generativeModelSession(
model: hybridModel,
)
Krok 5. Wyślij do modelu żądanie prompta
W tej sekcji dowiesz się, jak wykonać te czynności:
- generowanie tekstu na podstawie danych wejściowych zawierających tylko tekst,
- przesyłanie strumieniowe tekstu na podstawie danych wejściowych zawierających tylko tekst.
Generowanie tekstu na podstawie danych wejściowych zawierających tylko tekst
| Zanim wypróbujesz ten przykład, upewnij się, że masz za sobą sekcję Pierwsze kroki w tym przewodniku. |
Aby wygenerować tekst na podstawie prompta zawierającego tekst, użyj respond(to:) w ten sposób:
// Imports + initialization of Gemini API backend service + creation of model session
// Provide a prompt that contains text
let prompt = "Write a story about a magic backpack."
// To generate text output, call `respond(to:)` with the text input
let response = try await session.respond(to: prompt)
print(response.content)
Przesyłanie strumieniowe tekstu na podstawie danych wejściowych zawierających tylko tekst
| Zanim wypróbujesz ten przykład, upewnij się, że masz za sobą sekcję Pierwsze kroki w tym przewodniku. |
Możesz przyspieszyć interakcje, nie czekając na cały wynik generowania modelu, i zamiast tego użyć przesyłania strumieniowego do obsługi częściowych wyników. Aby przesyłać strumieniowo wygenerowany tekst na podstawie prompta zawierającego tekst, użyj streamResponse(to:) w ten sposób:
// Imports + initialization of Gemini API backend service + creation of model session
// Provide a prompt that contains text
let prompt = "Write a story about a magic backpack."
// To stream generated text output, call `streamResponse(to:)` with the text input
let stream = session.streamResponse(to: prompt)
for try await snapshot in stream {
print(snapshot.content)
}
Co jeszcze możesz zrobić?
W przypadku funkcji hybrydowych możesz używać różnych dodatkowych opcji konfiguracji i możliwości:
Określ, czy użyto wnioskowania na urządzeniu, czy w chmurze.
Użyj konfiguracji modelu, aby kontrolować odpowiedzi (np. temperaturę).
Funkcje, które nie są jeszcze obsługiwane w przypadku wnioskowania hybrydowego lub na urządzeniu
W wersji eksperymentalnej nie są obsługiwane wszystkie możliwości Firebase AI Logic ani modeli hostowanych w chmurze.
Następujące elementy nie są obsługiwane w przypadku implementacji hybrydowych ani na urządzeniu implementacji: modele Imagen, Gemini Live API i szablony promptów. Nie należy też polegać na liczbie tokenów, ponieważ będzie się ona różnić w zależności od modelu hostowanego w chmurze i na urządzeniu, więc nie ma intuicyjnego przełączania się.
Te funkcje nie są jeszcze obsługiwane w przypadku wnioskowania na urządzeniu Jeśli chcesz korzystać z którejś z tych funkcji, zalecamy używanie tylko modelu hostowanego w chmurze, aby zapewnić większą spójność.
Generowanie tekstu na podstawie danych wejściowych multimodalnych, takich jak obrazy, dźwięk, filmy i dokumenty (PDF).
Generowanie multimediów, takich jak obrazy, dźwięk lub filmy.
Wysyłanie żądań przekraczających 4096 tokenów (czyli około 3000 słów w języku angielskim).
Udostępnianie modelowi na urządzeniu wbudowanych narzędzi, które pomagają mu generować odpowiedzi (takich jak wykonywanie kodu, kontekst adresu URL i grounding za pomocą wyszukiwarki Google).
Monitorowanie wykorzystania AI w konsoli Firebase nie pokazuje żadnych danych dotyczących wnioskowania na urządzeniu (w tym dzienników urządzenia). Można jednak monitorować każde wnioskowanie, które korzysta z modelu hostowanego w chmurze, tak jak inne wnioskowanie za pomocą Firebase AI Logic.
Dodatkowe ograniczenia
Oprócz powyższych ograniczeń wnioskowanie na urządzeniu ma te ograniczenia:
Użytkownik Twojej aplikacji musi korzystać z urządzenia z włączoną funkcją Apple Intelligence.
Aplikacja może uruchamiać wnioskowanie na urządzeniu tylko wtedy, gdy działa na pierwszym planie.
Prześlij opinię o korzystaniu z Firebase AI Logic