Pierwsze kroki z Gemini API przy użyciu pakietów SDK Firebase AI Logic

Z tego przewodnika dowiesz się, jak zacząć wywoływać Gemini API bezpośrednio z aplikacji za pomocą Firebase AI Logic pakietów SDK klienta na wybranej platformie.

Możesz też skorzystać z tego przewodnika, aby zacząć uzyskiwać dostęp do Imagen modeli za pomocą Firebase AI Logic pakietów SDK.

Wymagania wstępne

W tym przewodniku założyliśmy, że wiesz, jak używać Xcode do tworzenia aplikacji na platformy Apple (np. iOS).

  • Upewnij się, że środowisko programistyczne i aplikacja na platformy Apple spełniają te wymagania:

    • Xcode w wersji 16.2 lub nowszej
    • Twoja aplikacja jest kierowana na system iOS 15 lub nowszy albo macOS 12 lub nowszy.
  • (Opcjonalnie) Wypróbuj przykładową aplikację.

    Pobieranie aplikacji do szybkiego startu

    Możesz szybko wypróbować pakiet SDK, zobaczyć pełną implementację różnych przypadków użycia lub skorzystać z przykładowej aplikacji, jeśli nie masz własnej aplikacji na platformy Apple. Aby użyć przykładowej aplikacji, musisz połączyć ją z projektem Firebase.

W tym przewodniku założyliśmy, że znasz Android Studio i umiesz tworzyć aplikacje na Androida.

  • Upewnij się, że Twoje środowisko programistyczne i aplikacja na Androida spełniają te wymagania:

    • Android Studio (najnowsza wersja),
    • Aplikacja jest kierowana na interfejs API na poziomie 21 lub wyższym.
  • (Opcjonalnie) Wypróbuj przykładową aplikację.

    Pobierz przykładową aplikację

    Możesz szybko wypróbować pakiet SDK, zobaczyć pełną implementację różnych przypadków użycia lub skorzystać z przykładowej aplikacji, jeśli nie masz własnej aplikacji na Androida. Aby użyć przykładowej aplikacji, musisz połączyć ją z projektem Firebase.

W tym przewodniku założyliśmy, że znasz Android Studio i umiesz tworzyć aplikacje na Androida.

  • Upewnij się, że Twoje środowisko programistyczne i aplikacja na Androida spełniają te wymagania:

    • Android Studio (najnowsza wersja),
    • Aplikacja jest kierowana na interfejs API na poziomie 21 lub wyższym.
  • (Opcjonalnie) Wypróbuj przykładową aplikację.

    Pobierz przykładową aplikację

    Możesz szybko wypróbować pakiet SDK, zobaczyć pełną implementację różnych przypadków użycia lub skorzystać z przykładowej aplikacji, jeśli nie masz własnej aplikacji na Androida. Aby użyć przykładowej aplikacji, musisz połączyć ją z projektem Firebase.

W tym przewodniku założyliśmy, że znasz JavaScript i umiesz go używać do tworzenia aplikacji internetowych. Ten przewodnik jest niezależny od platformy.

  • Upewnij się, że środowisko programistyczne i aplikacja internetowa spełniają te wymagania:

    • (Opcjonalnie) Node.js
    • Nowoczesna przeglądarka internetowa
  • (Opcjonalnie) Wypróbuj przykładową aplikację.

    Pobierz przykładową aplikację

    Możesz szybko wypróbować pakiet SDK, zobaczyć pełną implementację różnych przypadków użycia lub skorzystać z przykładowej aplikacji, jeśli nie masz własnej aplikacji internetowej. Aby użyć przykładowej aplikacji, musisz połączyć ją z projektem Firebase.

W tym przewodniku przyjęto założenie, że znasz już podstawy tworzenia aplikacji w Flutterze.

  • Upewnij się, że środowisko programistyczne i aplikacja Flutter spełniają te wymagania:

    • Dart 3.2.0 lub nowszy
  • (Opcjonalnie) Wypróbuj przykładową aplikację.

    Pobierz przykładową aplikację

    Możesz szybko wypróbować pakiet SDK, zobaczyć pełną implementację różnych przypadków użycia lub skorzystać z przykładowej aplikacji, jeśli nie masz własnej aplikacji Flutter. Aby użyć przykładowej aplikacji, musisz połączyć ją z projektem Firebase.

