Chapter 3

LLM、Embedding 與 RAG:為 agent 建立可靠上下文

LLM 負責「說」,embedding 負責「找」,RAG 則把找到的資料固定成 prompt,這樣 agent 才不會憑空回答。

對話復刻:LLM 是 embedding 嗎?

你問:「LLM 本身就是 embedding 嗎?」這是很多初學者的直覺。

本質拆解:LLM vs Embedding

LLM 的訓練目標像是 next token prediction 或 instruction following,它的輸出是一段文字;embedding 的訓練則專注在把文字映射為高維向量,方便用距離表示語意接近度。

LLM 擅長生成與推理,embedding 擅長比較與檢索。Embedding 不會自己寫答案,LLM 不會自動找資料,兩者合作時才能做出有根據的回覆。

功能對照表

能力 LLM(說) Embedding(找)
輸出 文字 + 機率分布 高維向量
用途 理解指令、生成答案、改寫與推理 語意搜尋、相似度比較、索引文檔
在 agent 流程的角色 把檢索到的內容整理成自然語言回答 把 md 文件庫和問題轉成座標,被用來找最 relevant 的段落

為什麼 RAG 可以降低幻覺

在你的 Markdown 文件庫裡怎麼佈局

  1. 把常用的規範、Q&A、流程寫成小段 Markdown,配好標題與 tag,讓 embedding 轉 vector 時 context 明確。
  2. 用 vector DB 或 simple store 暫存 embedding,agent 有問題時先跑 semantic search,抓最貼近的段落。
  3. 把結果和問句一起送到 LLM,並加上 prompt template(例如角色、任務、輸出格式),讓它直接依據檢索結果回答。

embedding 負責找資料、LLM 負責說話,RAG 是兩者的協作流程。

常見誤解

一句話整理

LLM 是說話的模型、embedding 是找資料的表示法,RAG 把找到的資料固定成 prompt;在你的 Markdown 文件庫裡,這樣的分工就能讓 agent 回答更有根據。

1 分鐘小測驗:RAG 怎麼降幻覺?

Q:在 RAG 流程裡,embedding 最主要的工作是什麼?