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
Swift
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.
Kotlin
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.
Java
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.
Web
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
Dart
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
Unity
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
Przydatne materiały
Swift
Wypróbuj aplikację z krótkiego wprowadzenia
Skorzystaj z aplikacji do szybkiego rozpoczęcia, aby szybko wypróbować pakiet SDK i zobaczyć pełną implementację różnych przypadków użycia. Możesz też użyć aplikacji szybkiego startu, jeśli nie masz własnej aplikacji na platformy Apple. Aby to zrobić, musisz połączyć ją z projektem Firebase.
Otwórz aplikację szybkiego startu
Obejrzyj samouczek wideo
Z tego filmu dowiesz się, jak zacząć korzystać z Firebase AI Logic, tworząc prawdziwą aplikację do planowania posiłków opartą na AI, która generuje przepisy na podstawie prompta tekstowego.
Możesz też pobrać i przejrzeć bazę kodu aplikacji z filmu.
Wyświetlanie bazy kodu aplikacji, w której znajduje się film
Kotlin
Wypróbuj aplikację z krótkiego wprowadzenia
Skorzystaj z aplikacji do szybkiego rozpoczęcia, aby szybko wypróbować pakiet SDK i zobaczyć pełną implementację różnych przypadków użycia. Jeśli nie masz własnej aplikacji na Androida, możesz użyć aplikacji szybkiego startu. Aby to zrobić, musisz połączyć ją z projektem Firebase.
Otwórz aplikację szybkiego startu
Obejrzyj samouczek wideo
Z tego filmu dowiesz się, jak zacząć korzystać z Firebase AI Logic, tworząc prawdziwą aplikację do planowania posiłków opartą na AI, która generuje przepisy na podstawie prompta tekstowego.
Możesz też pobrać i przejrzeć bazę kodu aplikacji z filmu.
Wyświetlanie bazy kodu aplikacji, w której znajduje się film
Java
Wypróbuj aplikację z krótkiego wprowadzenia
Skorzystaj z aplikacji do szybkiego rozpoczęcia, aby szybko wypróbować pakiet SDK i zobaczyć pełną implementację różnych przypadków użycia. Jeśli nie masz własnej aplikacji na Androida, możesz użyć aplikacji szybkiego startu. Aby to zrobić, musisz połączyć ją z projektem Firebase.
Otwórz aplikację szybkiego startu
Obejrzyj samouczek wideo
Ten film pokazuje, jak zacząć korzystać z Firebase AI Logic, tworząc opartą na AI aplikację do planowania posiłków, która generuje przepisy na podstawie prompta tekstowego.*
Możesz też pobrać i przejrzeć bazę kodu aplikacji z filmu.
Wyświetlanie bazy kodu aplikacji, w której znajduje się film
* Ten film i powiązana z nim aplikacja są napisane w języku Kotlin, ale mogą pomóc programistom Java w zrozumieniu podstawowych informacji o tym, jak zacząć korzystać z Firebase AI Logic.
Web
Wypróbuj aplikację z krótkiego wprowadzenia
Skorzystaj z aplikacji do szybkiego rozpoczęcia, aby szybko wypróbować pakiet SDK i zobaczyć pełną implementację różnych przypadków użycia. Jeśli nie masz własnej aplikacji internetowej, możesz użyć aplikacji szybkiego startu. Aby to zrobić, musisz połączyć ją z projektem Firebase.
Dart
Wypróbuj aplikację z krótkiego wprowadzenia
Skorzystaj z aplikacji do szybkiego rozpoczęcia, aby szybko wypróbować pakiet SDK i zobaczyć pełną implementację różnych przypadków użycia. Jeśli nie masz własnej aplikacji Flutter, możesz użyć aplikacji szybkiego startu. Aby to zrobić, musisz połączyć ją z projektem Firebase.
Otwórz aplikację szybkiego startu
Obejrzyj samouczek wideo
Z tego filmu dowiesz się, jak zacząć korzystać z Firebase AI Logic, tworząc prawdziwą aplikację do planowania posiłków opartą na AI, która generuje przepisy na podstawie prompta tekstowego.
Możesz też pobrać i przejrzeć bazę kodu aplikacji z filmu.
Wyświetlanie bazy kodu aplikacji, w której znajduje się film
Unity
Wypróbuj aplikację z krótkiego wprowadzenia
Skorzystaj z aplikacji do szybkiego rozpoczęcia, aby szybko wypróbować pakiet SDK i zobaczyć pełną implementację różnych przypadków użycia. Jeśli nie masz własnej gry w Unity, możesz użyć aplikacji do szybkiego rozpoczęcia. Aby używać aplikacji szybkiego startu, musisz połączyć ją z projektem Firebase.
Krok 1. Skonfiguruj projekt Firebase i połącz aplikację
Zaloguj się w Firebasekonsoli, a potem wybierz projekt Firebase.
W konsoli Firebase otwórz stronę Firebase AI Logic.
Kliknij Rozpocznij, aby uruchomić procedurę, która pomoże Ci skonfigurować wymagane interfejsy API i zasoby w projekcie.
Wybierz dostawcę „Gemini API”, którego chcesz używać z pakietami SDK Firebase AI Logic. Gemini Developer API jest zalecany dla nowych użytkowników. Jeśli chcesz, możesz później dodać informacje rozliczeniowe lub skonfigurować Vertex AI Gemini 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 informacjiVertex 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.
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.
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.
Swift
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 Gemini i Imagen. 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ą.
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-sdk
Wybierz najnowszą wersję pakietu SDK.
Wybierz
FirebaseAI
bibliotekę.
Gdy skończysz, Xcode zacznie automatycznie wyszukiwać i pobierać zależności w tle.
Kotlin
Firebase AI Logic Pakiet SDK na Androida (firebase-ai
) zapewnia dostęp do interfejsów API do interakcji z modelami Gemini i Imagen.
W pliku Gradle modułu (na poziomie aplikacji) (np. <project>/<app-module>/build.gradle.kts
) dodaj zależność z biblioteką 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:34.1.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.
Java
Firebase AI Logic Pakiet SDK na Androida (firebase-ai
) zapewnia dostęp do interfejsów API do interakcji z modelami Gemini i Imagen.
W pliku Gradle modułu (na poziomie aplikacji) (np. <project>/<app-module>/build.gradle.kts
) dodaj zależność z biblioteką 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:34.1.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.
Web
Biblioteka Firebase AI Logic zapewnia dostęp do interfejsów API do interakcji z modelami Gemini i Imagen. Biblioteka jest częścią pakietu Firebase JavaScript SDK dla internetu.
Zainstaluj pakiet Firebase JS SDK na potrzeby internetu za pomocą npm:
npm install firebase
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);
Dart
Firebase AI Logic wtyczka do Fluttera (firebase_ai
) zapewnia dostęp do interfejsów API do interakcji z modelami Gemini i Imagen.
W katalogu projektu Flutter uruchom to polecenie, aby zainstalować wtyczkę podstawową i wtyczkę Firebase AI Logic:
flutter pub add firebase_core firebase_ai
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';
W pliku
lib/main.dart
zainicjuj Firebase za pomocą obiektuDefaultFirebaseOptions
wyeksportowanego przez plik konfiguracji:await Firebase.initializeApp( options: DefaultFirebaseOptions.currentPlatform, );
Przebuduj aplikację Flutter:
flutter run
Unity
Pobierz Firebase Unity SDK, a następnie wyodrębnij go w wygodnym miejscu.
Pakiet SDK Firebase Unity nie jest przeznaczony dla konkretnej platformy.
W otwartym projekcie Unity kliknij Assets (Zasoby) > Import Package (Importuj pakiet) > Custom Package (Własny pakiet).
W wyodrębnionym pakiecie SDK wybierz
FirebaseAI
.W oknie Import Unity Package (Importowanie pakietu dla Unity) kliknij Import (Importuj).
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. |
Przed wysłaniem promptu do Gemini modelu zainicjuj usługę dla wybranego dostawcy interfejsu API i utwórz instancję GenerativeModel
.
Swift
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")
Kotlin
// 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")
Java
// 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);
Web
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" });
Dart
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');
Unity
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
.
- Aby uzyskać dostęp do modelu Imagen, utwórz instancję
ImagenModel
. - Aby przesyłać strumieniowo dane wejściowe i wyjściowe za pomocą Gemini Live API, utwórz instancję
LiveModel
.
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:
Swift
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.")
Kotlin
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)
Java
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);
Web
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();
Dart
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);
Unity
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 limitach i cenach.
Wypróbuj inne funkcje
- Dowiedz się więcej o generowaniu tekstu na podstawie promptów tekstowych, w tym o tym, jak przesyłać strumieniowo odpowiedź.
- Generuj tekst, podając różne typy plików, np. obrazy, pliki PDF, filmy i pliki audio.
- Twórz rozmowy wieloetapowe (czat).
- Generowanie danych wyjściowych o strukturze (np. JSON) na podstawie promptów tekstowych i multimodalnych.
- Generuj obrazy na podstawie promptów tekstowych (Gemini lub Imagen).
- Przesyłanie strumieniowe danych wejściowych i wyjściowych (w tym audio) za pomocą Gemini Live API.
- Używaj narzędzi (takich jak wywoływanie funkcji i uzyskiwanie dostępu do informacji z wyszukiwarki Google), aby połączyć model Gemini z innymi częściami aplikacji oraz zewnętrznymi systemami i informacjami.
Dowiedz się, jak kontrolować generowanie treści
- Poznaj projektowanie promptów, w tym sprawdzone metody, strategie i przykładowe prompty.
- Skonfiguruj parametry modelu, takie jak temperatura i maksymalna liczba tokenów wyjściowych (w przypadku Gemini) lub format obrazu i generowanie osób (w przypadku Imagen).
- Użyj ustawień bezpieczeństwa, aby dostosować prawdopodobieństwo otrzymania odpowiedzi, które mogą być uznane za szkodliwe.
Prześlij opinię o korzystaniu z usługi Firebase AI Logic