跳轉到

2020s-多模態與RAG時代#

案件摘要#

2020 年代中期,LLM 進入多模態與檢索增強的時代:GPT-4V、Claude 3、Gemini 能同時處理視覺與語言;RAG(Lewis 等人,2020)用「檢索 + 生成」對抗幻覺;工具呼叫(function calling,2023)讓 LLM 成為行動者;Chain-of-Thought(Wei 等人,2022)讓它成為推理引擎。同一時間,Chomsky 在《紐約時報》(2023 年 3 月〈The False Promise of ChatGPT〉)對大模型發起世紀辯論:統計學習究竟能不能獲得語法能力。本案是 70 年辯論的最新一章——機器「懂」語言了嗎?

前因 -- 為什麼會有這個案子#

  • LLM 的兩大先天缺陷:幻覺(hallucination,自信地生成錯誤事實)與知識截止(knowledge cutoff,訓練之後的世界一無所知)。純生成無法保證事實,因為模型只優化「像不像真話」而非「是不是真話」。
  • RLHF 讓模型聽話,卻沒有給它可靠的知識來源——企業應用需要的是「有據可查」的回答,這是 RAG 的直接動機。
  • CLIP(Radford 等人,2021)證明視覺與語言可以在同一個表示空間中對齊:4 億圖文對的對比學習讓「看圖說話」有了數學基礎,多模態成為可能。
  • Chomsky 的 competence/performance 之分(Aspects, 1965)被雙方拿來當辯論武器:支持者說 LLM 展現了前所未有的 performance;Chomsky 說沒有 explanatory theory 的統計模式只是「high-tech plagiarism」。

線索與推理 -- 數學式、程式、理論#

RAG:檢索 + 生成的流程#

第一條線索:Lewis 等人 2020 年的 RAG 把參數化知識(模型權重)與非參數化知識(外部文件庫)結合。流程分兩步:

  1. 檢索(retrieval):把查詢編碼成向量,在文件嵌入庫中找最相似的 \(k\) 份文件:
\[ d_1, \dots, d_k = \operatorname*{top\text{-}k}_{d \in \mathcal{D}} \; \cos\left( E(q), E(d) \right) = \frac{E(q)^\top E(d)}{\|E(q)\| \, \|E(d)\|} \]
  1. 生成(generation):把檢索到的文件放進 prompt,讓 LLM 以其為條件生成回答:
\[ P(y \mid q) \;\propto\; P_\theta\left( y \mid q, \; \text{docs} = (d_1, \dots, d_k) \right) \]

RAG 的數學根源其實是老線索:向量空間檢索是 TF-IDF/向量空間模型(1970 年代 Salton)的現代版——只是向量從詞頻統計換成了神經嵌入。RAG(sequence 版)原本以 marginalize 的方式混合多份文件的機率,實務上則簡化成「塞進 prompt」。

Chain-of-Thought:中間步驟的推理鏈#

第二條線索:Wei 等人 2022 年發現,在 few-shot prompt 中加入中間推理步驟(「讓我們一步一步思考」),可以大幅提升多步推理任務的準確率:

\[ P(\text{答案} \mid q) \quad \longrightarrow \quad P(\text{答案} \mid q, \; \text{推理鏈 } c_1, c_2, \dots, c_n) \]

偵查意義:Transformer 的單步前向計算只有固定深度的計算量;生成中間步驟等於把「思考時間」換成序列長度——每多生成一個 token,就多一步遞歸計算的機會。這是「用算力換推理深度」的範式,也是後來 Agent 多步推理的基礎。

多模態的 token 化#

第三條線索:GPT-4V/Gemini 如何「看」圖。圖像被切成 patch( ViT,Dosovitskiy 2020),每個 patch 經線性投影變成一個 token,與文字 token 在同一個 Transformer 裡處理:

\[ z_p = W_p \, \mathrm{patch}_p + b_p, \qquad \text{sequence} = [\text{text tokens}; \; z_1, z_2, \dots, z_m] \]

一旦圖像變成 token,語言模型的所有能力(attention、in-context learning、生成)都自動適用於視覺——多模態不是新架構,而是新詞彙。

LLM vs Chomsky:世紀辯論#