W tym przewodniku przyjęto założenie, że znasz już podstawy tworzenia gier w Unity.

  • Upewnij się, że Twoje środowisko programistyczne i gra w Unity spełniają te wymagania:

    • Unity Editor 2021 LTS lub nowszy
  • (Opcjonalnie) Wypróbuj przykładową aplikację.

    Pobierz przykładową aplikację

    Możesz szybko wypróbować pakiet SDK, zobaczyć pełną implementację różnych przypadków użycia lub skorzystać z przykładowej aplikacji, jeśli nie masz własnej gry na Unity. Aby używać aplikacji przykładowej, musisz połączyć ją z projektem Firebase.

Krok 1. Skonfiguruj projekt Firebase i połącz aplikację

  1. Zaloguj się w Firebasekonsoli, a potem wybierz projekt Firebase.

    Jeśli nie masz jeszcze projektu Firebase, kliknij Utwórz projekt, a następnie skorzystaj z jednej z tych opcji:

    • Opcja 1. Utwórz całkowicie nowy projekt Firebase (i powiązany z nim projektGoogle Cloud automatycznie), wpisując nową nazwę projektu w pierwszym kroku procesu „Tworzenie projektu”.

    • Opcja 2: „Dodaj Firebase” do istniejącego projektu Google Cloud, wybierając nazwę projektu Google Cloud z menu w pierwszym kroku procesu „Utwórz projekt”.

    Pamiętaj, że po wyświetleniu odpowiedniego komunikatu nie musisz konfigurować usługi Google Analytics, aby korzystać z pakietów SDK Firebase AI Logic.

  2. W konsoli Firebase otwórz stronę Firebase AI Logic.

  3. Kliknij Rozpocznij, aby uruchomić procedurę, która pomoże Ci skonfigurować wymagane interfejsy API i zasoby w projekcie.

  4. Wybierz dostawcę „Gemini API”, którego chcesz używać z pakietami SDK Firebase AI Logic. W każdej chwili możesz skonfigurować i używać innego dostawcy interfejsu API.

    • Gemini Developer API – rozliczenia opcjonalne (dostępne w bezpłatnym planie cenowym Spark, z możliwością późniejszego przejścia na wyższy poziom)
      Konsola włączy wymagane interfejsy API i utworzy w Twoim projekcie Geminiklucz interfejsu API.
      Nie dodawaj tego klucza interfejsu API Gemini do kodu aplikacji. Więcej informacji

    • Vertex AI Gemini API – wymagane rozliczenia (wymaga planu cenowego Blaze z płatnością za wykorzystanie)
      Konsola pomoże Ci skonfigurować rozliczenia i włączyć w projekcie wymagane interfejsy API.

  5. Jeśli w procesie w konsoli pojawi się odpowiedni monit, postępuj zgodnie z instrukcjami wyświetlanymi na ekranie, aby zarejestrować aplikację i połączyć ją z Firebase.

  6. Aby dodać pakiet SDK do aplikacji, przejdź do następnego kroku w tym przewodniku.

Krok 2. Dodaj pakiet SDK

Po skonfigurowaniu projektu Firebase i połączeniu aplikacji z Firebase (patrz poprzedni krok) możesz teraz dodać do aplikacji pakiet Firebase AI Logic SDK.

Do instalacji zależności Firebase i do zarządzania nimi możesz używać menedżera pakietów Swift.

Biblioteka Firebase AI Logic zapewnia dostęp do interfejsów API do interakcji z modelami GeminiImagen. 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ę 11.13.0 lub nowszą.

  1. Po otwarciu projektu aplikacji wybierz w Xcode opcję File > Add Package Dependencies (Plik > Dodaj zależności pakietu).

  2. Gdy pojawi się prośba, dodaj repozytorium pakietu SDK Firebase na platformy Apple:

    https://github.com/firebase/firebase-ios-sdk
    
  3. Wybierz najnowszą wersję pakietu SDK.

  4. Wybierz FirebaseAI bibliotekę.

Gdy skończysz, Xcode zacznie automatycznie wyszukiwać i pobierać zależności w tle.

Firebase AI Logic Pakiet SDK na Androida (firebase-ai) zapewnia dostęp do interfejsów API do interakcji z modelami GeminiImagen.

pliku Gradle modułu (na poziomie aplikacji) (np. <project>/<app-module>/build.gradle.kts) dodaj zależność dla biblioteki Firebase AI Logic na Androida. Zalecamy używanie Firebase Android BoM do kontrolowania wersji biblioteki.

