Models - Gemini 介紹

Gemini

本章旨在介紹 Google Deepmind 最新的多模態 AI 模型系列 Gemini ,包括 Ultra、Pro 和 Nano 三種尺寸,它們具備跨文本、圖像、影片、音頻和程式碼的跨模態推理能力。


目錄


介紹

Gemini 是 Google DeepMind 最新的、功能最強大的 AI 模型。它從一開始就具備多模態能力,能在文本、圖像、影片、音頻和程式碼之間展現令人印象深刻的跨模態推理。 它是首個在MMLU在 MMLU(一個廣受使用的考試基準)上達到人類專家級表現的模型,並在 20 個多模態基準測試中樹立了新的技術里程碑。

模型尺寸

  • Ultra:模型系列中功能最強大的,適用於高度複雜的任務。

  • Pro:被認為是適用於廣泛任務的最佳擴展模型。

  • Nano:適用於裝置內存受限任務和使用案例的效率模型,包括 1.8B (Nano-1) 和 3.25B (Nano-2) 參數模型。

領先地位: 根據隨附的技術報告 Gemini 在 32 個基準測試中的 30 個方面提升了最新技術水準,涵蓋語言、程式碼、推理和多模態推理任務。

上下文長度訓練支援 32K 的上下文長度

訓練數據:模型在多模態和多語言數據上進行了聯合訓練,展現了強大的跨模態推理能力。


主要能力

Gemini 模型家族具備多項卓越能力,其中 Gemini Ultra 在結合思路鏈 (CoT) 提示自洽性等方法時,能實現其最高準確度。其主要能力包括:

程式碼生成:Gemini Ultra 正確實現了 74.4% 的 HumanEval 程式碼完成問題。

多語言處理Gemini 在 MGSM XLSum 等多語言數學和摘要基準測試中表現出色。

上下文理解與檢索:Gemini在 32K 上下文長度中,檢索正確值的準確度達到 98%。

多模態推理

  • 文本摘要: 能將摘要簡潔地總結成一句話。

提示詞:

你的任務是將以下摘要用一句話簡單扼要地說明,請避免使用技術性術語。

摘要:光合作用是綠色植物和某些其他生物利用陽光製造自身食物的過程。這個過程主要在葉子中進行,將二氧化碳和水轉換為葡萄糖和氧氣。這個過程對地球上的生命至關重要,因為它提供我們呼吸所需的氧氣,也構成了食物鏈的基礎。

模型輸出:

植物利用陽光製造食物,同時也產生我們需要呼吸的氧氣。
  • 資訊提取:能從表格、圖表和圖形中提取資訊。

提示詞:

你的任務是從機器學習論文的摘要中擷取出「模型名稱」。

你的回答應該是以 ["模型名稱"] 的陣列格式呈現。

如果你沒有在摘要中發現任何模型名稱,或無法確定,請回傳 ["NA"]。

摘要:近年來,像是 Flamingo 和 PaLI 等視覺語言模型在多模態任務上展現了傑出表現,能夠同時處理圖像與文字。我們最新提出的模型 Vistral 延續這些概念,並引入一種創新的架構以提升聯合學習的效率。有別於以往的模型,Vistral 不再需要獨立的圖像編碼器,而是將視覺處理直接整合進 Transformer 架構中。

模型輸出:

["Flamingo", "PaLI", "Vistral"]
  • 視覺問答:模型能理解圖表、自然圖像、表情符號等多種視覺輸入,並針對圖像提出的問題提供精準回答。

  • 驗證與糾正:展現了卓越的跨模態推理能力,能驗證答案的正確性,並在錯誤時指出問題所在並提供詳細解釋。

提示詞:

一輛質量為 1000 公斤 的汽車從靜止開始加速,經過 5 秒後達到 20 公尺/秒 的速度。

請問這段期間汽車所受到的合力為多少牛頓?(假設地面摩擦忽略不計)

學生回答:F=m⋅v=1000×20=20000N

模型輸出:

學生的答案錯誤,錯誤出在將「速度」直接帶入牛頓第二運動定律。根據公式:F=m⋅a。

我們需要先計算加速度a。由於是從靜止加速至 20 m/s,所花時間為 5 秒:a=(v−v0)/t=(20-0)/5=4m/s**2。

再代入牛頓第二定律:F=m⋅a=1000⋅4=4000N。

