Gemini 2.5 Pro API 完整教學:多模態應用開發实战指南

Gemini 2.5 Pro 是 Google 最新旗艦多模態 AI 模型,支援100萬Tokens上下文與原生音訊理解,圖像理解準確率超越 GPT-4o 高達 15%。本教學將帶您完整掌握從環境建置到企業級部署的全流程開發能力。

根據史丹佛大學以人為本人工智慧研究所(Stanford HAI (Human-Centered AI Institute))的 AI Index 年度報告指出,多模態模型已成為企業 AI 採用的主流趨勢,2024 年採用率較前年增長 47%。本教學將涵蓋 Vision API 整合、Streaming 即時回應、Function Calling with Media、Vertex AI 企業部署等核心主題,提供 Node.js 與 Python 雙語言範例程式碼。

一、模型能力概述與環境建置

Gemini 2.5 Pro 採用 Google 最新架構設計,支援以下核心能力:

首先安裝 Python SDK:

pip install google-generativeai

Node.js 安裝方式:

npm install @google/generative-ai

初始化客戶端需要取得 API Key,可從 Google AI Studio 免費取得。麻省理工學院計算機科學與人工智慧實驗室(MIT CSAIL)的研究指出,多模態 AI 的發展關鍵在於統一的 token 化機制,這正是 Gemini 架構的核心優勢。

二、Vision API 整合:圖像理解實戰

Gemini 2.5 Pro 的 Vision API 支援直接輸入圖像進行分析,無需額外的圖像識別模型。以下是 Python 實作範例:

import google.generativeai as genai
import PIL.Image

# 初始化客戶端
genai.configure(api_key="YOUR_API_KEY")

# 載入圖像
image = PIL.Image.open("sample.jpg")

# 建立模型
model = genai.GenerativeModel("gemini-2.0-pro-exp-02-05")

# 圖像分析請求
response = model.generate_content([
    image,
    "分析這張圖片中的主要物件與場景,並描述圖片風格"
])

print(response.text)

Node.js 版本:

const { GoogleGenerativeAI } = require("@google/generative-ai");
const fs = require("fs");

const genAI = new GoogleGenerativeAI("YOUR_API_KEY");

async function analyzeImage() {
  const model = genAI.getGenerativeModel({ model: "gemini-2.0-pro-exp-02-05" });
  
  const imagePart = {
    inlineData: {
      data: fs.readFileSync("sample.jpg").toString("base64"),
      mimeType: "image/jpeg"
    }
  };

  const result = await model.generateContent([imagePart, "描述這張圖片"]);
  console.log(result.response.text());
}

analyzeImage();

此功能適用於產品檢測、醫療影像分析、內容審核等企業應用場景。根據 IEEE 發布的 AI 倫理標準(IEEE 7000),影像識別系統需要具備可解釋性,Gemini 的自然語言輸出特性正好滿足此要求。

三、Streaming 即時回應實作

對於需要即時互動的應用,Streaming 模式可大幅降低延遲。以下實作聊天室場景:

# Python Streaming 範例
model = genai.GenerativeModel("gemini-2.0-pro-exp-02-05")

# 產生串流回應
response = model.generate_content(
    "解釋量子計算的基本原理",
    stream=True
)

for chunk in response:
    print(chunk.text, end="")

Streaming 模式適用於客服機器人、互動式教學、即時翻譯等場景。響應時間可控制在 500ms 以內,提供流暢的使用者體驗。

四、Function Calling with Media 進階應用

Gemini 2.5 Pro 支援 Function Calling,可結合外部工具與多媒體處理:

# 定義可呼叫的函數
tools = [{
    "function_declarations": [{
        "name": "extract_product_info",
        "description": "從產品圖片中提取資訊",
        "parameters": {
            "type": "object",
            "properties": {
                "image_data": {"type": "string", "description": "Base64 編碼的圖像"}
            },
            "required": ["image_data"]
        }
    }]
}]

model = genai.GenerativeModel(
    "gemini-2.0-pro-exp-02-02",
    tools=tools
)

# 請求模型呼叫函數
response = model.generate_content([
    {"text": "從這張產品圖片中提取價格與名稱"},
    {"inline_data": {"mime_type": "image/jpeg", "data": image_base64}}
])

此功能可串接庫存管理系統、價格資料庫或 CRM 系統,打造完整的自動化业务流程。

五、Vertex AI 企業部署策略

對於需要企業級安全與合規的部署,Google Vertex AI 提供完整解決方案:

根據 Gartner 人工智慧研究(Gartner AI Research)的報告,企業 AI 採用面臨的首要挑戰是部署複雜度與成本控制,Vertex AI 的全託管服務可有效降低這些障礙。部署定價方面,輸入約 $1.25/1M tokens,輸出約 $5.00/1M tokens,適合中高用量企業應用。

部署程式碼範例:

from vertexai import vertexai

# 初始化 Vertex AI
vertexai.init(project="YOUR_PROJECT", location="us-central1")

# 部署模型
model = GenerativeModel("gemini-2.0-pro-exp-02-05")

# 企業級安全設定
safety_settings = {
    HarmCategory.HARM_CATEGORY_HATE_SPEECH: HarmBlockThreshold.BLOCK_MEDIUM_AND_ABOVE,
    HarmCategory.HARM_CATEGORY_DANGEROUS_CONTENT: HarmBlockThreshold.BLOCK_ONLY_HIGH
}

response = model.generate_content(
    prompt,
    safety_settings=safety_settings
)

總結與效能優化建議

Gemini 2.5 Pro API 為開發者提供了強大的多模態 AI 開發基礎。建議開發者關注以下優化要點:

  1. 上下文快取:重複內容可啟用快取節省最高 75% 成本
  2. 系統指令優化:精簡 system prompt 減少 tokens 消耗
  3. 批次處理:離峰時段批次處理非即時任務
  4. Streaming 優先:即時應用首選 Streaming 模式

透過本教學的範例程式碼與企業部署策略,開發者可快速建構,生產級多模態 AI 應用。