dependencies {
  // ... other androidx dependencies

  // Import the BoM for the Firebase platform
  implementation(platform("com.google.firebase:firebase-bom:33.15.0"))

  // Add the dependency for the Firebase AI Logic library
  // When using the BoM, you don't specify versions in Firebase library dependencies
  implementation("com.google.firebase:firebase-ai")
}

Gdy korzystamy z Firebase Android BoM, aplikacja zawsze używa zgodnych wersji bibliotek Firebase na Androida.

Jeśli nie zdecydujesz się na użycie Firebase BoM, musisz określić wersję każdej biblioteki Firebase w wierszu zależności.

Pamiętaj, że jeśli w aplikacji używasz kilku bibliotek Firebase, zdecydowanie zalecamy używanie BoM do zarządzania wersjami bibliotek, co zapewnia zgodność wszystkich wersji.

dependencies {
  // Add the dependency for the Firebase AI Logic library
  // When NOT using the BoM, you must specify versions in Firebase library dependencies
  implementation("com.google.firebase:firebase-ai:16.1.0")
}

Firebase AI Logic Pakiet SDK na Androida (firebase-ai) zapewnia dostęp do interfejsów API do interakcji z modelami GeminiImagen.

pliku Gradle modułu (na poziomie aplikacji) (np. <project>/<app-module>/build.gradle.kts) dodaj zależność dla biblioteki Firebase AI Logic na Androida. Zalecamy używanie Firebase Android BoM do kontrolowania wersji biblioteki.

W przypadku Javy musisz dodać 2 dodatkowe biblioteki.

dependencies {
  // ... other androidx dependencies

  // Import the BoM for the Firebase platform
  implementation(platform("com.google.firebase:firebase-bom:33.15.0"))

  // Add the dependency for the Firebase AI Logic library
  // When using the BoM, you don't specify versions in Firebase library dependencies
  implementation("com.google.firebase:firebase-ai")

  // Required for one-shot operations (to use `ListenableFuture` from Guava Android)
  implementation("com.google.guava:guava:31.0.1-android")

  // Required for streaming operations (to use `Publisher` from Reactive Streams)
  implementation("org.reactivestreams:reactive-streams:1.0.4")
}

Gdy korzystamy z Firebase Android BoM, aplikacja zawsze używa zgodnych wersji bibliotek Firebase na Androida.

Jeśli nie zdecydujesz się na użycie Firebase BoM, musisz określić wersję każdej biblioteki Firebase w wierszu zależności.

Pamiętaj, że jeśli w aplikacji używasz kilku bibliotek Firebase, zdecydowanie zalecamy używanie BoM do zarządzania wersjami bibliotek, co zapewnia zgodność wszystkich wersji.

dependencies {
  // Add the dependency for the Firebase AI Logic library
  // When NOT using the BoM, you must specify versions in Firebase library dependencies
  implementation("com.google.firebase:firebase-ai:16.1.0")
}

Biblioteka Firebase AI Logic zapewnia dostęp do interfejsów API do interakcji z modelami GeminiImagen. Biblioteka jest częścią pakietu Firebase JavaScript SDK dla internetu.

  1. Zainstaluj pakiet Firebase JS SDK na potrzeby internetu za pomocą npm:

    npm install firebase
    
  2. Zainicjuj Firebase w aplikacji:

    import { initializeApp } from "firebase/app";
    
    // TODO(developer) Replace the following with your app's Firebase configuration
    // See: https://firebase.google.com/docs/web/learn-more#config-object
    const firebaseConfig = {
      // ...
    };
    
    // Initialize FirebaseApp
    const firebaseApp = initializeApp(firebaseConfig);
    

