使用 BigQuery 串接 Vertex AI 進行文本生成 (分析 Google Cloud 公開資料庫)

更新於 發佈於 閱讀時間約 6 分鐘

Overview

在文中將會使用 BigQueryhosted remote functionsVertex AI大型語言模型(LLM)進行文本生成(text-bison) 來分析並生成 GitHub 程式碼公開資料庫的摘要和程式語言識別。

資料庫來自 GitHub Archive Project,該項目包含超過 280 萬個開源 GitHub 存儲庫的完整快照,存儲在 Google BigQuery 公共數據集中。

Preparing the data

  1. 在 BigQuery 控制台中,點擊“+ADD”,點擊 “Public Datasets” 並搜索 “github_repos”。
  1. 在搜尋結果中,選擇 “GitHub Activity Data”,並點擊 “View Datasets


  1. 展開 github_repos 數據集並選擇 sample_contents 表,點擊 “Preview”,可以預覽部分的數據。


Create the BigQuery dataset

  1. 點擊 Project ID 旁的三個點,選擇 "Create Dataset"。
  2. 輸入 "bq_llm" 作為 Dataset ID,然後點擊 "Create Dataset",該 Dataset 將用於儲存下一步創建的模型。


Create the external connection

  1. 點擊 “+ ADD” 按鈕,選擇“Connections to external data sources”。
  2. 選擇連接類型為 “Vertex AI remote models, remote functions and BigLake (Cloud Resource)” 並將 Connection ID 設置為 “llm-connection”。
  3. 點擊 “CREATE CONNECTION”。


  1. 複製剛剛建立 Connection 的 Service Account ID
  2. 瀏覽到 IAM & Admin 的 console 頁面,在 IAM 頁面上點擊 “+ GRANT ACCESS”。
  3. 貼上 Connection 的 Service Account ID 並賦予 Vertex AI User 權限,點擊 “SAVE


Create a remote ML model

  1. 在 BigQuery 頁面,點擊 “+ Compose new query” ,建立一個新查詢。
  2. 輸入以下語法
CREATE OR REPLACE MODEL bq_llm.llm_model
REMOTE WITH CONNECTION `us.llm-connection`
OPTIONS (remote_service_type = 'CLOUD_AI_LARGE_LANGUAGE_MODEL_V1');
這會創建一個名稱為 llm_model 的模型在。該模型利用 Vertex AI 的 CLOUD_AI_LARGE_LANGUAGE_MODEL_V1 作為遠程函數。完成後,您會在剛剛建立的dataset (bq_llm)看到該模型。



Generate text using the ML model

  1. 在 BigQuery 頁面,建立一個新查詢,並執行以下語法進行文本的生成。
SELECT
ml_generate_text_result['predictions'][0]['content'] AS generated_text,
ml_generate_text_result['predictions'][0]['safetyAttributes'] AS safety_attributes,
* EXCEPT (ml_generate_text_result)
FROM
ML.GENERATE_TEXT(
MODEL `bq_llm.llm_model`,
(
SELECT
CONCAT('Can you read the code in the following text and generate a summary for what the code is doing and what language it is written in:', content) AS prompt
FROM
`bigquery-public-data.github_repos.sample_contents`
LIMIT 5
),
STRUCT(
0.2 AS temperature,
100 AS max_output_tokens));

  1. 該 SQL 語法的解釋:
  • ml_generate_text_result 是從 text generation model 獲取的回應( JSON 格式),包含生成的文本和安全屬性:
    • content 代表生成的文本結果。
    • safetyAttributes 內建的內容過濾器,以避免 LLM 產生任何無意的或意想不到的回應。
  • ML.GENERATE_TEXT 是 BigQuery 中用於訪問 Vertex AI LLM 以執行文本生成任務的函數。
  • CONCAT 函數將提供的提示詞附加到數據庫記錄中。
  • github_repos 是公共數據集的名稱,而 sample_contents 是使用的 Table 名稱。
  • temperature 是控制回應隨機性的提詞參數—數值越小,相關性越高。
  • max_output_tokens 是您希望回應中包含的詞數。
  1. 執行語句查詢後,模型生成結果如下:

