Начните работу с API Gemini с помощью Firebase AI Logic SDK

В этом руководстве показано, как начать совершать вызовы к API Gemini непосредственно из вашего приложения, используя клиентские SDK Firebase AI Logic для выбранной вами платформы.

Вы также можете использовать это руководство, чтобы начать работу с доступом к моделям Imagen с помощью Firebase AI Logic SDK.

Предпосылки

Быстрый

В этом руководстве предполагается, что вы знакомы с использованием 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 соответствуют следующим требованиям:

  • Дарт 3.2.0+

Единство

В этом руководстве предполагается, что вы знакомы с разработкой игр на Unity.

Убедитесь, что ваша среда разработки и игра Unity соответствуют следующим требованиям:

  • Редактор Unity 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 и подключите свое приложение

  1. Войдите в консоль Firebase и выберите свой проект Firebase.

    Если у вас еще нет проекта Firebase, нажмите «Создать проект» , а затем воспользуйтесь одним из следующих вариантов:

    • Вариант 1 : создайте совершенно новый проект Firebase (и его базовый проект Google Cloud автоматически), введя имя нового проекта на первом этапе рабочего процесса «Создание проекта».

    • Вариант 2 : «Добавить Firebase» в существующий проект Google Cloud , выбрав имя проекта Google Cloud в раскрывающемся меню на первом этапе рабочего процесса «Создание проекта».

    Обратите внимание, что при появлении соответствующего запроса вам не нужно настраивать Google Analytics для использования Firebase AI Logic SDK.

  2. В консоли Firebase перейдите на страницу Firebase AI Logic .

  3. Нажмите «Начать» , чтобы запустить пошаговый рабочий процесс, который поможет вам настроить необходимые API и ресурсы для вашего проекта.

  4. Выберите поставщика Gemini API , который вы хотите использовать с Firebase AI Logic SDK. Для начинающих пользователей рекомендуется использовать Gemini Developer API . При желании вы всегда сможете добавить биллинг или настроить Vertex AI Gemini API позже.

    • API разработчика Geminiоплата необязательна (доступно в бесплатном тарифном плане Spark, при желании можно перейти на более поздний вариант)
      Консоль включит необходимые API и создаст ключ API Gemini в вашем проекте.
      Не добавляйте этот ключ API Gemini в кодовую базу вашего приложения. Подробнее.

    • Vertex AI Gemini APIтребуется выставление счетов (требуется тарифный план Blaze с оплатой по мере использования)
      Консоль поможет вам настроить биллинг и включить необходимые API в вашем проекте.

  5. При появлении соответствующего запроса в рабочем процессе консоли следуйте инструкциям на экране, чтобы зарегистрировать свое приложение и подключить его к Firebase.

  6. Перейдите к следующему шагу этого руководства, чтобы добавить SDK в свое приложение.

Шаг 2 : Добавьте SDK

После настройки проекта Firebase и подключения приложения к Firebase (см. предыдущий шаг) вы теперь можете добавить Firebase AI Logic SDK в свое приложение.

Быстрый

Используйте Swift Package Manager для установки и управления зависимостями Firebase.

Библиотека Firebase AI Logic предоставляет доступ к API для взаимодействия с моделями Gemini и Imagen . Она входит в состав Firebase SDK для платформ Apple ( firebase-ios-sdk ).

Если вы уже используете Firebase, убедитесь, что ваш пакет Firebase — версия 11.13.0 или более поздняя.

  1. В Xcode откройте проект приложения, перейдите в Файл > Добавить зависимости пакета .

  2. При появлении запроса добавьте репозиторий Firebase Apple Platforms SDK:

    https://github.com/firebase/firebase-ios-sdk 
  3. Выберите последнюю версию SDK.

  4. Выберите библиотеку FirebaseAI .

После завершения 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.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") }

Используя 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.1.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.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") }

Используя 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.1.0") }

Web

Библиотека Firebase AI Logic предоставляет доступ к API для взаимодействия с моделями Gemini и Imagen . Она входит в состав Firebase JavaScript SDK for Web.

  1. Установите Firebase JS SDK для Web с помощью npm:

    npm install firebase 
  2. Инициализируйте 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 .

  1. Из каталога проекта Flutter выполните следующую команду, чтобы установить основной плагин и плагин Firebase AI Logic :

    flutter pub add firebase_core firebase_ai 
  2. В файле 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'; 
  3. Также в файле lib/main.dart инициализируйте Firebase, используя объект DefaultFirebaseOptions , экспортированный файлом конфигурации:

    await Firebase.initializeApp(   options: DefaultFirebaseOptions.currentPlatform, ); 
  4. Перестройте свое приложение Flutter:

    flutter run 

Единство

  1. Загрузите Firebase Unity SDK , затем распакуйте SDK в удобное место.

    Firebase Unity SDK не привязан к какой-либо платформе.

  2. В открытом проекте Unity перейдите в раздел Assets > Import Package > Custom Package .

  3. Из извлеченного SDK выберите пакет FirebaseAI .

  4. В окне Импорт пакета Unity нажмите Импорт .

  5. Вернитесь в консоль Firebase , в рабочем процессе настройки нажмите кнопку Далее .

Шаг 3 : Инициализируйте службу и создайте экземпляр модели.

Щелкните своего поставщика API Gemini , чтобы просмотреть специфичный для этого поставщика контент и код на этой странице.

Перед отправкой запроса модели Gemini инициализируйте службу для выбранного вами поставщика API и создайте экземпляр 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")  

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 .

Кроме того, после прочтения этого вводного руководства вы узнаете, как выбрать модель для своего варианта использования и приложения.

Шаг 4 : Отправьте быстрый запрос модели

Теперь вы готовы отправить быстрый запрос модели Gemini .

Вы можете использовать generateContent() для генерации текста из приглашения, содержащего текст:

Быстрый

 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

Для 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 = generativeModel.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."); 

Что еще вы можете сделать?

Узнайте больше о поддерживаемых моделях

Узнайте о моделях, доступных для различных вариантов использования , их квотах и ценах .

Попробуйте другие возможности

Узнайте, как контролировать генерацию контента

Вы также можете экспериментировать с подсказками и конфигурациями модели и даже получить сгенерированный фрагмент кода с помощью Google AI Studio .


Оставьте отзыв о своем опыте работы с Firebase AI Logic