llms.txt

llms.txt 善意的局限:為什麼連結清單不夠用

llms.txt 是一份專為 AI 閱讀設計的 sitemap,但它的局限在於只有一層,對有組織、有架構的網站不夠用。這份檔案的標準格式是網站名稱當 H1、一段摘要,底下每一列是一個 [標題](連結):描述,指向網站裡的一個頁面。但它分不出這一列是分類頁、單一頁面、文章還是商品頁,每一列都被當成同一種東西。初衷沒有錯,目標是讓 AI 更容易地讀懂你的網站。但是問題不在描述,而是在於它把網站壓平成一層,破壞了網站原本的敘事能力與內容脈絡。

當你開始研究 llms.txt,會發現它只有一層。每一列都是一個頁面連結「 [標題](連結):描述」,分類頁、文章、商品頁全部平等並列,看不出彼此的關係。網站一旦有了分類、有了一定數量的內容,這一層就不夠用,如果將所有頁面全部列出來,會導致內容太多,塞進 context 反而稀釋 AI 的注意力;只列幾頁,地圖又殘缺。寫少不完整,寫多撐不住。更根本的問題是,你在 WordPress 裡分好的分類、排好的層級,在這份檔案裡完全消失,AI 拿到的是一份沒有主從先後的清單,很容易抓錯頁面,答非所問。

從 2D 到 3D:RAG Sitemap 如何重建網站知識骨架

RAG Sitemap 解決的,正是 llms.txt 沒有解決的那個問題。如果說 llms.txt 是攤平在地上的平面圖,RAG Sitemap 就是一座有樓層、有動線的 3D 建築。它不只是一份連結總表,而是一套讓 AI 能夠逐層導航的結構化知識地圖。

核心設計從 master-sitemap.txt 開始。這份主檔案不只是列標題和連結,它透過 Rag_Item_Link 指向單一頁面的詳細內容,又透過 Rag_Category_Link 將 AI 導向分類清單。AI 可以先讀總綱,再依需求鑽入特定分類,最後進入單篇文章的完整內文。這種分層遞進的關係,讓 AI 有機會「理解」而非單純「知道」你的網站。

當 AI Chatbot 需要回答特定產品或文章的問題時,它不再需要把整個網站資料塞進上下文。它可以沿著 RAG Sitemap 的立體路徑,精準定位到那一個分類、那一篇文章,用最小的 Token 成本取得最深的資訊。

專為 AI 檢索設計的檔案架構:透明、分層、多語系

這是一種以 AI 最佳化格式呈現、專為機器理解設計的內容輸出,但同時保留了對人類高度友善的可讀性。這點至關重要:傳統向量資料庫(Vector Database)猶如「黑盒子」,AI 檢索只能靠算式去「猜」,開發者調整向量算法也像在盲人摸象。相反地,RAG Sitemap 的純文字透明化輸出,讓你隨時可以檢查。如果 AI 找不到某個產品,人類可以輕易分析除錯:是不是這個分類的描述(Description)寫得不夠清楚?

你也不會覺得把網站拆成這麼多小文字檔很瑣碎,因為這一切都不需要手動處理。透過 RAG Sitemap,系統會沿著 WordPress 網站既有的分類邏輯「一鍵自動生成」。管理者只需專注於內容本身,系統可以將龐大的網站一鍵轉化為 LLM 最擅長處理的結構化語料。

更進一步,這套架構原生支援多語系擴展:例如 jp/、ko/ 等語言各自可以擁有獨立的主目錄與內容層,讓不同語言的 AI 檢索引擎都能精準讀取對應的知識地圖。當你的網站內容以這種透明、確定的格式存在,無論是驅動站內對話機器人,還是迎接 AI 搜尋引擎,本質上都是零邊際成本的前瞻佈局。

/rag-sitemap/
│
├── default/                                  ← Main Language
│   │
│   ├── master-sitemap.txt                    ← sitemap
│   │   ├─ ====== 
│   │   ├─ Page Title / Link / Description               
│   │   ├─ Rag_Item_Link: (page_aaa.txt URL)   
│   │   ├─ ======
│   │   ├─ Page Title / Link / Description        
│   │   ├─ Rag_Category_Link: (category_list_z.txt URL)  
│   │   └─ ======                              
│   │
│   ├── category-list/                     
│   │   ├── category_list_x.txt                    
│   │   ├── category_list_y.txt                   
│   │   └── category_list_z.txt                    
│   │       │
│   │       └── Each Category_List.txt
│   │           ├─ ======
│   │           ├─ Category Title / Link / Description     
│   │           ├─ Rag_Item_Link: (post_xxx.txt URL)
│   │           └─ ======
│   │
│   ├── post-chunks/                      
│   │   ├── post_2993.txt                     
│   │   ├── post_2999.txt          
│   │   └── post_3105.txt
│   │       │
│   │       └── Each Single_Post.txt
│   │           ├─ Title: …
│   │           ├─ Link: …
│   │           ├─ Date: …
│   │           └─ Content: …
│   │
│   └── page-chunks/                  
│       ├── page_aaaa.txt
│       └── page_bbbb.txt
│           │
│           └── Each Page_Post.txt
│               ├─ Title: …
│               ├─ Link: …
│               ├─ Date: …
│               └─ Content: …
│
├── jp/
│   ├── master-sitemap.txt
│   ├── category-list/
│   ├── post-chunks/
│   └── page-chunks/
│                                       
└── ko/    
    ├── master-sitemap.txt
    ├── category-list/
    ├── post-chunks/
    └── page-chunks/                                   

相關文章

向量資料庫不是 RAG 的必要條件,它只是其中一種把資料餵給 AI 的方式。當資料本來是混亂的、缺乏清楚邊界的,向量化可以幫助模型從大量文字中猜測語意相關性,這種做法有它的價值。但如果內容本來就有秩序,問題就不再是「怎麼從混亂中硬算相關」,而是「怎麼讓 AI 先看到最重要的判讀線索」。真正有效的 RAG,不一定是先把全文切碎、壓成向量再回頭猜答案;也可以是先把內容整理成 AI 能逐層理解的路徑,先降低上下文的不確定性,再展開細節。

RAG Harness Engineering 讓訪客的每個提問背後不只是單純的一次 AI 提示詞呼叫,而是看圖、檢索、回答三段獨立的 AI API。多個 Sub Agent 接力最怕一站污染一站,Harness 架構讓每一站都拿著訪客的原始提問、清楚知道最初的任務目標,從根本上就對污染免疫,累積的雜訊被擋在每一次 hop 的入口之外。

「晶片即模型」的意思是,當每台裝置都內建一顆刻進晶片的 AI 小模型,模型不再是需要載入的軟體,而是隨時待命的運算晶片,應用程式所需的 LLM 推理可直接在訪客裝置端就地完成,讓網站主的 AI 運算成本歸零,這正是 RAG Chatbot 的終極目標。