使用 Vertex AI in Firebase SDK 從應用程式呼叫 Gemini API 時,您可以提示 Gemini 模型根據純文字輸入內容產生文字。
其他與 Gemini API 相關的選項
您可以選擇嘗試 Gemini API
的「Google AI」替代版本,使用 Google AI Studio 和 Google AI 用戶端 SDK 取得免付費存取權 (在限制範圍內且適用情況下)。這些 SDK 應僅用於行動應用程式和網頁應用程式的原型設計。熟悉 Gemini API 的運作方式後,請遷移至我們的 Vertex AI in Firebase SDK (本說明文件),其中提供許多對行動和網頁應用程式重要的額外功能,例如使用 Firebase App Check 保護 API 免遭濫用,以及支援要求中的大型媒體檔案。
視需要呼叫 Vertex AI Gemini API 伺服器端 (例如使用 Python、Node.js 或 Go)
使用伺服器端 Vertex AI SDK、Firebase Genkit 或 Firebase Extensions 來處理 Gemini API。
事前準備
如果您尚未完成,請完成Vertex AI in Firebase SDK 的入門指南。請確認您已完成下列所有操作:
設定新的或現有的 Firebase 專案,包括使用 Blaze 定價方案和啟用必要的 API。
將應用程式連結至 Firebase,包括註冊應用程式,以及將 Firebase 設定新增至應用程式。
新增 SDK,並在應用程式中初始化 Vertex AI 服務和生成式模型。
將應用程式連結至 Firebase、新增 SDK 並初始化 Vertex AI 服務和生成模型後,您就可以呼叫 Gemini API。
使用純文字輸入內容生成文字
您可以使用僅包含文字的輸入內容呼叫 Gemini API。針對這類呼叫,您必須使用支援純文字提示的模型 (例如 Gemini 2.0 Flash)。
選擇要串流回應 (generateContentStream
),還是等待回應產生整個結果 (generateContent
)。
您可以不等待模型產生的完整結果,改用串流處理部分結果,藉此加快互動速度。
以下範例說明如何使用 generateContentStream
,從僅包含文字的提示要求中串流產生的文字:
import FirebaseVertexAI
// Initialize the Vertex AI service
let vertex = VertexAI.vertexAI()
// Initialize the generative model 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 stream generated text output, call generateContentStream with the text input
let contentStream = try model.generateContentStream(prompt)
for try await chunk in contentStream {
if let text = chunk.text {
print(text)
}
}
或者,您可以等待整個結果,而不是串流;只有在模型完成整個產生程序後,系統才會傳回結果。
以下範例說明如何使用 generateContent
,從只包含文字的提示要求產生文字:
import FirebaseVertexAI
// Initialize the Vertex AI service
let vertex = VertexAI.vertexAI()
// Initialize the generative model 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.")
你還可以做些什麼?
- 瞭解如何在向模型傳送長提示之前,計算符記。
- 開始著手準備正式版,包括設定 Firebase App Check,以防範未經授權的用戶端濫用 Gemini API。此外,請務必詳閱製作檢查清單。
試用 Gemini API 的其他功能
- 建構多輪對話 (聊天)。
- 使用多模態提示 (包括文字、圖片、PDF、影片和音訊) 來生成文字。
- 從文字和多模態提示產生結構化輸出內容 (例如 JSON)。
- 使用函式呼叫,將生成模型連結至外部系統和資訊。
瞭解如何控管內容產生
- 瞭解提示設計,包括最佳做法、策略和提示範例。
- 設定模型參數,例如溫度和輸出符記數量上限 (適用於 Gemini),或顯示比例和人物生成 (適用於 Imagen)。
- 使用安全性設定,調整可能會收到有害回應的機率。
進一步瞭解支援的型號
瞭解可用於各種用途的模型,以及相關配額和價格。針對 Vertex AI in Firebase 的使用體驗提供意見回饋