
簡介
生成式AI(Generative AI, 簡稱genAI, GAI)是基於語言模型(language model)的人工智慧技術,允許AI接收自然語言輸入(使用者輸入的提示詞prompt),並以多種格式生成新內容,包含自然語言對話、圖片、影片、程式碼等。
註:自然語言(Natural Language)是指在人類文化中自然演化而成的語言,如中文、英文,相較於人工語言(如程式語言Python、C++ 或特定目的的人工語言如世界語)。關於語言模型,可先了解:《AI-900》自然語言處理NLP(含心智圖+實作範例)

生成式AI 心智圖(本文自製) (點擊看清晰圖片)
考題重點
- 生成式 AI 屬於監督式還是非監督式學習?
生成式 AI 在訓練階段使用非監督式學習(Unsupervised Learning)或更準確地說是自監督學習(Self-supervised Learning)。生成式 AI(如 GPT) 並不是靠人工標籤,而是透過預測下一個詞(next token prediction)在大量語料中學出語言結構。
但在後期的微調(fine-tuning) 或 RLHF(人類回饋強化學習)階段,會加入監督訊號來改善模型表現。 - 微調Fine-tuning
指在預訓練模型的基礎上,用特定資料再訓練一次,讓模型更符合某一應用場景(例如客服語氣、醫療文體等)。 - 提示詞工程Prompt Engineering是設計提示詞的技術,用來引導模型產生更準確或特定風格的輸出。
- 道德與內容安全主要由安全系統層(Safety System Layer)負責
Azure OpenAI 架構有多層安全防護:
模型層(Model Layer):微軟與 OpenAI 在訓練模型時加入安全與道德防護,例如拒絕生成仇恨、暴力或成人內容。
安全系統層(Safety System Layer):Azure 端的「內容過濾器(content filter)」會監控輸入與輸出,偵測是否包含不當內容。
應用層(Application Layer):開發者自行設計的安全邏輯,例如使用者驗證、封鎖詞清單、人工覆核。 - Microsoft Copilot(考題直翻:副駕駛)
是由微軟開發的基於LLM的聊天機器人,使用GPT的模型。
了解Transformers如何推進語言模型的發展
今天我們所使用的生成式 AI 應用(如 ChatGPT、Gemini等),都是基於Transformer 架構。Transformer首次提出的論文: Attention is all you need , by Vaswani, et al. from 2017
(Transformers一般不翻譯成中文,保留英文專有名稱。若用機器翻譯,會翻成「轉換器」。同名電影Transformer翻譯為變形金剛🤣。)
Transformer 架構
原始的Transformer 架構有兩個主要組成部分:
- 編碼器(Encoder):負責處理輸入序列,並建立能捕捉每個詞元(token)上下文的表示(representation)。
- 解碼器(Decoder):透過參考編碼器的表示,逐步預測並產出輸出序列中的下一個詞元。
Transformer 架構最重要的創新在於:位置編碼(Positional Encoding)、多頭注意力機制(Multi-head Attention)。架構圖如下:

在編碼器層中:
輸入序列(input sequence)會先加上位置編碼(positional encoding),然後透過多頭注意力來建立序列中每個詞的上下文表示。
- 加上位置編碼(positional encoding),就是在每個詞的向量中加入一個位置資訊。
- 多頭注意力(Multi-head Attention)
每個token都會看整個句子裡的其他詞,以了解上下文的關係。「多頭」的意思是模型會用不同的角度同時觀察詞與詞的關聯,例如一個頭專注於語法、一個頭專注於語意。 - 建立序列中每個詞的上下文表示(Contextual Representation)
每個詞經過注意力運算後,會得到一個「包含上下文」的向量。
在解碼器層中:
未完成的輸出序列(例如:生成中的文字)也會先經過位置編碼與多頭注意力,接著第二次使用多頭注意力來結合「編碼器的輸出」與「目前的解碼器輸入」,最後產生下一個詞元作為輸出。
- 輸入「已生成的詞序列」
解碼器不是一次輸出整句,而是逐字生成,所以運作時要輸入未完成的輸出序列(目前已生成的文字)。 - 位置編碼與多頭注意力
跟編碼器一樣,它也需要知道字詞之間的順序與關聯。解碼器在進行注意力時,只能「看到自己之前的詞」,不能偷看未來的字(稱為「Masked Attention」遮罩機制),這樣才能模擬語言一個一個子產生的邏輯。 - 第二次使用多頭注意力
結合「編碼器的輸出」與「目前的解碼器自己生成的內容」,預測哪個詞元作為下一個字機率最高,最後產生下一個詞元作為輸出。
了解位置編碼(Positional Encoding)
- 一個詞語在句子中的位置與先後順序對理解文本的意思很重要。為了不依賴「逐字處理」,Transformer 採用了「位置編碼」的機制。
- 在 Transformer 之前,語言模型只會透過詞嵌入(word embeddings)將每個詞轉換為向量。但在 Transformer 架構中,則是將詞嵌入向量與位置向量(positional vector)兩個向量相加。這樣不但包含詞義,也包含了詞在句子中的位置資訊。
簡化的舉例如下:(Transformer 採用更精細的數學方式來生成位置向量)

