技術筆記 / AI

Google Vertex AI + Gemini

全面解析:如何上手 Vertex AI + Gemini,釋放強大 AI 潛能

Google Cloud 旗下的 Vertex AI 平台與其最強大的多模態 AI 模型 Gemini 的結合,為開發者和企業提供了一個前所未有的強大工具,用以建構新一代的人工智慧應用。本文將深入淺出地介紹如何開始使用 Vertex AI 搭配 Gemini,從基本概念、應用場景到實際操作步驟,帶您一窺這個強大組合的魅力。

核心概念:Vertex AI 與 Gemini 的完美結合

首先,讓我們先了解這兩者的核心概念:

當這兩者結合,Vertex AI + Gemini 意味著您可以在一個企業級、安全且可擴展的平台上,輕鬆存取、客製化並部署強大的 Gemini 模型,進而打造出具備以下能力的應用:

應用場景:釋放各行各業的創新潛能

Vertex AI + Gemini 的應用潛力幾乎無遠弗屆,以下列舉幾個常見的應用場景:

應用領域 具體案例 Gemini 的關鍵能力
客戶服務 打造 24/7 的智慧客服,能理解客戶的複雜問題並提供個人化回覆。 自然語言理解、多輪對話、情緒分析
行銷與銷售 自動生成吸引人的廣告文案、社群貼文和個人化行銷郵件。 文本生成、創意寫作、風格模仿
軟體開發 輔助開發人員編寫、除錯和解釋程式碼,提升開發效率。 程式碼生成、程式碼理解、除錯建議
內容創作 快速生成文章草稿、劇本、新聞稿等,並可依據圖片或影片內容生成描述。 長文本生成、多模態理解、摘要能力
數據分析 從大量的財報、研究報告中快速提取關鍵資訊,並生成摘要報告。 資訊提取、文本摘要、數據洞察
零售與電商 根據商品圖片和描述,自動生成豐富的商品介紹和客戶問答。 圖像理解、文本生成
金融服務 分析市場趨勢、新聞情緒,並協助進行風險評估。 文本分析、情緒偵測、複雜推理

如何開始:您的第一步

準備好開始了嗎?以下是使用 Vertex AI + Gemini 的基本步驟:

1. 設定您的 Google Cloud 環境

您需要一個 Google Cloud 專案才能開始使用 Vertex AI。

2. 探索與實驗:Vertex AI Studio

對於初學者或想快速測試模型能力的使用者,Vertex AI Studio 是一個非常友善的起點。這是一個視覺化的網頁介面,讓您無需編寫任何程式碼,就能與 Gemini 模型互動。

在 Vertex AI Studio 中,您可以:

3. 整合與開發:使用 Vertex AI Gemini API

當您準備好將 Gemini 的能力整合到您的應用程式時,就需要使用 Vertex AI Gemini API。這讓您可以透過程式化的方式呼叫 Gemini 模型。

以下是一個使用 Python SDK 的簡單範例:

Python

import vertexai
from vertexai.generative_models import GenerativeModel, Part

def generate_text(project_id: str, location: str) -> str:
    """Generates content from a text prompt."""

    # Initialize Vertex AI
    vertexai.init(project=project_id, location=location)

    # Load the model
    multimodal_model = GenerativeModel("gemini-1.5-flash-001")

    # Generate content
    response = multimodal_model.generate_content(
        ["為什麼天空是藍色的?"]
    )
    print(response.text)
    return response.text

if __name__ == "__main__":
    # 替換成您的專案 ID 和地區
    generate_text("your-gcp-project-id", "us-central1")

要執行此類程式碼,您需要:

  1. 安裝 Google Cloud SDK (gcloud CLI): 用於在本機環境進行身份驗證。

  2. 安裝 Vertex AI SDK for Python: pip install --upgrade google-cloud-aiplatform

  3. 進行身份驗證: 在您的終端機執行 gcloud auth application-default login。

結語:擁抱 AI 驅動的未來

Vertex AI 與 Gemini 的結合,不僅僅是技術上的堆疊,它更代表著一種全新的開發典範。開發者不再需要從零開始訓練複雜的模型,而是可以站在巨人的肩膀上,直接利用世界頂尖的 AI 技術來解決真實世界的問题。無論您是經驗豐富的 AI 工程師,還是剛入門的開發者,Vertex AI + Gemini 都為您提供了一個強大且易於上手的平台,讓您能夠盡情發揮創意,打造出真正具有影響力的智慧應用。

範例

如何直接輸入影片進行分析並生成口白 (Step-by-Step)

這個流程會比處理單張圖片更強大,也稍微不同。關鍵在於影片檔案通常很大,無法直接放在 API 請求中,因此我們需要先將它上傳到 Google Cloud Storage (GCS)。

