Начните работу с Gemini API, используя Vertex AI в Firebase SDK.Начните работу с Gemini API, используя Vertex AI в Firebase SDK.

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

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

Предварительные условия

Быстрый

В этом руководстве предполагается, что вы знакомы с использованием Xcode для разработки приложений для платформ Apple (например, iOS).

  • Убедитесь, что ваша среда разработки и приложение платформы Apple соответствуют этим требованиям:

    • Xcode 16.2 или выше
    • Ваше приложение предназначено для iOS 15 или более поздней версии или macOS 12 или более поздней версии.
  • (Необязательно) Ознакомьтесь с примером приложения.

    Загрузите приложение быстрого запуска

    Вы можете быстро опробовать SDK, увидеть полную реализацию различных вариантов использования или использовать образец приложения, если у вас нет собственного приложения для платформы Apple. Чтобы использовать пример приложения, вам необходимо подключить его к проекту Firebase .

Kotlin

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

  • Убедитесь, что ваша среда разработки и приложение Android соответствуют этим требованиям:

    • Android Studio (последняя версия)
    • Ваше приложение ориентировано на уровень API 21 или выше.
  • (Необязательно) Ознакомьтесь с примером приложения.

    Загрузите образец приложения

    Вы можете быстро опробовать SDK, увидеть полную реализацию различных вариантов использования или использовать образец приложения, если у вас нет собственного приложения для Android. Чтобы использовать пример приложения, вам необходимо подключить его к проекту Firebase .

Java

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

  • Убедитесь, что ваша среда разработки и приложение Android соответствуют этим требованиям:

    • Android Studio (последняя версия)
    • Ваше приложение ориентировано на уровень API 21 или выше.
  • (Необязательно) Ознакомьтесь с примером приложения.

    Загрузите образец приложения

    Вы можете быстро опробовать SDK, увидеть полную реализацию различных вариантов использования или использовать образец приложения, если у вас нет собственного приложения для Android. Чтобы использовать пример приложения, вам необходимо подключить его к проекту Firebase .

Web

В этом руководстве предполагается, что вы знакомы с использованием JavaScript для разработки веб-приложений. Это руководство не зависит от платформы.

  • Убедитесь, что ваша среда разработки и веб-приложение соответствуют этим требованиям:

    • (Необязательно) Node.js
    • Современный веб-браузер
  • (Необязательно) Ознакомьтесь с примером приложения.

    Загрузите образец приложения

    Вы можете быстро опробовать SDK, увидеть полную реализацию различных вариантов использования или использовать образец приложения, если у вас нет собственного веб-приложения. Чтобы использовать пример приложения, вам необходимо подключить его к проекту Firebase .

Dart

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

  • Убедитесь, что ваша среда разработки и приложение Flutter соответствуют этим требованиям:

    • Дартс 3.2.0+
  • (Необязательно) Ознакомьтесь с примером приложения.

    Загрузите образец приложения

    Вы можете быстро опробовать SDK, увидеть полную реализацию различных вариантов использования или использовать образец приложения, если у вас нет собственного приложения Flutter. Чтобы использовать пример приложения, вам необходимо подключить его к проекту Firebase .

Шаг 1. Настройте проект Firebase и подключите свое приложение к Firebase.

Если у вас уже есть проект Firebase и приложение, подключенное к Firebase

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

  2. Нажмите карточку Vertex AI в Firebase , чтобы запустить рабочий процесс, который поможет вам выполнить следующие задачи:

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

Если у вас еще нет проекта Firebase и приложения, подключенного к Firebase


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

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

Быстрый

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

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

  1. В Xcode, открыв проект приложения, выберите «Файл» > «Добавить пакеты» .

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

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

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

По завершении Xcode автоматически начнет разрешать и загружать ваши зависимости в фоновом режиме.

Kotlin

Vertex AI в Firebase SDK для Android ( firebase-vertexai ) обеспечивает доступ к API для взаимодействия с моделями Gemini и Imagen .

В файле Gradle вашего модуля (на уровне приложения) (например, <project>/<app-module>/build.gradle.kts ) добавьте зависимость для Vertex AI в библиотеке Firebase для Android. Мы рекомендуем использовать Firebase Android BoM для управления версиями библиотеки.

