第 32, 33 篇,我來分享在 Jupyter Notebook 使用 Gemini 的多模態提示,從文本和視覺數據中提取信息、生成視頻描述,並使用多模態檢索增強生成 (RAG) 功能檢索視頻之外的額外信息。

這兩個 labs 帶我們看到 Gemini 不只是能看圖片、聽聲音,更能理解複雜的視覺場景、比較圖片差異,甚至根據房間佈置推薦適合的家具。重點在於這些都不是單純的模式匹配,而是真正的理解和推理能力。

GSP1210 - Multimodality with Gemini
GSP1230 - Using Gemini for Multimodal Retail Recommendations

主要特色

➊ 多模態理解:同時處理文字、圖片、視頻、音頻等多種輸入
➋ 視覺推理:能夠比較多張圖片、理解空間關係和場景佈置
➌ 商業應用:將 AI 能力實際應用在零售推薦系統中
➍ 程式碼分析:甚至能理解和解釋技術圖表和程式碼結構
➎ 實時互動:通過 Vertex AI Workbench 實現即時的 AI 對話
➏ 實用場景:從購物清單計算到家具推薦的實際應用案例

Lab 實作

➊ 設定 Vertex AI Workbench 環境和 Gemini Flash 模型
➋ 圖片跨多圖片理解與計算任務
➌ 生成視頻描述和標籤提取
➍ 音頻內容理解和長上下文處理
➎ 程式碼分析和技術圖表解讀
➏ 零售場景的圖片比較與推薦系統建置

𝕂𝕖𝕖𝕡 𝕝𝕖𝕒𝕣𝕟𝕚𝕟𝕘. 𝕂𝕖𝕖𝕡 𝕙𝕒𝕔𝕜𝕚𝕟𝕘!

實作影片

指令整理

Vertex AI 環境初始化

此部分設定 GCP 專案的基礎環境變數。這些變數在後續 Vertex AI 操作中被引用,確保所有 AI 模型和資源都在正確的專案和區域中執行。

export PROJECT_ID=$(gcloud config get-value project)
export LOCATION="us-central1"  # Vertex AI 服務的主要區域,影響模型可用性和效能

常見坑點:確保選擇支援 Gemini 模型的區域,不同區域的可用模型可能不同
概念連結:這些環境變數是後續 Gemini API 呼叫的基礎,所有多模態功能都依賴於此設定

Gemini 多模態模型載入

初始化 Gemini Flash 模型是使用多模態 AI 能力的核心。這個步驟建立了與 Google 最先進生成式 AI 模型的連接,讓我們能夠處理複雜的多模態輸入。

# 載入 Gemini 2.0 Flash 模型進行多模態處理
multimodal_model = GenerativeModel("gemini-2.0-flash-001")

常見坑點:模型名稱必須完全正確,版本號可能會更新
概念連結:模型載入後即可進行圖片分析、視頻處理等各種多模態任務

Cloud Storage 資源準備

多模態資料通常儲存在 Cloud Storage 中,此步驟確保 AI 模型能存取到所需的圖片和視頻檔案。

# 同步下載測試資料到本地環境
gsutil -m rsync -r gs://spls/gsp520 .

常見坑點:確保服務帳戶有 Cloud Storage 讀取權限
概念連結:資料準備是多模態 AI 應用的基礎,所有後續的圖片分析和視頻處理都依賴於此

多模態內容生成

整合各種模態的輸入(文字、圖片、視頻)來生成智慧回應。這是 Gemini 多模態能力的實際應用展示。

# 使用多模態提示生成回應
responses = multimodal_model.generate_content(contents, stream=True)

常見坑點:contents 列表必須按照正確格式組織,各模態資料需正確載入
概念連結:這是前述所有準備工作的整合,展現了從環境設定到實際應用的完整鏈條

驗證與測試

確認多模態 AI 應用是否正常運作,這是學習過程中的重要環節。

# 檢查 Vertex AI API 權限
gcloud services enable aiplatform.googleapis.com

常見坑點:API 可能需要手動啟用,特別是在新專案中

Google Cloud AI Study Jam 2025 學習系列 32