В этом руководстве показано, как начать выполнять вызовы к API Gemini непосредственно из вашего приложения, используя клиентские SDK Firebase AI Logic для выбранной вами платформы.
Это руководство также поможет вам начать работу с моделями Imagen , используя SDK Firebase AI Logic .
Предварительные требования
Быстрый
В этом руководстве предполагается, что вы знакомы с использованием Xcode для разработки приложений для платформ Apple (например, iOS).
Убедитесь, что ваша среда разработки и приложение для платформ Apple соответствуют следующим требованиям:
- Xcode 16.2 или выше
- Ваше приложение предназначено для iOS 15 или выше, либо для macOS 12 или выше.
Kotlin
В этом руководстве предполагается, что вы знакомы с использованием Android Studio для разработки приложений для Android.
Убедитесь, что ваша среда разработки и Android-приложение соответствуют следующим требованиям:
- Android Studio (последняя версия)
- Ваше приложение ориентировано на API уровня 21 или выше.
Java
В этом руководстве предполагается, что вы знакомы с использованием Android Studio для разработки приложений для Android.
Убедитесь, что ваша среда разработки и Android-приложение соответствуют следующим требованиям:
- Android Studio (последняя версия)
- Ваше приложение ориентировано на API уровня 21 или выше.
Web
Данное руководство предполагает, что вы знакомы с использованием JavaScript для разработки веб-приложений. Данное руководство не зависит от используемого фреймворка.
Убедитесь, что ваша среда разработки и веб-приложение соответствуют следующим требованиям:
- (Необязательно) Node.js
- Современный веб-браузер
Dart
В этом руководстве предполагается, что вы знакомы с разработкой приложений с использованием Flutter.
Убедитесь, что ваша среда разработки и приложение Flutter соответствуют следующим требованиям:
- Dart 3.2.0+
Единство
В этом руководстве предполагается, что вы знакомы с разработкой игр с использованием Unity.
Убедитесь, что ваша среда разработки и игра Unity соответствуют следующим требованиям:
- Unity Editor 2021 LTS или более поздняя версия
Ознакомьтесь с полезными ресурсами.
Быстрый
Попробуйте приложение для быстрого запуска.
Воспользуйтесь приложением быстрого запуска, чтобы быстро протестировать SDK и увидеть полную реализацию различных вариантов использования. Или используйте приложение быстрого запуска, если у вас нет собственного приложения для платформ Apple. Для использования приложения быстрого запуска вам потребуется подключить его к проекту Firebase .
Перейдите в приложение «Быстрый запуск».
Посмотрите видеоурок
В этом видео показано, как начать работу с Firebase AI Logic , создав реальное приложение для планирования питания на основе искусственного интеллекта, которое генерирует рецепты на основе текстовой подсказки.
Вы также можете скачать и изучить исходный код приложения, показанного в видео.
Посмотреть код приложения, в котором размещен видеоролик.
Kotlin
Попробуйте приложение для быстрого запуска.
Воспользуйтесь приложением быстрого запуска, чтобы быстро протестировать SDK и увидеть полную реализацию различных вариантов использования. Или используйте приложение быстрого запуска, если у вас нет собственного приложения для Android. Для использования приложения быстрого запуска вам потребуется подключить его к проекту Firebase .
Перейдите в приложение «Быстрый запуск».
Посмотрите видеоурок
В этом видео показано, как начать работу с Firebase AI Logic , создав реальное приложение для планирования питания на основе искусственного интеллекта, которое генерирует рецепты на основе текстовой подсказки.
Вы также можете скачать и изучить исходный код приложения, показанного в видео.
Посмотреть код приложения, в котором размещен видеоролик.
Java
Попробуйте приложение для быстрого запуска.
Воспользуйтесь приложением быстрого запуска, чтобы быстро протестировать SDK и увидеть полную реализацию различных вариантов использования. Или используйте приложение быстрого запуска, если у вас нет собственного приложения для Android. Для использования приложения быстрого запуска вам потребуется подключить его к проекту Firebase .
Перейдите в приложение «Быстрый запуск».
Посмотрите видеоурок
В этом видео показано, как начать работу с Firebase AI Logic , создав реальное приложение для планирования питания на основе искусственного интеллекта, которое генерирует рецепты по текстовому запросу. *
Вы также можете скачать и изучить исходный код приложения, показанного в видео.
Посмотреть код приложения, в котором размещен видеоролик.
* Это видео и приложение написаны на Kotlin, но они также могут помочь Java-разработчикам понять основы начала работы с Firebase AI Logic .
Web
Попробуйте приложение для быстрого запуска.
Воспользуйтесь приложением быстрого запуска, чтобы быстро протестировать SDK и увидеть полную реализацию различных вариантов использования. Или используйте приложение быстрого запуска, если у вас нет собственного веб-приложения. Для использования приложения быстрого запуска вам потребуется подключить его к проекту Firebase .
Dart
Попробуйте приложение для быстрого запуска.
Воспользуйтесь приложением быстрого запуска, чтобы быстро протестировать SDK и увидеть полную реализацию различных вариантов использования. Или используйте приложение быстрого запуска, если у вас нет собственного приложения Flutter. Для использования приложения быстрого запуска вам потребуется подключить его к проекту Firebase .
Перейдите в приложение «Быстрый запуск».
Посмотрите видеоурок
В этом видео показано, как начать работу с Firebase AI Logic , создав реальное приложение для планирования питания на основе искусственного интеллекта, которое генерирует рецепты на основе текстовой подсказки.
Вы также можете скачать и изучить исходный код приложения, показанного в видео.
Посмотреть код приложения, в котором размещен видеоролик.
Единство
Попробуйте приложение для быстрого запуска.
Воспользуйтесь приложением быстрого запуска, чтобы быстро опробовать SDK и увидеть полную реализацию различных вариантов использования. Или используйте приложение быстрого запуска, если у вас нет собственной игры на Unity. Для использования приложения быстрого запуска вам потребуется подключить его к проекту Firebase .
Шаг 1 : Создайте проект Firebase и подключите к нему ваше приложение.
Войдите в консоль Firebase , а затем выберите свой проект Firebase.
Если у вас еще нет проекта Firebase, нажмите кнопку для создания нового проекта Firebase, а затем воспользуйтесь одним из следующих вариантов:
Вариант 1 : Создайте совершенно новый проект Firebase (и автоматически сформируйте для него базовый проект Google Cloud ), указав новое имя проекта на первом шаге рабочего процесса.
Вариант 2 : "Добавить Firebase" в существующий проект Google Cloud , нажав кнопку "Добавить Firebase в проект Google Cloud" (внизу страницы). На первом шаге процесса начните вводить название существующего проекта, а затем выберите проект из отображаемого списка.
Выполните оставшиеся шаги отображаемого на экране процесса, чтобы создать проект Firebase. Обратите внимание, что при появлении соответствующего запроса вам не потребуется настраивать Google Analytics для использования SDK Firebase AI Logic .
В консоли Firebase перейдите на страницу Firebase AI Logic .
Нажмите « Начать» , чтобы запустить пошаговый рабочий процесс, который поможет вам настроить необходимые API и ресурсы для вашего проекта.
Выберите поставщика « Gemini API », которого вы хотите использовать с SDK Firebase AI Logic . Для начинающих пользователей рекомендуется использовать Gemini Developer API . При желании вы всегда можете добавить оплату или настроить Vertex AI Gemini API позже.
API для разработчиков Gemini — оплата необязательна (доступно в бесплатном тарифном плане Spark, при желании можно перейти на более дорогой тариф).
Консоль активирует необходимые API и создаст ключ API Gemini в вашем проекте.
Не добавляйте этот API-ключ Gemini в код вашего приложения. Узнайте больше.API Vertex AI Gemini — требуется оплата (требуется тарифный план Blaze с оплатой по факту использования)
Консоль поможет вам настроить выставление счетов и включить необходимые API в вашем проекте.
Если в процессе работы консоли появится соответствующее сообщение, следуйте инструкциям на экране, чтобы зарегистрировать ваше приложение и подключить его к Firebase.
Чтобы добавить SDK в ваше приложение, перейдите к следующему шагу в этом руководстве.
Шаг 2 : Добавьте SDK
После настройки проекта Firebase и подключения приложения к Firebase (см. предыдущий шаг) вы можете добавить SDK Firebase AI Logic в свое приложение.
Быстрый
Используйте Swift Package Manager для установки и управления зависимостями Firebase.
Библиотека Firebase AI Logic предоставляет доступ к API для взаимодействия с моделями Gemini и Imagen . Библиотека входит в состав Firebase SDK для платформ Apple ( firebase-ios-sdk ).
Если вы уже используете Firebase, убедитесь, что версия вашего пакета Firebase — 12.5.0 или более поздняя.
В Xcode, открыв проект приложения, перейдите в меню File > Add Package Dependencies .
При появлении запроса добавьте репозиторий Firebase Apple Platforms SDK:
https://github.com/firebase/firebase-ios-sdkВыберите последнюю версию SDK.
Выберите библиотеку
FirebaseAILogic.
После завершения Xcode автоматически начнет разрешение и загрузку ваших зависимостей в фоновом режиме.
Kotlin
Firebase AI Logic SDK для Android ( firebase-ai ) предоставляет доступ к API для взаимодействия с моделями Gemini и Imagen .
В файле Gradle вашего модуля (уровня приложения) (например, <project>/<app-module>/build.gradle.kts ) добавьте зависимость от библиотеки Firebase AI Logic для Android. Мы рекомендуем использовать Firebase Android BoM для управления версиями библиотек.
dependencies { // ... other androidx dependencies // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:34.7.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") }
Использование Firebase Android BoM , что ваше приложение всегда будет использовать совместимые версии библиотек Firebase Android.
Если вы решите не использовать Firebase BoM , вам необходимо указать версию каждой библиотеки Firebase в строке зависимости.
Обратите внимание, что если вы используете несколько библиотек Firebase в своем приложении, мы настоятельно рекомендуем использовать BoM для управления версиями библиотек, что гарантирует совместимость всех версий.
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:17.7.0") }
Java
Firebase AI Logic SDK для Android ( firebase-ai ) предоставляет доступ к API для взаимодействия с моделями Gemini и Imagen .
В файле Gradle вашего модуля (уровня приложения) (например, <project>/<app-module>/build.gradle.kts ) добавьте зависимость от библиотеки Firebase AI Logic для Android. Мы рекомендуем использовать Firebase Android BoM для управления версиями библиотек.
Для Java необходимо добавить две дополнительные библиотеки.
dependencies { // ... other androidx dependencies // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:34.7.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") }
Использование Firebase Android BoM , что ваше приложение всегда будет использовать совместимые версии библиотек Firebase Android.
Если вы решите не использовать Firebase BoM , вам необходимо указать версию каждой библиотеки Firebase в строке зависимости.
Обратите внимание, что если вы используете несколько библиотек Firebase в своем приложении, мы настоятельно рекомендуем использовать BoM для управления версиями библиотек, что гарантирует совместимость всех версий.
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:17.7.0") }
Web
Библиотека Firebase AI Logic предоставляет доступ к API для взаимодействия с моделями Gemini и Imagen . Библиотека входит в состав Firebase JavaScript SDK для веб-приложений.
Установите Firebase JS SDK для веб-разработки с помощью npm:
npm install firebaseИнициализируйте Firebase в своем приложении:
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 для Flutter ( firebase_ai ) предоставляет доступ к API для взаимодействия с моделями Gemini и Imagen .
В каталоге вашего проекта Flutter выполните следующую команду для установки основного плагина и плагина Firebase AI Logic :
flutter pub add firebase_core firebase_aiВ файле
lib/main.dartимпортируйте основной плагин Firebase, плагин Firebase AI Logic и сгенерированный ранее конфигурационный файл:import 'package:firebase_core/firebase_core.dart'; import 'package:firebase_ai/firebase_ai.dart'; import 'firebase_options.dart';Также в файле
lib/main.dartинициализируйте Firebase, используя объектDefaultFirebaseOptions, экспортируемый из файла конфигурации:await Firebase.initializeApp( options: DefaultFirebaseOptions.currentPlatform, );Пересоберите ваше Flutter-приложение:
flutter run
Единство
Загрузите Firebase Unity SDK , затем распакуйте SDK в удобное для вас место.
SDK Firebase Unity не привязан к конкретной платформе.
В открытом проекте Unity перейдите в Assets > Import Package > Custom Package .
Из извлеченного SDK выберите пакет
FirebaseAI.В окне «Импорт пакета Unity» нажмите «Импорт» .
Вернувшись в консоль Firebase , в процессе настройки нажмите «Далее» .
Шаг 3 : Инициализируйте сервис и создайте экземпляр модели.
Чтобы просмотреть контент и код, относящиеся к вашему поставщику API Gemini , нажмите на него. |
Перед отправкой запроса модели Gemini инициализируйте сервис для выбранного вами API-провайдера и создайте экземпляр GenerativeModel .
Быстрый
import FirebaseAILogic
// 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');
Единство
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");
Обратите внимание, что в зависимости от используемых вами возможностей, вы не всегда можете создать экземпляр GenerativeModel .
- Для доступа к модели Imagen создайте экземпляр
ImagenModel. - Для потоковой передачи входных и выходных данных с использованием Gemini Live API создайте экземпляр
LiveModel.
Кроме того, после ознакомления с этим руководством по началу работы вы узнаете, как выбрать модель , подходящую для ваших задач и приложения.
Шаг 4 : Отправьте запрос модели.
Теперь вы можете отправить запрос на подключение модели Gemini .
Вы можете использовать generateContent() для генерации текста из запроса, содержащего текст:
Быстрый
import FirebaseAILogic
// 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
В Kotlin методы в этом SDK являются функциями приостановки и должны вызываться из области видимости сопрограммы .
// 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 = model.generateContent(prompt)
print(response.text)
Java
В Java методы этого SDK возвращают объект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);
Единство
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.");
Что еще можно сделать?
Узнайте больше о поддерживаемых моделях
Узнайте о моделях, доступных для различных вариантов использования , а также об их квотах и ценах .Попробуйте другие возможности.
- Узнайте больше о генерации текста на основе текстовых запросов , в том числе о том, как передавать ответ в потоковом режиме.
- Генерируйте текст, запрашивая различные типы файлов, такие как изображения , PDF-файлы , видео и аудио .
- Создавайте многоэтапные диалоги (чат) .
- Генерируйте структурированный вывод (например, в формате JSON) как из текстовых, так и из мультимодальных запросов.
- Создавайте изображения на основе текстовых подсказок ( Gemini или Imagen ).
- Осуществляйте потоковую передачу входного и выходного сигнала (включая звук) с помощью Gemini Live API .
- Используйте инструменты (например, вызов функций и привязку к Google Search ), чтобы связать модель Gemini с другими частями вашего приложения, а также с внешними системами и информацией.
Узнайте, как управлять генерацией контента.
- Разберитесь в разработке подсказок для заданий , включая лучшие практики, стратегии и примеры подсказок.
- Настройте параметры модели , такие как температура и максимальное количество выходных токенов (для Gemini ) или соотношение сторон и генерация людей (для Imagen ).
- Используйте настройки безопасности , чтобы скорректировать вероятность получения ответов, которые могут быть сочтены вредными.
Оставьте отзыв о вашем опыте использования Firebase AI Logic.