检查点
Install Vertex AI SDK for Python and import libraries
/ 20
Use the Gemini Pro model
/ 20
Build metadata of documents containing text and images
/ 20
Search similar image with image query
/ 20
Print citations and references
/ 20
使用 Vertex AI Gemini API 的多模態檢索增強生成 (RAG) 功能
GSP1231
總覽
Gemini 是由 Google DeepMind 開發的一系列生成式 AI 模型,專為多模態用途而設計。您可以透過 Gemini API 使用 Gemini Pro Vision 和 Gemini Pro 模型。
檢索增強生成 (RAG) 已成為大型語言模型用來存取外部資料的熱門方式,而且這個機制也有助於減少幻覺回應。RAG 模型經過訓練,會從大型語料庫檢索相關文件,然後依據檢索的文件生成回覆。本研究室將說明如何透過多模態 RAG,針對圖文並茂的金融文件進行問與答。
比較文字型和多模態 RAG
與文字型 RAG 相比,多模態 RAG 提供更多優勢:
- 增強知識存取能力:多模態 RAG 可存取並處理文字和影像資訊,為大型語言模型提供更豐富全面的知識庫。
- 提升推論能力:多模態 RAG 採用視覺提示,可根據多種形式的資料做出更完善的推論。
本研究室說明如何透過使用 Vertex AI Gemini API 的 RAG、文字嵌入項目和多模態嵌入項目,建構文件搜尋引擎。
目標
本研究室的內容包括:
- 對含有文字和圖片的文件擷取及儲存中繼資料,並生成文件嵌入項目。
- 以文字查詢搜尋中繼資料,找出相似文字或圖片。
- 以圖片查詢搜尋中繼資料,找出相似圖片。
- 將文字查詢做為輸入內容,並使用文字和圖片搜尋符合情境的解答。
設定和需求
點選「Start Lab」按鈕前的須知事項
請詳閱以下操作說明。研究室活動會計時,而且中途無法暫停。點選「Start Lab」 後就會開始計時,讓您瞭解有多少時間可以使用 Google Cloud 資源。
您將在真正的雲端環境中完成實作研究室活動,而不是在模擬或示範環境。為達此目的,我們會提供新的暫時憑證,讓您用來在研究室活動期間登入及存取 Google Cloud。
如要完成這個研究室活動,請先確認:
- 您可以使用標準的網際網路瀏覽器 (Chrome 瀏覽器為佳)。
- 是時候完成研究室活動了!別忘了,活動一開始將無法暫停。
如何開始研究室及登入 Google Cloud 控制台
-
按一下「Start Lab」(開始研究室) 按鈕。如果研究室會產生費用,畫面中會出現選擇付款方式的彈出式視窗。左側的「Lab Details」窗格會顯示下列項目:
- 「Open Google Cloud console」按鈕
- 剩餘時間
- 必須在這個研究室中使用的暫時憑證
- 完成這個實驗室所需的其他資訊 (如有)
-
點選「Open Google Cloud console」;如果使用 Chrome 瀏覽器,也能按一下滑鼠右鍵,然後選取「在無痕式視窗中開啟連結」。
接著,實驗室會啟動相關資源並開啟另一個分頁,當中顯示「登入」頁面。
提示:您可以在不同的視窗中並排開啟分頁。
注意:如果頁面中顯示「選擇帳戶」對話方塊,請點選「使用其他帳戶」。 -
如有必要,請將下方的 Username 貼到「登入」對話方塊。
{{{user_0.username | "Username"}}} 您也可以在「Lab Details」窗格找到 Username。
-
點選「下一步」。
-
複製下方的 Password,並貼到「歡迎使用」對話方塊。
{{{user_0.password | "Password"}}} 您也可以在「Lab Details」窗格找到 Password。
-
點選「下一步」。
重要事項:請務必使用實驗室提供的憑證,而非自己的 Google Cloud 帳戶憑證。 注意:如果使用自己的 Google Cloud 帳戶來進行這個實驗室,可能會產生額外費用。 -
按過後續的所有頁面:
- 接受條款及細則。
- 由於這是臨時帳戶,請勿新增救援選項或雙重驗證機制。
- 請勿申請免費試用。
Google Cloud 控制台稍後會在這個分頁開啟。
工作 1:開啟 Vertex AI Workbench 中的筆記本
-
前往 Google Cloud 控制台,依序點選「導覽選單」>「Vertex AI」>「Workbench」。
-
找到
generative-ai-jupyterlab
筆記本,然後點選「Open JupyterLab」按鈕。
Workbench 執行個體的 JupyterLab 介面會在新瀏覽器分頁中開啟。
工作 2:設定筆記本
-
點選「
intro_multimodal_rag.ipynb
」檔案。 -
執行筆記本的「Getting Started」和「Import libraries」部分。
- 在「Project ID」部分使用「
」,並在「Location」部分使用「 」。
- 在「Project ID」部分使用「
點選「Check my progress」確認目標已達成。
在後續章節中,您需要執行各個筆記本儲存格,瞭解如何使用 Gemini API 建構多模態 RAG 系統。
工作 3:使用 Gemini Pro 模型
Gemini Pro (gemini-pro
) 模型可處理自然語言工作、多輪文字和程式碼對話,也能生成程式碼。在本節中,您將下載這個筆記本需要的輔助函式,藉此提高可讀性。您也可以直接在 GitHub 中查看程式碼 (intro_multimodal_rag_utils.py
)。
- 在這項工作中,請執行各個筆記本儲存格,以便載入模型、下載輔助函式,並從 Cloud Storage 取得文件和圖片。
點選「Check my progress」確認目標已達成。
工作 4:為含有文字和圖片的文件建立中繼資料
您在本研究室使用的來源資料為修改版 Google-10K,當中完整說明了 Google 的財務表現、業務營運、管理和風險因素等。由於原始文件相當龐大,您將改用僅 14 頁的修改版。雖然經過節錄,但除了文字外,本範例文件仍含有表格和圖表等圖片。
- 在這項工作中,請執行各個筆記本儲存格,從文件中擷取並儲存文字和圖片的中繼資料。
點選「Check my progress」確認目標已達成。
工作 5:文字搜尋
請先以簡單的問題進行搜尋,看看使用文字嵌入項目的簡易文字搜尋模型能否回答問題。符合預期的答案應該是:就不同類型的 Google 股票,顯示基本面額和稀釋每股淨收益。
- 在這項工作中,請執行各個筆記本儲存格,使用文字查詢搜尋相似文字和圖片。
工作 6:圖片搜尋
請試想這個情境:您希望用實際圖片當成搜尋圖片的線索,而不是輸入搜尋字詞。有個表格記錄了兩年的營業成本數據,而您想從同一份文件或多份文件中,找出與這個表格相似的其他圖片。
開發多模態 RAG 系統的重要基石,便是藉助 Gemini 和嵌入項目,讓該系統得以根據使用者輸入內容找出相似文字和圖片。我們會在下一項工作中探討這點。
- 在這項工作中,請執行各個筆記本儲存格,使用圖片查詢搜尋相似圖片。
點選「Check my progress」確認目標已達成。
比較推論
假設您有一個圖表,當中顯示 Google 的 A 股與其他股票 (例如 S&P 500 或其他科技公司) 相比的表現。您想將 C 股與該圖表做比較,瞭解 C 股的表現如何。這時 Gemini 不只能找出另一張相似圖片,還可幫忙比較相關圖片,告訴您哪一支股票較值得投資,隨後再說明原因。
- 在這項工作中,請執行各個筆記本儲存格,將兩張圖片做比較,然後找出最相似的圖片。
工作 7:多模態檢索增強生成 (RAG)
現在來應用所學,開始導入多模態 RAG 吧!您需要使用前幾節探討的各項元素導入多模態 RAG,步驟如下:
- 步驟 1:資訊會以圖片和文字形式內嵌在文件中,使用者可以輸入文字查詢來取得預期的結果。
-
步驟 2:參考「
文字搜尋
」一節探討的方法,使用類似做法進行搜尋,從文件的頁面中找出所有文字分塊。 -
步驟 3:參考「
圖片搜尋
」一節探討的方法,使用相同做法進行搜尋,根據與image_description
相符的使用者查詢,從頁面中找出所有相似圖片。 -
步驟 4:將步驟 2 和 3 中找到的所有相似文字和圖片彙整為
context_text
和context_images
。 - 步驟 5:Gemini 在傳遞使用者查詢時,會使用步驟 2 和 3 中找到的文字和圖片內容。您也可以新增具體指令,讓模型在回答使用者查詢時記住這些要點。
- 步驟 6:Gemini 生成問題解答後,您可選擇顯示引用資料,並依此查證用來回應該查詢的所有相關文字和圖片。
- 在這項工作中,請執行各個筆記本儲存格,以便執行多模態 RAG。
點選「Check my progress」確認目標已達成。
恭喜!
在本研究室中,您已瞭解如何建構採用多模態檢索增強生成 (RAG) 系統的強大文件搜尋引擎。這段期間,您學會了對含有文字和圖片的文件擷取及儲存中繼資料,並生成文件嵌入項目。此外,您也學到如何以文字和圖片查詢搜尋中繼資料,找出相似文字或圖片。最後,您還學會如何將文字查詢做為輸入內容,並使用文字和圖片搜尋符合情境的解答。
後續步驟/瞭解詳情
- 查看 Generative AI on Vertex AI 說明文件
- 前往 Google Cloud Tech 的 YouTube 頻道,進一步瞭解生成式 AI
- Google Cloud 生成式 AI 官方存放區
- Gemini 筆記本示例
Google Cloud 教育訓練與認證
協助您瞭解如何充分運用 Google Cloud 的技術。我們的課程會介紹專業技能和最佳做法,讓您可以快速掌握要領並持續進修。我們提供從基本到進階等級的訓練課程,並有隨選、線上和虛擬課程等選項,方便您抽空參加。認證可協助您驗證及證明自己在 Google Cloud 技術方面的技能和專業知識。
手冊上次更新日期:2024 年 6 月 13 日
實驗室上次測試日期:2024 年 6 月 13 日
Copyright 2024 Google LLC 保留所有權利。Google 和 Google 標誌是 Google LLC 的商標,其他公司和產品名稱則有可能是其關聯公司的商標。