dependencies {
  // ... other androidx dependencies

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

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

Используя Firebase Android BoM , ваше приложение всегда будет использовать совместимые версии библиотек Firebase Android.

Java

Vertex AI в Firebase SDK для Android ( firebase-vertexai ) обеспечивает доступ к API для взаимодействия с моделями Gemini и Imagen .

В файле Gradle вашего модуля (на уровне приложения) (например, <project>/<app-module>/build.gradle.kts ) добавьте зависимость для Vertex AI в библиотеке Firebase для Android. Мы рекомендуем использовать Firebase Android BoM для управления версиями библиотеки.

Для Java вам необходимо добавить две дополнительные библиотеки.

dependencies {
  // ... other androidx dependencies

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

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

  // 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.

Web

Библиотека Vertex AI в Firebase предоставляет доступ к API для взаимодействия с моделями Gemini и Imagen . Библиотека включена в состав Firebase JavaScript SDK для Интернета.

  1. Установите Firebase JS SDK для Интернета с помощью 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

Плагин Vertex AI в Firebase для Flutter ( firebase_vertexai ) обеспечивает доступ к API для взаимодействия с моделями Gemini и Imagen .

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

    flutter pub add firebase_core && flutter pub add firebase_vertexai
    
  2. В файл lib/main.dart импортируйте основной плагин Firebase, плагин Vertex AI in Firebase и файл конфигурации, созданный вами ранее:

    import 'package:firebase_core/firebase_core.dart';
    import 'package:firebase_vertexai/firebase_vertexai.dart';
    import 'firebase_options.dart';
    
  3. Также в файле lib/main.dart инициализируйте Firebase, используя объект DefaultFirebaseOptions , экспортированный файлом конфигурации:

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

    flutter run
    

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

Прежде чем вы сможете выполнять какие-либо вызовы API и отправлять запросы модели Gemini , вам необходимо инициализировать службу Vertex AI и создать экземпляр GenerativeModel .

Быстрый

import FirebaseVertexAI

// Initialize the Vertex AI service
let vertex = VertexAI.vertexAI()

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

Kotlin

Для Kotlin методы в этом SDK являются функциями приостановки, и их необходимо вызывать из области Coroutine .
// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
val generativeModel = Firebase.vertexAI.generativeModel("gemini-2.0-flash")

Java

Для Java методы потоковой передачи в этом SDK возвращают тип Publisher из библиотеки Reactive Streams .
// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
GenerativeModel gm = FirebaseVertexAI.getInstance()
        .generativeModel("gemini-2.0-flash");

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

Web

import { initializeApp } from "firebase/app";
import { getVertexAI, getGenerativeModel } from "firebase/vertexai";

// 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 Vertex AI service
const vertexAI = getVertexAI(firebaseApp);

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

Dart

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

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

// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
final model =
      FirebaseVertexAI.instance.generativeModel(model: 'gemini-2.0-flash');

После прочтения этого руководства по началу работы узнайте, как выбрать модель и (необязательно) местоположение , подходящее для вашего варианта использования и приложения.

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

Теперь, когда вы подключили свое приложение к Firebase, добавили SDK и инициализировали службу Vertex AI и генеративную модель, вы готовы отправить быстрый запрос модели Gemini .

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

Быстрый

import FirebaseVertexAI

// Initialize the Vertex AI service
let vertex = VertexAI.vertexAI()

// Create a `GenerativeModel` instance with a model that supports your use case
let model = vertex.generativeModel(modelName: "gemini-2.0-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 являются функциями приостановки, и их необходимо вызывать из области Coroutine .
// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
val generativeModel = Firebase.vertexAI.generativeModel("gemini-2.0-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 Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
GenerativeModel gm = FirebaseVertexAI.getInstance()
        .generativeModel("gemini-2.0-flash");
GenerativeModelFutures model = GenerativeModelFutures.from(gm);

// 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 { getVertexAI, getGenerativeModel } from "firebase/vertexai";

// 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 Vertex AI service
const vertexAI = getVertexAI(firebaseApp);

// Create a `GenerativeModel` instance with a model that supports your use case
const model = getGenerativeModel(vertexAI, { model: "gemini-2.0-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_vertexai/firebase_vertexai.dart';
import 'package:firebase_core/firebase_core.dart';
import 'firebase_options.dart';

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

// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
final model =
      FirebaseVertexAI.instance.generativeModel(model: 'gemini-2.0-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);

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

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

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

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

Узнайте, как контролировать создание контента

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


Оставьте отзыв о своем опыте использования Vertex AI в Firebase.


,

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

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

Предварительные условия

Быстрый

В этом руководстве предполагается, что вы знакомы с использованием Xcode для разработки приложений для платформ Apple (например, iOS).

  • Убедитесь, что ваша среда разработки и приложение платформы Apple соответствуют этим требованиям:

    • Xcode 16.2 или выше
    • Ваше приложение предназначено для iOS 15 или более поздней версии или macOS 12 или более поздней версии.
  • (Необязательно) Ознакомьтесь с примером приложения.

    Загрузите приложение быстрого запуска

    Вы можете быстро опробовать SDK, увидеть полную реализацию различных вариантов использования или использовать образец приложения, если у вас нет собственного приложения для платформы Apple. Чтобы использовать пример приложения, вам необходимо подключить его к проекту Firebase .

Kotlin

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

  • Убедитесь, что ваша среда разработки и приложение Android соответствуют этим требованиям:

    • Android Studio (последняя версия)
    • Ваше приложение ориентировано на уровень API 21 или выше.
  • (Необязательно) Ознакомьтесь с примером приложения.

    Загрузите образец приложения

    Вы можете быстро опробовать SDK, увидеть полную реализацию различных вариантов использования или использовать образец приложения, если у вас нет собственного приложения для Android. Чтобы использовать пример приложения, вам необходимо подключить его к проекту Firebase .

Java

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

  • Убедитесь, что ваша среда разработки и приложение Android соответствуют этим требованиям:

    • Android Studio (последняя версия)
    • Ваше приложение ориентировано на уровень API 21 или выше.
  • (Необязательно) Ознакомьтесь с примером приложения.

    Загрузите образец приложения

    Вы можете быстро опробовать SDK, увидеть полную реализацию различных вариантов использования или использовать образец приложения, если у вас нет собственного приложения для Android. Чтобы использовать пример приложения, вам необходимо подключить его к проекту Firebase .

Web

В этом руководстве предполагается, что вы знакомы с использованием JavaScript для разработки веб-приложений. Это руководство не зависит от платформы.

  • Убедитесь, что ваша среда разработки и веб-приложение соответствуют этим требованиям:

    • (Необязательно) Node.js
    • Современный веб-браузер
  • (Необязательно) Ознакомьтесь с примером приложения.

    Загрузите образец приложения

    Вы можете быстро опробовать SDK, увидеть полную реализацию различных вариантов использования или использовать образец приложения, если у вас нет собственного веб-приложения. Чтобы использовать пример приложения, вам необходимо подключить его к проекту Firebase .

Dart

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

  • Убедитесь, что ваша среда разработки и приложение Flutter соответствуют этим требованиям:

    • Дартс 3.2.0+
  • (Необязательно) Ознакомьтесь с примером приложения.

    Загрузите образец приложения

    Вы можете быстро опробовать SDK, увидеть полную реализацию различных вариантов использования или использовать образец приложения, если у вас нет собственного приложения Flutter. Чтобы использовать пример приложения, вам необходимо подключить его к проекту Firebase .

Шаг 1. Настройте проект Firebase и подключите свое приложение к Firebase.

Если у вас уже есть проект Firebase и приложение, подключенное к Firebase

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

  2. Нажмите карточку Vertex AI в Firebase , чтобы запустить рабочий процесс, который поможет вам выполнить следующие задачи:

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

Если у вас еще нет проекта Firebase и приложения, подключенного к Firebase


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

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

Быстрый

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

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

  1. В Xcode, открыв проект приложения, выберите «Файл» > «Добавить пакеты» .

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

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

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

По завершении Xcode автоматически начнет разрешать и загружать ваши зависимости в фоновом режиме.

Kotlin

Vertex AI в Firebase SDK для Android ( firebase-vertexai ) обеспечивает доступ к API для взаимодействия с моделями Gemini и Imagen .

В файле Gradle вашего модуля (на уровне приложения) (например, <project>/<app-module>/build.gradle.kts ) добавьте зависимость для Vertex AI в библиотеке Firebase для Android. Мы рекомендуем использовать Firebase Android BoM для управления версиями библиотеки.

dependencies {
  // ... other androidx dependencies

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

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

Используя Firebase Android BoM , ваше приложение всегда будет использовать совместимые версии библиотек Firebase Android.

Java

Vertex AI в Firebase SDK для Android ( firebase-vertexai ) обеспечивает доступ к API для взаимодействия с моделями Gemini и Imagen .

В файле Gradle вашего модуля (на уровне приложения) (например, <project>/<app-module>/build.gradle.kts ) добавьте зависимость для Vertex AI в библиотеке Firebase для Android. Мы рекомендуем использовать Firebase Android BoM для управления версиями библиотеки.

Для Java вам необходимо добавить две дополнительные библиотеки.

dependencies {
  // ... other androidx dependencies

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

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

  // 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.

Web

Библиотека Vertex AI в Firebase предоставляет доступ к API для взаимодействия с моделями Gemini и Imagen . Библиотека включена в состав Firebase JavaScript SDK для Интернета.

  1. Установите Firebase JS SDK для Интернета с помощью 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

Плагин Vertex AI в Firebase для Flutter ( firebase_vertexai ) обеспечивает доступ к API для взаимодействия с моделями Gemini и Imagen .

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

    flutter pub add firebase_core && flutter pub add firebase_vertexai
    
  2. В файл lib/main.dart импортируйте основной плагин Firebase, плагин Vertex AI in Firebase и файл конфигурации, созданный вами ранее:

    import 'package:firebase_core/firebase_core.dart';
    import 'package:firebase_vertexai/firebase_vertexai.dart';
    import 'firebase_options.dart';
    
  3. Также в файле lib/main.dart инициализируйте Firebase, используя объект DefaultFirebaseOptions , экспортированный файлом конфигурации:

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

    flutter run
    

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

Прежде чем вы сможете выполнять какие-либо вызовы API и отправлять запросы модели Gemini , вам необходимо инициализировать службу Vertex AI и создать экземпляр GenerativeModel .

Быстрый

import FirebaseVertexAI

// Initialize the Vertex AI service
let vertex = VertexAI.vertexAI()

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

Kotlin

Для Kotlin методы в этом SDK являются функциями приостановки, и их необходимо вызывать из области Coroutine .
// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
val generativeModel = Firebase.vertexAI.generativeModel("gemini-2.0-flash")

Java

Для Java методы потоковой передачи в этом SDK возвращают тип Publisher из библиотеки Reactive Streams .
// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
GenerativeModel gm = FirebaseVertexAI.getInstance()
        .generativeModel("gemini-2.0-flash");

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

Web

import { initializeApp } from "firebase/app";
import { getVertexAI, getGenerativeModel } from "firebase/vertexai";

// 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 Vertex AI service
const vertexAI = getVertexAI(firebaseApp);

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

Dart

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

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

// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
final model =
      FirebaseVertexAI.instance.generativeModel(model: 'gemini-2.0-flash');

После прочтения этого руководства по началу работы узнайте, как выбрать модель и (необязательно) местоположение , подходящее для вашего варианта использования и приложения.

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

Теперь, когда вы подключили свое приложение к Firebase, добавили SDK и инициализировали службу Vertex AI и генеративную модель, вы готовы отправить быстрый запрос модели Gemini .

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

Быстрый

import FirebaseVertexAI

// Initialize the Vertex AI service
let vertex = VertexAI.vertexAI()

// Create a `GenerativeModel` instance with a model that supports your use case
let model = vertex.generativeModel(modelName: "gemini-2.0-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 являются функциями приостановки, и их необходимо вызывать из области Coroutine .
// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
val generativeModel = Firebase.vertexAI.generativeModel("gemini-2.0-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 Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
GenerativeModel gm = FirebaseVertexAI.getInstance()
        .generativeModel("gemini-2.0-flash");
GenerativeModelFutures model = GenerativeModelFutures.from(gm);

// 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 { getVertexAI, getGenerativeModel } from "firebase/vertexai";

// 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 Vertex AI service
const vertexAI = getVertexAI(firebaseApp);

// Create a `GenerativeModel` instance with a model that supports your use case
const model = getGenerativeModel(vertexAI, { model: "gemini-2.0-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_vertexai/firebase_vertexai.dart';
import 'package:firebase_core/firebase_core.dart';
import 'firebase_options.dart';

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

// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
final model =
      FirebaseVertexAI.instance.generativeModel(model: 'gemini-2.0-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);

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

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

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

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

Узнайте, как контролировать создание контента

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


Оставьте отзыв о своем опыте использования Vertex AI в Firebase.


,

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

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

Предварительные условия

Быстрый

В этом руководстве предполагается, что вы знакомы с использованием Xcode для разработки приложений для платформ Apple (например, iOS).

  • Убедитесь, что ваша среда разработки и приложение платформы Apple соответствуют этим требованиям:

    • Xcode 16.2 или выше
    • Ваше приложение предназначено для iOS 15 или более поздней версии или macOS 12 или более поздней версии.
  • (Необязательно) Ознакомьтесь с примером приложения.

    Загрузите приложение быстрого запуска

    Вы можете быстро опробовать SDK, увидеть полную реализацию различных вариантов использования или использовать образец приложения, если у вас нет собственного приложения для платформы Apple. Чтобы использовать пример приложения, вам необходимо подключить его к проекту Firebase .

Kotlin

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

  • Убедитесь, что ваша среда разработки и приложение Android соответствуют этим требованиям:

    • Android Studio (последняя версия)
    • Ваше приложение ориентировано на уровень API 21 или выше.
  • (Необязательно) Ознакомьтесь с примером приложения.

    Загрузите образец приложения

    Вы можете быстро опробовать SDK, увидеть полную реализацию различных вариантов использования или использовать образец приложения, если у вас нет собственного приложения для Android. Чтобы использовать пример приложения, вам необходимо подключить его к проекту Firebase .

Java

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

  • Убедитесь, что ваша среда разработки и приложение Android соответствуют этим требованиям:

    • Android Studio (последняя версия)
    • Ваше приложение ориентировано на уровень API 21 или выше.
  • (Необязательно) Ознакомьтесь с примером приложения.

    Загрузите образец приложения

    Вы можете быстро опробовать SDK, увидеть полную реализацию различных вариантов использования или использовать образец приложения, если у вас нет собственного приложения для Android. Чтобы использовать пример приложения, вам необходимо подключить его к проекту Firebase .

Web

В этом руководстве предполагается, что вы знакомы с использованием JavaScript для разработки веб-приложений. Это руководство не зависит от платформы.

  • Убедитесь, что ваша среда разработки и веб-приложение соответствуют этим требованиям:

    • (Необязательно) Node.js
    • Современный веб-браузер
  • (Необязательно) Ознакомьтесь с примером приложения.

    Загрузите образец приложения

    Вы можете быстро опробовать SDK, увидеть полную реализацию различных вариантов использования или использовать образец приложения, если у вас нет собственного веб-приложения. Чтобы использовать пример приложения, вам необходимо подключить его к проекту Firebase .

Dart

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

  • Убедитесь, что ваша среда разработки и приложение Flutter соответствуют этим требованиям:

    • Дартс 3.2.0+
  • (Необязательно) Ознакомьтесь с примером приложения.

    Загрузите образец приложения

    Вы можете быстро опробовать SDK, увидеть полную реализацию различных вариантов использования или использовать образец приложения, если у вас нет собственного приложения Flutter. Чтобы использовать пример приложения, вам необходимо подключить его к проекту Firebase .

Шаг 1. Настройте проект Firebase и подключите свое приложение к Firebase.

Если у вас уже есть проект Firebase и приложение, подключенное к Firebase

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

  2. Нажмите карточку Vertex AI в Firebase , чтобы запустить рабочий процесс, который поможет вам выполнить следующие задачи:

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

Если у вас еще нет проекта Firebase и приложения, подключенного к Firebase


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

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

Быстрый

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

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

  1. В Xcode, открыв проект приложения, выберите «Файл» > «Добавить пакеты» .

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

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

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

По завершении Xcode автоматически начнет разрешать и загружать ваши зависимости в фоновом режиме.

Kotlin

Vertex AI в Firebase SDK для Android ( firebase-vertexai ) обеспечивает доступ к API для взаимодействия с моделями Gemini и Imagen .

В файле Gradle вашего модуля (на уровне приложения) (например, <project>/<app-module>/build.gradle.kts ) добавьте зависимость для Vertex AI в библиотеке Firebase для Android. Мы рекомендуем использовать Firebase Android BoM для управления версиями библиотеки.

dependencies {
  // ... other androidx dependencies

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

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

Используя Firebase Android BoM , ваше приложение всегда будет использовать совместимые версии библиотек Firebase Android.

Java

Vertex AI в Firebase SDK для Android ( firebase-vertexai ) обеспечивает доступ к API для взаимодействия с моделями Gemini и Imagen .

В файле Gradle вашего модуля (на уровне приложения) (например, <project>/<app-module>/build.gradle.kts ) добавьте зависимость для Vertex AI в библиотеке Firebase для Android. Мы рекомендуем использовать Firebase Android BoM для управления версиями библиотеки.

Для Java вам необходимо добавить две дополнительные библиотеки.

dependencies {
  // ... other androidx dependencies

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

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

  // 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.

Web

Библиотека Vertex AI в Firebase предоставляет доступ к API для взаимодействия с моделями Gemini и Imagen . Библиотека включена в состав Firebase JavaScript SDK для Интернета.

  1. Установите Firebase JS SDK для Интернета с помощью 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

Плагин Vertex AI в Firebase для Flutter ( firebase_vertexai ) обеспечивает доступ к API для взаимодействия с моделями Gemini и Imagen .

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

    flutter pub add firebase_core && flutter pub add firebase_vertexai
    
  2. В файл lib/main.dart импортируйте основной плагин Firebase, плагин Vertex AI in Firebase и файл конфигурации, созданный вами ранее:

    import 'package:firebase_core/firebase_core.dart';
    import 'package:firebase_vertexai/firebase_vertexai.dart';
    import 'firebase_options.dart';
    
  3. Также в файле lib/main.dart инициализируйте Firebase, используя объект DefaultFirebaseOptions , экспортированный файлом конфигурации:

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

    flutter run
    

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

Прежде чем вы сможете выполнять какие-либо вызовы API и отправлять запросы модели Gemini , вам необходимо инициализировать службу Vertex AI и создать экземпляр GenerativeModel .

Быстрый

import FirebaseVertexAI

// Initialize the Vertex AI service
let vertex = VertexAI.vertexAI()

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

Kotlin

Для Kotlin методы в этом SDK являются функциями приостановки, и их необходимо вызывать из области Coroutine .
// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
val generativeModel = Firebase.vertexAI.generativeModel("gemini-2.0-flash")

Java

Для Java методы потоковой передачи в этом SDK возвращают тип Publisher из библиотеки Reactive Streams .
// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
GenerativeModel gm = FirebaseVertexAI.getInstance()
        .generativeModel("gemini-2.0-flash");

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

Web

import { initializeApp } from "firebase/app";
import { getVertexAI, getGenerativeModel } from "firebase/vertexai";

// 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 Vertex AI service
const vertexAI = getVertexAI(firebaseApp);

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

Dart

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

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

// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
final model =
      FirebaseVertexAI.instance.generativeModel(model: 'gemini-2.0-flash');

После прочтения этого руководства по началу работы узнайте, как выбрать модель и (необязательно) местоположение , подходящее для вашего варианта использования и приложения.

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

Теперь, когда вы подключили свое приложение к Firebase, добавили SDK и инициализировали службу Vertex AI и генеративную модель, вы готовы отправить быстрый запрос модели Gemini .

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

Быстрый

import FirebaseVertexAI

// Initialize the Vertex AI service
let vertex = VertexAI.vertexAI()

// Create a `GenerativeModel` instance with a model that supports your use case
let model = vertex.generativeModel(modelName: "gemini-2.0-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 являются функциями приостановки, и их необходимо вызывать из области Coroutine .
// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
val generativeModel = Firebase.vertexAI.generativeModel("gemini-2.0-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 Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
GenerativeModel gm = FirebaseVertexAI.getInstance()
        .generativeModel("gemini-2.0-flash");
GenerativeModelFutures model = GenerativeModelFutures.from(gm);

// 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 { getVertexAI, getGenerativeModel } from "firebase/vertexai";

// 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 Vertex AI service
const vertexAI = getVertexAI(firebaseApp);

// Create a `GenerativeModel` instance with a model that supports your use case
const model = getGenerativeModel(vertexAI, { model: "gemini-2.0-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_vertexai/firebase_vertexai.dart';
import 'package:firebase_core/firebase_core.dart';
import 'firebase_options.dart';

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

// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
final model =
      FirebaseVertexAI.instance.generativeModel(model: 'gemini-2.0-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);

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

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

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

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

Узнайте, как контролировать создание контента

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


Оставьте отзыв о своем опыте использования Vertex AI в Firebase.


,

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

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

Предварительные условия

Быстрый

В этом руководстве предполагается, что вы знакомы с использованием Xcode для разработки приложений для платформ Apple (например, iOS).

  • Убедитесь, что ваша среда разработки и приложение платформы Apple соответствуют этим требованиям:

    • Xcode 16.2 или выше
    • Ваше приложение предназначено для iOS 15 или более поздней версии или macOS 12 или более поздней версии.
  • (Необязательно) Ознакомьтесь с примером приложения.

    Загрузите приложение быстрого запуска

    Вы можете быстро опробовать SDK, увидеть полную реализацию различных вариантов использования или использовать образец приложения, если у вас нет собственного приложения для платформы Apple. Чтобы использовать пример приложения, вам необходимо подключить его к проекту Firebase .

Kotlin

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

  • Убедитесь, что ваша среда разработки и приложение Android соответствуют этим требованиям:

    • Android Studio (последняя версия)
    • Ваше приложение ориентировано на уровень API 21 или выше.
  • (Необязательно) Ознакомьтесь с примером приложения.

    Загрузите образец приложения

    Вы можете быстро опробовать SDK, увидеть полную реализацию различных вариантов использования или использовать образец приложения, если у вас нет собственного приложения для Android. Чтобы использовать пример приложения, вам необходимо подключить его к проекту Firebase .

Java

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

  • Убедитесь, что ваша среда разработки и приложение Android соответствуют этим требованиям:

    • Android Studio (последняя версия)
    • Ваше приложение ориентировано на уровень API 21 или выше.
  • (Необязательно) Ознакомьтесь с примером приложения.

    Загрузите образец приложения

    Вы можете быстро опробовать SDK, увидеть полную реализацию различных вариантов использования или использовать образец приложения, если у вас нет собственного приложения для Android. Чтобы использовать пример приложения, вам необходимо подключить его к проекту Firebase .

Web

В этом руководстве предполагается, что вы знакомы с использованием JavaScript для разработки веб-приложений. Это руководство не зависит от платформы.

  • Убедитесь, что ваша среда разработки и веб-приложение соответствуют этим требованиям:

    • (Необязательно) Node.js
    • Современный веб-браузер
  • (Необязательно) Ознакомьтесь с примером приложения.

    Загрузите образец приложения

    Вы можете быстро опробовать SDK, увидеть полную реализацию различных вариантов использования или использовать образец приложения, если у вас нет собственного веб-приложения. Чтобы использовать пример приложения, вам необходимо подключить его к проекту Firebase .

Dart

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

  • Убедитесь, что ваша среда разработки и приложение Flutter соответствуют этим требованиям:

    • Дартс 3.2.0+
  • (Необязательно) Ознакомьтесь с примером приложения.

    Загрузите образец приложения

    Вы можете быстро опробовать SDK, увидеть полную реализацию различных вариантов использования или использовать образец приложения, если у вас нет собственного приложения Flutter. Чтобы использовать пример приложения, вам необходимо подключить его к проекту Firebase .

Шаг 1. Настройте проект Firebase и подключите свое приложение к Firebase.

Если у вас уже есть проект Firebase и приложение, подключенное к Firebase

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

  2. Нажмите карточку Vertex AI в Firebase , чтобы запустить рабочий процесс, который поможет вам выполнить следующие задачи:

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

Если у вас еще нет проекта Firebase и приложения, подключенного к Firebase


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

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

Быстрый

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

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

  1. В Xcode, открыв проект приложения, выберите «Файл» > «Добавить пакеты» .

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

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

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

По завершении Xcode автоматически начнет разрешать и загружать ваши зависимости в фоновом режиме.

Kotlin

Vertex AI в Firebase SDK для Android ( firebase-vertexai ) обеспечивает доступ к API для взаимодействия с моделями Gemini и Imagen .

В файле Gradle вашего модуля (на уровне приложения) (например, <project>/<app-module>/build.gradle.kts ) добавьте зависимость для Vertex AI в библиотеке Firebase для Android. Мы рекомендуем использовать Firebase Android BoM для управления версиями библиотеки.

dependencies {
  // ... other androidx dependencies

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

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

Используя Firebase Android BoM , ваше приложение всегда будет использовать совместимые версии библиотек Firebase Android.

Java

Vertex AI в Firebase SDK для Android ( firebase-vertexai ) обеспечивает доступ к API для взаимодействия с моделями Gemini и Imagen .

В файле Gradle вашего модуля (на уровне приложения) (например, <project>/<app-module>/build.gradle.kts ) добавьте зависимость для Vertex AI в библиотеке Firebase для Android. Мы рекомендуем использовать Firebase Android BoM для управления версиями библиотеки.

Для Java вам необходимо добавить две дополнительные библиотеки.

dependencies {
  // ... other androidx dependencies

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

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

  // 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.

Web

Библиотека Vertex AI в Firebase предоставляет доступ к API для взаимодействия с моделями Gemini и Imagen . Библиотека включена в состав Firebase JavaScript SDK для Интернета.

  1. Установите Firebase JS SDK для Интернета с помощью 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

Плагин Vertex AI в Firebase для Flutter ( firebase_vertexai ) обеспечивает доступ к API для взаимодействия с моделями Gemini и Imagen .

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

    flutter pub add firebase_core && flutter pub add firebase_vertexai
    
  2. В файл lib/main.dart импортируйте основной плагин Firebase, плагин Vertex AI in Firebase и файл конфигурации, созданный вами ранее:

    import 'package:firebase_core/firebase_core.dart';
    import 'package:firebase_vertexai/firebase_vertexai.dart';
    import 'firebase_options.dart';
    
  3. Также в файле lib/main.dart инициализируйте Firebase, используя объект DefaultFirebaseOptions , экспортированный файлом конфигурации:

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

    flutter run
    

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

Прежде чем вы сможете выполнять какие-либо вызовы API и отправлять запросы модели Gemini , вам необходимо инициализировать службу Vertex AI и создать экземпляр GenerativeModel .

Быстрый

import FirebaseVertexAI

// Initialize the Vertex AI service
let vertex = VertexAI.vertexAI()

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

Kotlin

Для Kotlin методы в этом SDK являются функциями приостановки, и их необходимо вызывать из области Coroutine .
// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
val generativeModel = Firebase.vertexAI.generativeModel("gemini-2.0-flash")

Java

Для Java методы потоковой передачи в этом SDK возвращают тип Publisher из библиотеки Reactive Streams .
// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
GenerativeModel gm = FirebaseVertexAI.getInstance()
        .generativeModel("gemini-2.0-flash");

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

Web

import { initializeApp } from "firebase/app";
import { getVertexAI, getGenerativeModel } from "firebase/vertexai";

// 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 Vertex AI service
const vertexAI = getVertexAI(firebaseApp);

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

Dart

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

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

// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
final model =
      FirebaseVertexAI.instance.generativeModel(model: 'gemini-2.0-flash');

После прочтения этого руководства по началу работы узнайте, как выбрать модель и (необязательно) местоположение , подходящее для вашего варианта использования и приложения.

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

Теперь, когда вы подключили свое приложение к Firebase, добавили SDK и инициализировали службу Vertex AI и генеративную модель, вы готовы отправить быстрый запрос модели Gemini .

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

Быстрый

import FirebaseVertexAI

// Initialize the Vertex AI service
let vertex = VertexAI.vertexAI()

// Create a `GenerativeModel` instance with a model that supports your use case
let model = vertex.generativeModel(modelName: "gemini-2.0-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 являются функциями приостановки, и их необходимо вызывать из области Coroutine .
// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
val generativeModel = Firebase.vertexAI.generativeModel("gemini-2.0-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 Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
GenerativeModel gm = FirebaseVertexAI.getInstance()
        .generativeModel("gemini-2.0-flash");
GenerativeModelFutures model = GenerativeModelFutures.from(gm);

// 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 { getVertexAI, getGenerativeModel } from "firebase/vertexai";

// 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 Vertex AI service
const vertexAI = getVertexAI(firebaseApp);

// Create a `GenerativeModel` instance with a model that supports your use case
const model = getGenerativeModel(vertexAI, { model: "gemini-2.0-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_vertexai/firebase_vertexai.dart';
import 'package:firebase_core/firebase_core.dart';
import 'firebase_options.dart';

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

// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
final model =
      FirebaseVertexAI.instance.generativeModel(model: 'gemini-2.0-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);

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

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

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

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

Узнайте, как контролировать создание контента

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


Оставьте отзыв о своем опыте использования Vertex AI в Firebase.