步驟 1:準備並上傳影片檔案

  1. 取得影片檔案: 準備好您想分析的電影或影片片段 (例如 .mp4, .mov, .avi 等格式)。

  2. 前往 Google Cloud Storage: 在您的 Google Cloud 專案中,導航至「Cloud Storage」。

  3. 建立儲存桶 (Bucket): 如果您還沒有儲存桶,請建立一個。儲存桶是您在雲端上存放檔案的容器。請確保其地理位置與您計畫使用的 Vertex AI 地區相近,以獲得最佳效能。

  4. 上傳影片: 將您的影片檔案上傳到剛剛建立的儲存桶中。

  5. 取得影片的 GCS URI: 上傳完成後,您需要該檔案的 GCS URI (統一資源識別符)。它看起來會像這樣:gs://your-bucket-name/your-video-file.mp4。請複製這個路徑。

步驟 2:設計您的分析指令 (Prompt)

這是最關鍵的一步。您需要明確地告訴 Gemini 您希望它做什麼。針對您的需求「擷取精華片段並為每個片段寫下口白」,您的提示可以這樣設計:

範例提示 (Prompt):

「請仔細分析這部影片。你的任務是:

  1. 找出影片中 3 到 5 個最精彩、最關鍵的場景(精華片段)。

  2. 對於每一個精華片段,請提供它的開始和結束時間戳記 (timestamp)。

  3. 簡要描述這個片段中發生的故事情節。

  4. 最後,為這個片段創作一句充滿懸念且吸引人的電影預告片風格口白。

請用清晰的格式輸出結果。」

步驟 3:使用 Vertex AI Gemini API (Python 範例)

現在,我們將使用 Python 程式碼,將影片的 GCS URI 和您的提示發送給 Gemini 1.5 Pro。

Python

import vertexai
from vertexai.generative_models import GenerativeModel, Part

def analyze_video_and_generate_voiceover(
    project_id: str, 
    location: str, 
    gcs_uri: str, 
    prompt: str
) -> str:
    """
    Analyzes a video from Google Cloud Storage and generates highlights with voiceovers.
    """
    # 初始化 Vertex AI
    vertexai.init(project=project_id, location=location)

    # 載入 Gemini 1.5 Pro 模型
    # 注意:影片處理需要使用支援長上下文的 Pro 模型
    model = GenerativeModel("gemini-1.5-pro-001")

    # 從 GCS URI 準備影片檔案
    # 這是直接輸入影片的關鍵步驟
    video = Part.from_uri(gcs_uri, mime_type="video/mp4")

    # 將影片和你的提示一起發送給模型
    contents = [video, prompt]

    print("正在向 Gemini 1.5 Pro 發送請求,請稍候...")
    response = model.generate_content(contents)

    return response.text

if __name__ == "__main__":
    # --- 請替換成您的資訊 ---
    PROJECT_ID = "your-gcp-project-id"
    LOCATION = "us-central1"  # 或其他支援 Gemini 1.5 Pro 的地區

    # 步驟 1 中您上傳影片後取得的 GCS URI
    GCS_VIDEO_URI = "gs://your-bucket-name/your-movie.mp4" 

    # 步驟 2 中設計的提示
    PROMPT_TEXT = """
    請仔細分析這部影片。你的任務是:
    1. 找出影片中 3 到 5 個最精彩、最關鍵的場景(精華片段)。
    2. 對於每一個精華片段,請提供它的開始和結束時間戳記 (timestamp)。
    3. 簡要描述這個片段中發生的故事情節。
    4. 最後,為這個片段創作一句充滿懸念且吸引人的電影預告片風格口白。
    請用清晰的格式輸出結果。
    """
    # -------------------------

    # 執行分析
    result = analyze_video_and_generate_voiceover(PROJECT_ID, LOCATION, GCS_VIDEO_URI, PROMPT_TEXT)

    # 打印結果
    print("\n--- Gemini 分析結果 ---")
    print(result)

步驟 4:解讀與應用結果

執行完程式碼後,您將會從 result 變數中得到 Gemini 的文字輸出。這個輸出可能會是類似這樣的格式:

Plaintext

--- Gemini 分析結果 ---

好的,這部影片的精華片段分析如下:

**精華片段 1**
* **時間戳記:** 00:15 - 00:45
* **情節描述:** 主角在雨夜的巷弄中被一群神秘人追趕,經過一番驚險的追逐後,他利用地形甩開了敵人,暫時躲進一間廢棄的倉庫。
* **口白:** 「當過去的陰影再次追上,他只能不斷向前奔跑...」

**精華片段 2**
* **時間戳記:** 01:32 - 02:10
* **情節描述:** 在一場盛大的宴會上,主角與反派首次正面交鋒。兩人之間對話充滿張力,氣氛劍拔弩張,暗示著更大的衝突即將來臨。
* **口白:** 「在一場權力與謊言的遊戲中,有些敵人,你永遠無法看透。」

**精華片段 3**
* **時間戳記:** 05:50 - 06:20
* **情節描述:** 影片的高潮部分,主角引爆了隱藏的炸彈,在巨大的爆炸火光中轉身離去,背景是敵方基地的毀滅。
* **口白:** 「他將用自己的方式,終結這一切。」

重要考量

總結來說,直接輸入影片是完全可行的,這也是 Vertex AI + Gemini 最令人興奮的功能之一,它為自動化的影片內容創作、審核和摘要開啟了全新的可能性。

在 GitHub 看原文