Firebase AI LogicWtyczka do Fluttera (firebase_ai) zapewnia dostęp do interfejsów API do interakcji z modelami GeminiImagen.

  1. W katalogu projektu Flutter uruchom to polecenie, aby zainstalować wtyczkę podstawową i wtyczkę Firebase AI Logic:

    flutter pub add firebase_core && flutter pub add firebase_ai
    
  2. W pliku lib/main.dart zaimportuj podstawową wtyczkę Firebase, wtyczkę Firebase AI Logic i plik konfiguracji wygenerowany wcześniej:

    import 'package:firebase_core/firebase_core.dart';
    import 'package:firebase_ai/firebase_ai.dart';
    import 'firebase_options.dart';
    
  3. W pliku lib/main.dart zainicjuj Firebase za pomocą obiektu DefaultFirebaseOptions wyeksportowanego przez plik konfiguracji:

    await Firebase.initializeApp(
      options: DefaultFirebaseOptions.currentPlatform,
    );
    
  4. Przebuduj aplikację Flutter:

    flutter run
    
  1. Pobierz Firebase Unity SDK, a następnie wyodrębnij go w wygodnym miejscu.

    Pakiet SDK Firebase Unity nie jest przeznaczony dla konkretnej platformy.

  2. W otwartym projekcie Unity kliknij Assets (Zasoby) > Import Package (Importuj pakiet) > Custom Package (Własny pakiet).

  3. W wyodrębnionym pakiecie SDK wybierz FirebaseAI.

  4. W oknie Import Unity Package (Importowanie pakietu dla Unity) kliknij Import (Importuj).

  5. Wróć do konsoli Firebase i w przepływie pracy konfiguracji kliknij Dalej.

Krok 3. Zainicjuj usługę i utwórz instancję modelu

Kliknij dostawcę Gemini API, aby wyświetlić na tej stronie treści i kod dostawcy.

Jeśli używasz pakietów SDK klienta Firebase AI LogicGemini Developer API, NIE dodawaj klucza interfejsu API Gemini do kodu aplikacji. Więcej informacji

Przed wysłaniem promptu do Gemini modelu zainicjuj usługę dla wybranego dostawcy interfejsu API i utwórz instancję GenerativeModel.


import FirebaseAI

// Initialize the Gemini Developer API backend service
let ai = FirebaseAI.firebaseAI(backend: .googleAI())

// Create a `GenerativeModel` instance with a model that supports your use case
let model = ai.generativeModel(modelName: "gemini-2.5-flash")


// Initialize the Gemini Developer API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
val model = Firebase.ai(backend = GenerativeBackend.googleAI())
                        .generativeModel("gemini-2.5-flash")


// Initialize the Gemini Developer API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
GenerativeModel ai = FirebaseAI.getInstance(GenerativeBackend.googleAI())
        .generativeModel("gemini-2.5-flash");

// Use the GenerativeModelFutures Java compatibility layer which offers
// support for ListenableFuture and Publisher APIs
GenerativeModelFutures model = GenerativeModelFutures.from(ai);


import { initializeApp } from "firebase/app";
import { getAI, getGenerativeModel, GoogleAIBackend } from "firebase/ai";

// TODO(developer) Replace the following with your app's Firebase configuration
// See: https://firebase.google.com/docs/web/learn-more#config-object
const firebaseConfig = {
  // ...
};

// Initialize FirebaseApp
const firebaseApp = initializeApp(firebaseConfig);

// Initialize the Gemini Developer API backend service
const ai = getAI(firebaseApp, { backend: new GoogleAIBackend() });

// Create a `GenerativeModel` instance with a model that supports your use case
const model = getGenerativeModel(ai, { model: "gemini-2.5-flash" });


import 'package:firebase_ai/firebase_ai.dart';
import 'package:firebase_core/firebase_core.dart';
import 'firebase_options.dart';

// Initialize FirebaseApp
await Firebase.initializeApp(
  options: DefaultFirebaseOptions.currentPlatform,
);

// Initialize the Gemini Developer API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
final model =
      FirebaseAI.googleAI().generativeModel(model: 'gemini-2.5-flash');


using Firebase;
using Firebase.AI;

// Initialize the Gemini Developer API backend service
var ai = FirebaseAI.GetInstance(FirebaseAI.Backend.GoogleAI());

// Create a `GenerativeModel` instance with a model that supports your use case
var model = ai.GetGenerativeModel(modelName: "gemini-2.5-flash");

Pamiętaj, że w zależności od używanej funkcji nie zawsze możesz utworzyć instancję GenerativeModel.

Po przeczytaniu tego przewodnika dla początkujących dowiedz się, jak wybrać model do swojego przypadku użycia i aplikacji.

Krok 4. Wyślij do modelu prośbę (prompt)

Możesz już wysłać żądanie prompta do modelu Gemini.

Możesz użyć generateContent(), aby wygenerować tekst na podstawie prompta zawierającego tekst:


import FirebaseAI

// Initialize the Gemini Developer API backend service
let ai = FirebaseAI.firebaseAI(backend: .googleAI())

// Create a `GenerativeModel` instance with a model that supports your use case
let model = ai.generativeModel(modelName: "gemini-2.5-flash")