數值本身不具意義(Index 7 並不比 Index 3 更「有意義」)
當句子變長,數值增大可能造成模型訓練時的不穩定。
了解注意力機制(Attention)
Transformer 架構最關鍵的技術,就是用注意力(Attention)取代傳統RNN的「遞歸處理(Recurrence)」。傳統 RNN 是依序處理每個詞,計算負擔很重。而 Transformer 可以並行處理每個詞,因為它透過注意力機制來學習詞與詞之間的關聯,而不需依賴順序。
注意力機制 Attention (自注意力Self-Attention/內部注意力Intra-Attention)
- 作用:將新輸入的資訊,對應(map)到已學習的知識或關係,來判斷其意涵。
- Transformer 的注意力函數(attention function)會將新的詞用位置編碼,編碼成「查詢(Query)」,編碼完的詞輸出為一個「鍵(Key)」與對應的「值(Value)」
假設有以下句子:
文森特·梵谷是一位畫家,以其令人驚嘆且富有情感的藝術作品而聞名。
當模型編碼Query「文森特·梵谷」這個詞時,輸出可能會是「文森特·梵谷」為鍵(Key),對應「畫家」為值(Value)。模型內部會建立一個「鍵-值對照表(key-value table)」如下:

當下一次模型看到這樣一段文字:
莎士比亞的作品影響了許多電影,這主要歸功於他作為一名...
模型會將「莎士比亞」當作 Query,然後去對照這個鍵值表,發現「威廉·莎士比亞」是最接近的 Key,因此選擇其對應的 Value:「劇作家」作為預測結果。
- Query、Key、Value 都會被轉換為向量(vectors),注意力函數會計算 Query 向量與各個 Key 向量的縮放點積(scaled dot-product),dot-product計算token向量間的角度,乘積越大表示這向量越對齊(aligned),也就是越相似。
- 這些dot-product乘積值經過 softmax 函數,轉成機率分布(probability distribution),代表各種可能的輸出。
softmax 函數的輸出表示哪些 key 向量與 query 向量最接近。擁有最高機率的 key 會被選出,其對應的 value 就成為注意力函數的輸出。 - 多頭注意力機制(multi-head attention):
每個詞元會被注意力函數以多種方式同時處理多次。一個詞或句子能從不同角度被分析與理解,以提取出各種不同層次的語意資訊。
語言模型的差異
現今,開發人員不需從頭開始訓練語言模型,許多訓練的模型已開放原始碼供公開使用。不同的模型可以依據其訓練的特定數據,或者注意力機制的方式有所區別。
大型語言模型(LLM)和小型語言模型(SLM)

改善提示詞結果Improve prompt results
生成式 AI 助理(agent)的回應品質,不僅取決於其所使用的語言模型,也取決於使用者提供的提示語(prompt),故若能明確說出想要的回應類型(清晰、具體),通常能取得最實用的輸出。
提示語工程(Prompt Engineering):指優化提示語以提升生成式 AI 回應品質的過程。
幾種改善回應品質的方式:
- 從具體目標出發,說明你希望AI助理完成什麼任務
- 提供足夠的背景資訊或參考資料,讓回應能根據明確資訊基礎來生成
- 加入上下文,提升回答的相關性與適切性
- 設定明確的回應期望(格式、語氣、長度等)
- 根據前一次的提示與回應逐步調整與優化 (多次反問、要求修改)
AI 助理收到你的提示後不會直接原封不動送進語言模型,通常會先做一些處理,如:
- 系統訊息(system message):用來設定模型行為的條件與限制,
例如:「你是一個樂於助人的助理,風格友善且愉快」。這些訊息定義了模型的回應風格與邏輯邊界。 - 對話歷史紀錄(conversation history):包含本次對話中過去的提示與回應,有助於維持上下文、做出更連貫的回應。
- 當前提示語(current prompt):可能經過代理程式(agent)優化、改寫或加入更多背景資料,以幫助語言模型更準確生成回應。
AI-900系列文章目錄:
《AI-900》證照考試準備心得與筆記分享 - 系列文章