Vertex AI Gemini API

Gemini API를 처음 사용하는 경우 Android 개발자에게 권장되는 API 제공업체Gemini Developer API입니다. 하지만 특정 데이터 위치 요구사항이 있거나 이미 Vertex AI 또는 Google Cloud 환경에 삽입된 경우 Vertex AI Gemini API를 사용할 수 있습니다.

Firebase용 Vertex AI에서 마이그레이션

원래 Firebase에서 Vertex AI를 사용하여 Gemini Flash 및 Pro 모델을 통합한 경우 Vertex AI를 API 제공업체로 이전하고 계속 사용할 수 있습니다. 자세한 이전 가이드는 Firebase 문서를 참고하세요.

시작하기

앱에서 Vertex AI Gemini API와 직접 상호작용하기 전에 Vertex AI Studio에서 프롬프트를 실험해 볼 수 있습니다.

Firebase 프로젝트 설정 및 앱을 Firebase에 연결

앱에서 Vertex AI Gemini API를 호출할 준비가 되면 '1단계' Firebase AI 로직 시작 가이드의 안내에 따라 앱에서 Firebase 및 SDK를 설정합니다.

Gradle 종속 항목 추가

앱 모듈에 다음 Gradle 종속 항목을 추가합니다.

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 Firebase AI Logic library. When using the BoM,
  // you don't specify versions in Firebase library dependencies
  implementation("com.google.firebase:firebase-ai")
}

생성형 모델 초기화

먼저 GenerativeModel를 인스턴스화하고 모델 이름을 지정합니다.

Kotlin

val model = Firebase.ai(backend = GenerativeBackend.vertexAI())
                        .generativeModel("gemini-2.0-flash")

자바

GenerativeModel firebaseAI = FirebaseAI.getInstance(GenerativeBackend.vertexAI())
        .generativeModel("gemini-2.0-flash");

GenerativeModelFutures model = GenerativeModelFutures.from(firebaseAI);

Firebase 문서에서 Gemini Developer API와 함께 사용할 수 있는 모델에 대해 자세히 알아보세요. 모델 매개변수 구성에 대해서도 알아볼 수 있습니다.

텍스트 생성

텍스트 응답을 생성하려면 프롬프트와 함께 generateContent()를 호출합니다.

Kotlin

kotlin // Note: generateContent() is a suspend function, which integrates well // with existing Kotlin code. scope.launch { val response = model.generateContent("Write a story about a magic backpack.") }

자바

Content prompt = new Content.Builder()
    .addText("Write a story about a magic backpack.")
    .build();

ListenableFuture<GenerateContentResponse> response = model.generateContent(prompt);
Futures.addCallback(response, new FutureCallback<GenerateContentResponse>() {
    @Override
    public void onSuccess(GenerateContentResponse result) {
        String resultText = result.getText();
        [...]
    }

    @Override
    public void onFailure(Throwable t) {
        t.printStackTrace();
    }
}, executor);

Gemini Developer API와 마찬가지로 텍스트 프롬프트와 함께 이미지, 오디오, 동영상, 파일을 전달할 수도 있습니다('앱에서 Gemini Developer API와 상호작용' 참고).

Firebase AI Logic SDK에 대해 자세히 알아보려면 Firebase 문서를 참고하세요.