第四條線索是哲學面的對峙。Chomsky(2023)的指控:LLM 只是「對詞的機率分佈」(probability distribution over words),不是「解釋性理論」(explanatory theory);它學的是 performance 的統計模仿,而非 competence 的語法規則。反方的證據:LLM 在語法判斷、句法剖析、跨語言遷移上的表現,遠超任何基於規則的系統;而且「學語法不需要內建語法」這一點,恰好挑戰了 Chomsky 的貧乏刺激(poverty of the stimulus)論證。這場辯論沒有判決——70 年前圖靈(1950)提問「機器能思考嗎」時設下的測試標準(行為 vs 內部機制),正是雙方分歧的原點。

程式示範:mini RAG#

以下 Python(numpy)實作文件嵌入、餘弦檢索與 prompt 組裝:

import numpy as np

rng = np.random.default_rng(0)

docs = [
    "RAG 結合檢索與生成,用外部文件對抗幻覺。",
    "Chain-of-Thought 讓模型生成中間推理步驟以提升準確率。",
    "CLIP 用對比學習對齊視覺與語言的表示空間。",
    "Transformer 以 self-attention 處理序列的長距離依賴。",
    "知識截止是指模型的知識停留在訓練資料的時間點。",
]

# 極簡字元級嵌入(中文無空格,用字元當 token;實務上用句子嵌入模型如 BGE/E5)
vocab = sorted(set("".join(docs).replace(" ", "")))
v2i = {v: i for i, v in enumerate(vocab)}

def embed(text):
    vec = np.zeros(len(vocab))
    for ch in text.replace(" ", ""):
        if ch in v2i:
            vec[v2i[ch]] += 1.0
    n = np.linalg.norm(vec)
    return vec / n if n else vec

D = np.stack([embed(d) for d in docs])   # 文件嵌入矩陣(向量資料庫)

def retrieve(query, k=2):
    q = embed(query)
    sims = D @ q                          # 餘弦相似度(向量已正規化)
    top = np.argsort(-sims)[:k]
    return [(docs[i], sims[i]) for i in top]

def rag_answer(query, k=2):
    hits = retrieve(query, k)
    context = "\n".join(f"[{i+1}] {d}" for i, (d, s) in enumerate(hits))
    prompt = (f"請根據以下資料回答問題。\n\n資料:\n{context}\n\n問題:{query}\n回答:")
    return prompt, hits

query = "模型如何對抗幻覺?"
prompt, hits = rag_answer(query)
print(prompt)
print("檢索相似度:", [f"{s:.3f}" for _, s in hits])
# 觀察:與「幻覺」相關的文件(RAG、知識截止)被檢索到最前面

結案 -- 後果與影響#

  • RAG 成為企業 LLM 應用的標準架構:向量資料庫(Pinecone、Milvus、Weaviate、pgvector)形成獨立產業,檢索品質(embedding 模型、reranker)成為新戰場。
  • 多模態成為 2024 年起的標配:GPT-4V(2023)、Claude 3(2024)、Gemini(2023)皆原生支援視覺;「圖像即 token」成為通用設計。
  • Agent 時代來臨:工具呼叫(function calling,2023)+ Chain-of-Thought + RAG 組合成多步推理的行動者,LLM 從「回答問題」變成「完成任務」。
  • Chomsky 與大模型的辯論仍在繼續:統計學習獲得語法能力的機制(為什麼 next-token prediction 能學出結構)成為可解釋性研究的核心問題。
  • 計算語言學回到圖靈 1950 年的原點:機器「懂」語言了嗎?——行為測試與內部機制的分歧,70 年後依然是這個領域最深的裂縫。

關鍵人物與文獻(條列,含真實文獻書目)#

  • Patrick Lewis、Ethan Perez 等人:Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks. NeurIPS 2020(arXiv:2005.11401)。
  • Alec Radford、Jong Wook Kim 等人:Learning Transferable Visual Models From Natural Language Supervision(CLIP). ICML 2021(arXiv:2103.00020)。
  • Jason Wei、Xuezhi Wang 等人:Chain-of-Thought Prompting Elicits Reasoning in Large Language Models. NeurIPS 2022(arXiv:2201.11903)。
  • Alexey Dosovitskiy 等人:An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale(ViT). ICLR 2021(arXiv:2010.11929)。
  • Noam Chomsky:Aspects of the Theory of Syntax. MIT Press, 1965。
  • Noam Chomsky、Ian Roberts、Jeffrey Watumull:The False Promise of ChatGPT. The New York Times, 2023 年 3 月 8 日。
  • OpenAI:Function Calling and Other API Updates. OpenAI Blog, 2023 年 6 月。