延伸閱讀

Tutorial: Analyze an object table by using a remote function | Bigquery

Generate text by using the ML.GENERATE_TEXT function | Bigquery

The ML.GENERATE_TEXT function | Bigquery

Model versions and lifecycle | Generative AI on Vertex AI

Text | Generative AI on Vertex AI

REF:

https://www.cloudskillsboost.google/focuses/74646?parent=catalog

留言
avatar-img
留言分享你的想法!
avatar-img
Marcos的方格子
19會員
44內容數
歡迎來到「Marcos的方格子」!目前在「Marcos談科技」撰寫在職涯上學習到的知識,在「Marcos談書」分享我在日常的閱讀和心得,歡迎您的到來!!
Marcos的方格子的其他內容
2024/12/21
可觀測性(Observability)是現代架構中的核心能力,透過指標、日誌和分散式追蹤三大支柱,幫助開發者深入理解系統狀態並快速定位問題根源。本篇文章回顧 DevOps Taiwan Meetup 的精彩內容,解析可觀測性與監控的差異、建置流程的四大階段,以及實務應用中的工具選擇與導入時機!
Thumbnail
2024/12/21
可觀測性(Observability)是現代架構中的核心能力,透過指標、日誌和分散式追蹤三大支柱,幫助開發者深入理解系統狀態並快速定位問題根源。本篇文章回顧 DevOps Taiwan Meetup 的精彩內容,解析可觀測性與監控的差異、建置流程的四大階段,以及實務應用中的工具選擇與導入時機!
Thumbnail
2024/12/14
本篇文章針對 CKA 認證考試中常見的實作題目,提供詳細解題流程與指令範例。內容基於 examtopic 題目解析,幫助考生掌握實作技能與應試技巧,快速提升 Kubernetes 操作能力,為通過 CKA 考試做好萬全準備!
Thumbnail
2024/12/14
本篇文章針對 CKA 認證考試中常見的實作題目,提供詳細解題流程與指令範例。內容基於 examtopic 題目解析,幫助考生掌握實作技能與應試技巧,快速提升 Kubernetes 操作能力,為通過 CKA 考試做好萬全準備!
Thumbnail
2024/09/17
如何一年內考取 Google Cloud 所有雲端證照
Thumbnail
2024/09/17
如何一年內考取 Google Cloud 所有雲端證照
Thumbnail
看更多
你可能也想看
Thumbnail
「欸!這是在哪裡買的?求連結 🥺」 誰叫你太有品味,一發就讓大家跟著剁手手? 讓你回購再回購的生活好物,是時候該介紹出場了吧! 「開箱你的美好生活」現正召喚各路好物的開箱使者 🤩
Thumbnail
「欸!這是在哪裡買的?求連結 🥺」 誰叫你太有品味,一發就讓大家跟著剁手手? 讓你回購再回購的生活好物,是時候該介紹出場了吧! 「開箱你的美好生活」現正召喚各路好物的開箱使者 🤩
Thumbnail
SearchGPT 是由 OpenAI 開發的 AI 驅動搜尋引擎,結合了傳統搜尋引擎技術和最新的 AI 技術,能即時從互聯網獲取資訊。它與其他搜尋引擎相比,提供更相關的搜尋結果、更豐富的結果呈現、更快的速度和更好的生態合作基礎建設。
Thumbnail
SearchGPT 是由 OpenAI 開發的 AI 驅動搜尋引擎,結合了傳統搜尋引擎技術和最新的 AI 技術,能即時從互聯網獲取資訊。它與其他搜尋引擎相比,提供更相關的搜尋結果、更豐富的結果呈現、更快的速度和更好的生態合作基礎建設。
Thumbnail
在當今快速變化的數位時代,企業面臨著前所未有的數據處理需求。為了應對這些挑戰,企業紛紛建立自己的大型語言模型(LLM),利用大量數據進行訓練,讓模型能夠理解並生成自然語言,從而實現人機協作,優化業務流程並提升客戶體驗。
Thumbnail
在當今快速變化的數位時代,企業面臨著前所未有的數據處理需求。為了應對這些挑戰,企業紛紛建立自己的大型語言模型(LLM),利用大量數據進行訓練,讓模型能夠理解並生成自然語言,從而實現人機協作,優化業務流程並提升客戶體驗。
Thumbnail
數據分析與解讀 隨著數據的爆炸式增長,能夠分析、解讀和應用數據的能力變得至關重要。這包括熟悉數據分析工具和技術,如統計學、數據挖掘、機器學習等。然而,僅靠短時間的數據分析並不足以提供深入見解。 要熟悉數據分析工具和技術,如統計學、數據挖掘和機器學習,可以從以下幾個方面入手: 基礎知識的學習
Thumbnail
數據分析與解讀 隨著數據的爆炸式增長,能夠分析、解讀和應用數據的能力變得至關重要。這包括熟悉數據分析工具和技術,如統計學、數據挖掘、機器學習等。然而,僅靠短時間的數據分析並不足以提供深入見解。 要熟悉數據分析工具和技術,如統計學、數據挖掘和機器學習,可以從以下幾個方面入手: 基礎知識的學習
Thumbnail
OpenAI 繼上週發表新的人工智慧模型「GPT-4o mini」,由 AI 驅動的搜尋引擎 SearchGPT 原型也隨之發布,該引擎能結合來自網路的即時資訊,讓使用者像與 ChatGPT 交談一樣搜尋。 透過 SearchGPT,用戶能以自然語言提出問題(與使用 ChatGPT 交談方式相同
Thumbnail
OpenAI 繼上週發表新的人工智慧模型「GPT-4o mini」,由 AI 驅動的搜尋引擎 SearchGPT 原型也隨之發布,該引擎能結合來自網路的即時資訊,讓使用者像與 ChatGPT 交談一樣搜尋。 透過 SearchGPT,用戶能以自然語言提出問題(與使用 ChatGPT 交談方式相同
Thumbnail
本文要探討AI的任務與實戰場景。AI技術已深入生活各層面,從違約預測到都市交通管理。AI任務主要有三類:數值型資料處理、自然語言處理(NLP)和電腦影像辨識。時間序列資料和強化學習方法(如AlphaGo)也引起廣泛關注。AI演算法和方法因應不同學派和技術發展而多樣化,了解這些基礎有助選擇適合研究方向
Thumbnail
本文要探討AI的任務與實戰場景。AI技術已深入生活各層面,從違約預測到都市交通管理。AI任務主要有三類:數值型資料處理、自然語言處理(NLP)和電腦影像辨識。時間序列資料和強化學習方法(如AlphaGo)也引起廣泛關注。AI演算法和方法因應不同學派和技術發展而多樣化,了解這些基礎有助選擇適合研究方向
Thumbnail
本文談及資料科學的領域與分工。首先是建造一個AI的研發流程,資料收集到 AI 模型訓練的過程,AI經歷這一切流程被創造出來並產生價值;再來本文也提及在這個領域中的各種腳色、資料工程師、數據庫工程師、資料科學家和資料分析師的各種介紹。並且強調跨領域合作的重要性。
Thumbnail
本文談及資料科學的領域與分工。首先是建造一個AI的研發流程,資料收集到 AI 模型訓練的過程,AI經歷這一切流程被創造出來並產生價值;再來本文也提及在這個領域中的各種腳色、資料工程師、數據庫工程師、資料科學家和資料分析師的各種介紹。並且強調跨領域合作的重要性。
Thumbnail
這篇文章介紹瞭如何利用AI論文工具來提高研究生的論文閱讀效率以及寫作效率。透過Connected Papers、Scispace和Immersive Translate等AI工具,可以進行文獻回顧、段落摘要生成、Paraphrasing、APA格式生成以及論文對照翻譯
Thumbnail
這篇文章介紹瞭如何利用AI論文工具來提高研究生的論文閱讀效率以及寫作效率。透過Connected Papers、Scispace和Immersive Translate等AI工具,可以進行文獻回顧、段落摘要生成、Paraphrasing、APA格式生成以及論文對照翻譯
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News