Firebase의 Vertex AI SDK를 사용하여 Gemini API 시작하기


이 가이드에서는 선택한 플랫폼의 Vertex AI in Firebase SDK를 사용하여 앱에서 직접 Vertex AI Gemini API를 호출하는 방법을 설명합니다.

기본 요건

이 가이드에서는 독자가 Flutter로 앱을 개발하는 데 익숙하다고 가정합니다.

1단계: Firebase 프로젝트 설정 및 앱을 Firebase에 연결

Firebase 프로젝트와 Firebase에 연결된 앱이 이미 있는 경우

  1. Firebase 콘솔에서 Gemini로 빌드 페이지로 이동합니다.

  2. Vertex AI in Firebase 카드를 클릭하여 다음 작업을 완료하는 데 도움이 되는 워크플로를 실행합니다.

  3. 이 가이드의 다음 단계로 진행하여 앱에 SDK를 추가합니다.

아직 Firebase 프로젝트와 Firebase에 연결된 앱이 없는 경우


2단계: SDK 추가

Firebase 프로젝트가 설정되고 앱이 Firebase에 연결되었으면(이전 단계 참조) 이제 Vertex AI in Firebase SDK를 앱에 추가할 수 있습니다.

Flutter용 Vertex AI in Firebase 플러그인 (firebase_vertexai)은 Vertex AI Gemini API에 대한 액세스를 제공합니다.

  1. Flutter 프로젝트 디렉터리에서 다음 명령어를 실행하여 core 플러그인을 설치합니다.

    flutter pub add firebase_core
    
  2. lib/main.dart 파일에서 Firebase core 플러그인 및 앞에서 생성한 구성 파일을 가져옵니다.

    import 'package:firebase_core/firebase_core.dart';
    import 'firebase_options.dart';
    
  3. 또한 lib/main.dart 파일에서 구성 파일로 내보낸 DefaultFirebaseOptions 객체를 사용하여 Firebase를 초기화합니다.

    await Firebase.initializeApp(
      options: DefaultFirebaseOptions.currentPlatform,
    );
    
  4. Flutter 애플리케이션을 다시 빌드합니다.

    flutter run
    
  5. Flutter 프로젝트 디렉터리에서 다음 명령어를 실행합니다.

    flutter pub add firebase_vertexai
  6. 완료되면 Flutter 프로젝트를 다시 빌드합니다.

    flutter run
    

3단계: Vertex AI 서비스 및 생성형 모델 초기화

API를 호출하려면 먼저 Vertex AI 서비스와 생성형 모델을 초기화해야 합니다.

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

// Initialize FirebaseApp
await Firebase.initializeApp();
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
final model =
      FirebaseVertexAI.instance.generativeModel(model: 'gemini-1.5-flash');

시작 가이드를 완료한 후 사용 사례 및 앱에 적합한 Gemini 모델과 (선택사항) 위치를 선택하는 방법을 알아봅니다.

4단계: Vertex AI Gemini API 호출

앱을 Firebase에 연결하고, SDK를 추가하고, Vertex AI 서비스와 생성 모델을 초기화했으므로 이제 Vertex AI Gemini API를 호출할 수 있습니다.

generateContent()를 사용하여 텍스트 전용 프롬프트 요청에서 텍스트를 생성할 수 있습니다.

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

await Firebase.initializeApp();
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
final model =
      FirebaseVertexAI.instance.generativeModel(model: 'gemini-1.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);

또 뭘 할 수 있니?

Gemini 모델 자세히 알아보기

다양한 사용 사례에 사용할 수 있는 모델할당량 및 가격에 대해 알아보세요.

Gemini API의 다른 기능 사용해 보기

콘텐츠 생성 제어 방법 알아보기

Vertex AI Studio를 사용하여 프롬프트 및 모델 구성을 실험할 수도 있습니다.


Vertex AI in Firebase 사용 경험에 관한 의견 보내기