Gemini API 快速入門導覽課程

本快速入門導覽課程說明如何使用所選 SDK 開始使用 Gemini API。


必要條件

本快速入門導覽課程假設您已熟悉如何使用 Android Studio 開發 Android 應用程式。

如要完成這份快速入門指南,請確認您的開發環境和 Android 應用程式符合下列需求:

  • Android Studio (最新版本)
  • Android 應用程式必須指定 API 級別 21 以上版本。

考慮在裝置上使用 Gemini

本教學課程所述的 Android 用戶端 SDK 可讓您存取在 Google 伺服器上執行的 Gemini 模型。如果用途涉及處理敏感資料、離線可用性,或是為了節省常用使用者流程的成本,建議您考慮使用在裝置上執行的 Gemini Nano。詳情請參閱 Android (裝置端) 頁面

安裝 Google AI SDK

  1. 模組 (應用程式層級) Gradle 設定檔 (例如 <project>/<app-module>/build.gradle.kts) 中,新增 Google AI SDK for Android 的依附元件:

    Kotlin

    dependencies {
    
      // add the dependency for the Google AI client SDK for Android
      implementation("com.google.ai.client.generativeai:generativeai:0.7.0")
    }
    

    Java

    針對 Java,您需要額外新增兩個程式庫。

    dependencies {
    
        // add the dependency for the Google AI client SDK for Android
        implementation("com.google.ai.client.generativeai:generativeai:0.7.0")
    
        // 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")
    }
    
  2. 將 Android 專案與 Gradle 檔案同步處理。

設定驗證方法

如要向 Gemini API 驗證,最簡單的方法就是設定 API 金鑰,如本節所述。如果需要更嚴格的存取權控管機制,可以改用 OAuth

如果您還沒有 API 金鑰,請在 Google AI 工作室中建立。

從 Google AI Studio 取得 API 金鑰

然後設定金鑰。

強烈建議您不要在版本管控系統中登錄 API 金鑰。而是應該將 API 金鑰儲存在 local.properties 檔案中 (位於專案根目錄,但不受版本管控),然後使用 Secrets Gradle Plugin for Android 讀取 API 金鑰做為建構設定變數。

Kotlin

// Access your API key as a Build Configuration variable
val apiKey = BuildConfig.apiKey

Java

// Access your API key as a Build Configuration variable
String apiKey = BuildConfig.apiKey;

如要查看 Secrets Gradle 外掛程式的實作方式,您可以查看此 SDK 的範例應用程式,或是使用 Android Studio Iguana 最新預先發布版,其中包含 Gemini API Starter 範本 (內含可讓您開始使用 local.properties 檔案)。

匯入程式庫

匯入 Google 生成式 AI 程式庫。

Kotlin

// other imports...
import com.google.ai.client.generativeai.GenerativeModel

Java

// other imports...
import com.google.ai.client.generativeai.GenerativeModel;
import com.google.ai.client.generativeai.java.GenerativeModelFutures;
import com.google.ai.client.generativeai.type.Content;
import com.google.ai.client.generativeai.type.GenerateContentResponse;

提出第一個要求

使用 generateContent 方法產生文字。

Kotlin

generateContent() 是暫停函式,需要從協同程式範圍中呼叫。如果您不熟悉協同程式,請參閱「Android 上的 Kotlin 協同程式」。

    val generativeModel =
    GenerativeModel(
        // Specify a Gemini model appropriate for your use case
        modelName = "gemini-1.5-flash",
        // Access your API key as a Build Configuration variable (see "Set up your API key" above)
        apiKey = BuildConfig.apiKey)

val prompt = "Write a story about a magic backpack."
val response = generativeModel.generateContent(prompt)
print(response.text)

Java

generateContent() 會傳回 ListenableFuture。如果您不熟悉這個 API,請參閱 Android 說明文件,瞭解如何使用 ListenableFuture

    // Specify a Gemini model appropriate for your use case
GenerativeModel gm =
    new GenerativeModel(
        /* modelName */ "gemini-1.5-flash",
        // Access your API key as a Build Configuration variable (see "Set up your API key"
        // above)
        /* apiKey */ BuildConfig.apiKey);
GenerativeModelFutures model = GenerativeModelFutures.from(gm);

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

// For illustrative purposes only. You should use an executor that fits your needs.
Executor executor = Executors.newSingleThreadExecutor();

ListenableFuture<GenerateContentResponse> response = model.generateContent(content);
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);

後續步驟

設定完成後,您就可以向 Gemini API 提出要求,並使用 Gemini API 的所有功能來建構應用程式和工作流程。如要開始使用 Gemini API 功能,請參閱下列指南:

如需 Gemini API 方法和要求參數的詳細說明文件,請參閱 API 參考資料中的指南。