🎉 “AI編程的本質是管理上下文” 這句話太有用了,它能解釋AI應用的發展過程和未來趨勢 如果說LLM是CPU,那麼上下文就是內存, 而內存容量是有限的,數據的取捨成為了模型輸出質量的關鍵 ❓ 那上下文這個內存中會存什麼?分別該怎麼優化? 1️⃣ 系統提示詞 優化就是以前提示詞工程那套,所以優秀提示詞的核心要素必須得安排。但提示詞工程已不再新鮮,上下文工程才是熱門,所有AI應用都在跟進 2️⃣ 工具列表 上下文信息不足,就需要調用工具去獲取,剛開始AI應用只有少量的核心工具(讀寫文件、執行命令),後來通過MCP擴展了很多外部工具和服務 3️⃣ 文件 (知識庫/rag) 問題相關的文檔也很重要,Cursor等IDE都會自動將 當前打開的文件、最近打開的文件、問題相關的文件和檢索到的關鍵代碼 保存到上下文中 而且,上下文工程會自動管理內存數據,就像內存清理操作一樣,沒啥用的數據就替換出去,有用的數據就放前面來點,提高權重等等 ❓ 這一切看起來挺好的,為什麼cc又搞了個subagent? 隨著對話的進行,上下文中的內容越來越多,快要撐爆了! LLM為了回答問題,可能會多次調用工具(例如讀文件),工具返回結果+加載的文件內容,不斷補充到上下文中,主agent的上下文很容易就快要撐爆了,模型的輸出質量開始下降,甚至出現幻覺。 ...