// Provide a prompt that contains text
let prompt = "Write a story about a magic backpack."

// To generate text output, call generateContent with the text input
let response = try await model.generateContent(prompt)
print(response.text ?? "No text in response.")
W przypadku Kotlina metody w tym pakiecie SDK są funkcjami zawieszającymi i muszą być wywoływane w zakresie Coroutine.

// Initialize the Gemini Developer API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
val model = Firebase.ai(backend = GenerativeBackend.googleAI())
                        .generativeModel("gemini-2.5-flash")

// Provide a prompt that contains text
val prompt = "Write a story about a magic backpack."

// To generate text output, call generateContent with the text input
val response = generativeModel.generateContent(prompt)
print(response.text)
W przypadku języka Java metody w tym pakiecie SDK zwracają wartość ListenableFuture.

// Initialize the Gemini Developer API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
GenerativeModel ai = FirebaseAI.getInstance(GenerativeBackend.googleAI())
        .generativeModel("gemini-2.5-flash");

// Use the GenerativeModelFutures Java compatibility layer which offers
// support for ListenableFuture and Publisher APIs
GenerativeModelFutures model = GenerativeModelFutures.from(ai);

// Provide a prompt that contains text
Content prompt = new Content.Builder()
    .addText("Write a story about a magic backpack.")
    .build();

// To generate text output, call generateContent with the text input
ListenableFuture<GenerateContentResponse> response = model.generateContent(prompt);
Futures.addCallback(response, new FutureCallback<GenerateContentResponse>() {
    @Override
    public void onSuccess(GenerateContentResponse result) {
        String resultText = result.getText();
        System.out.println(resultText);
    }

    @Override
    public void onFailure(Throwable t) {
        t.printStackTrace();
    }
}, executor);

import { initializeApp } from "firebase/app";
import { getAI, getGenerativeModel, GoogleAIBackend } from "firebase/ai";

// TODO(developer) Replace the following with your app's Firebase configuration
// See: https://firebase.google.com/docs/web/learn-more#config-object
const firebaseConfig = {
  // ...
};

// Initialize FirebaseApp
const firebaseApp = initializeApp(firebaseConfig);

// Initialize the Gemini Developer API backend service
const ai = getAI(firebaseApp, { backend: new GoogleAIBackend() });

// Create a `GenerativeModel` instance with a model that supports your use case
const model = getGenerativeModel(ai, { model: "gemini-2.5-flash" });

// Wrap in an async function so you can use await
async function run() {
  // Provide a prompt that contains text
  const prompt = "Write a story about a magic backpack."

  // To generate text output, call generateContent with the text input
  const result = await model.generateContent(prompt);

  const response = result.response;
  const text = response.text();
  console.log(text);
}

run();

import 'package:firebase_ai/firebase_ai.dart';
import 'package:firebase_core/firebase_core.dart';
import 'firebase_options.dart';

// Initialize FirebaseApp
await Firebase.initializeApp(
  options: DefaultFirebaseOptions.currentPlatform,
);

// Initialize the Gemini Developer API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
final model =
      FirebaseAI.googleAI().generativeModel(model: 'gemini-2.5-flash');

// Provide a prompt that contains text
final prompt = [Content.text('Write a story about a magic backpack.')];

// To generate text output, call generateContent with the text input
final response = await model.generateContent(prompt);
print(response.text);

using Firebase;
using Firebase.AI;

// Initialize the Gemini Developer API backend service
var ai = FirebaseAI.GetInstance(FirebaseAI.Backend.GoogleAI());

// Create a `GenerativeModel` instance with a model that supports your use case
var model = ai.GetGenerativeModel(modelName: "gemini-2.5-flash");

// Provide a prompt that contains text
var prompt = "Write a story about a magic backpack.";

// To generate text output, call GenerateContentAsync with the text input
var response = await model.GenerateContentAsync(prompt);
UnityEngine.Debug.Log(response.Text ?? "No text in response.");

Co jeszcze możesz zrobić?

Więcej informacji o obsługiwanych modelach

Dowiedz się więcej o modelach dostępnych w różnych przypadkach użycia, ich limitachcenach.

Wypróbuj inne funkcje

Dowiedz się, jak kontrolować generowanie treści

Możesz też eksperymentować z promptami i konfiguracjami modeli, a nawet uzyskać wygenerowany fragment kodu za pomocą Google AI Studio.


Prześlij opinię o korzystaniu z usługi Firebase AI Logic