正確答案:F=4000N。
  • 重新排列圖表:能根據視覺提示生成 matplotlib 程式碼以重新排列子圖。

  • 影片理解:能分析影片並根據情況提供建議。

  • 圖像理解及生成:透過少樣本提示生成圖像。

  • 模態組合:能原生處理音頻和圖像序列。

  • 通用程式碼代理:Gemini 被用於構建通用代理 AlphaCode 2,該代理結合了推理、搜索和工具使用來解決競爭性程式設計問題。


小樣本提示

這項技術對於需要特定格式(如 JSON)或風格的輸出場景極為有用。透過在 Google AI Studio 中進行操作,使用者可輕易應用此功能,例如建立高效的主題分類器。

提示詞:

你的任務是將以下文本分類為指定主題之一:["科技", "娛樂", "政治", "體育", "健康", "財經"]。請輸出正確主題的中文名稱,並使用小寫。

文字:蘋果公司今天發布了最新款的 iPhone,主打攝影與 AI 處理晶片。

主題:科技

文字:這部電影在全球票房突破十億美元,創下導演個人新紀錄。

主題:娛樂

文字:立法院今日三讀通過最新財政預算法案,引發朝野激辯。

主題:政治

文字:我國羽球好手在世錦賽中奪得金牌,締造歷史新猷。

主題:體育

文字:根據最新研究,每天步行 30 分鐘有助於降低心臟病風險。

主題:健康

文字:台股今日收盤上漲百點,電子類股表現亮眼。

主題:財經

結果:

測試輸入:台股今日收盤上漲百點,電子類股表現亮眼。

模型輸出:財經

使用 Gemini API 進行資訊擷取

本節提供一個簡單範例,示範如何透過 Gemini API 提示 Gemini Pro 模型執行資訊擷取任務。您需要先安裝 google-generativeai 程式庫並從 Google AI Studio 取得 API 金鑰。

"""
在命令列中,只需執行一次即可透過 pip 安裝套件:
$ pip install google-generativeai
"""
import google.generativeai as genai
genai.configure(api_key="YOUR_API_KEY")

# 設定模型
generation_config = {
"temperature": 0,
"top_p": 1,
"top_k": 1,
"max_output_tokens": 2048,
}

safety_settings = [
{
"category": "HARM_CATEGORY_HARASSMENT",
"threshold": "BLOCK_MEDIUM_AND_ABOVE"
},

{
"category": "HARM_CATEGORY_HATE_SPEECH",
"threshold": "BLOCK_MEDIUM_AND_ABOVE"
},

{
"category": "HARM_CATEGORY_SEXUALLY_EXPLICIT",
"threshold": "BLOCK_MEDIUM_AND_ABOVE"
},

{
"category": "HARM_CATEGORY_DANGEROUS_CONTENT",
"threshold": "BLOCK_MEDIUM_AND_ABOVE"
}

]

model = genai.GenerativeModel(model_name="gemini-pro",
generation_config=generation_config,
safety_settings=safety_settings)

prompt_parts = [
"你的任務是從機器學習論文摘要中提取模型名稱。你的回應格式為一個模型名稱陣列 [\\\"model_name\\\"]。如果你在摘要中找不到模型名稱或不確定,則回傳 [\\\"NA\\\"]\n\n摘要:大型語言模型 (LLMs),例如 ChatGPT 和 GPT-4,已經徹底改變了自然語言處理研究,並展現了在通用人工智慧 (AGI) 方面的潛力。然而,LLM 昂貴的訓練和部署對透明和開放的學術研究構成了挑戰。為了應對這些問題,這個專案開源了 Chinese LLaMA 和 Alpaca…",
]

response = model.generate_content(prompt_parts)

print(response.text)

輸出:

[\"LLMs\", \"ChatGPT\", \"GPT-4\", \"Chinese LLaMA\", \"Alpaca\"]

結語

Gemini 作為 Google DeepMind 的頂級 AI 模型,原生多模態設計使其在跨文本、圖像、音頻和程式碼的推理方面表現卓越。憑藉其在多項基準測試中達到的人類專家級性能,以及支援長上下文理解能力,Gemini 為複雜的數據分析、內容生成和多模態互動提供了強大的解決方案。透過思維鏈和自我一致性等提示技術,其潛力更能被充分發揮。


References

Getting Started with Gemini


目錄:Models - 模型提示指南

上一篇:Models - Flan
下一篇:Models - Gemini Advanced