跳到主要內容

發表文章

目前顯示的是有「Context Engineering」標籤的文章

從副駕駛到飛行員:AI 程式碼生成與提示工程完整指南

整理一下與總結重點介紹在軟體開發中使用 AI 程式碼生成和提示工程的主要主題、重要概念和實用建議。 主要主題 因為太多資料都在描述不同的方向,這邊描述對於 vibe coding 和 prompt engineering 的過程中給予大家的方向,主要圍繞以下幾個核心主題: Prompt engineering 重要性 : 強調精心設計的提示對於從 AI 模型獲得高品質、相關和可操作程式碼輸出的關鍵作用。 AI 輔助開發工作流程 : 概述了軟體工程師如何將 AI 工具無縫整合到他們的日常開發任務中,從綠地專案到現有程式碼庫的增量修改。 程式碼生成與 Vibe Coding : 定義並區分了 AI 程式碼生成中的不同參與程度,從 AI 作為「副駕駛」到「Vibe Coding」中的 AI 作為「飛行員」。 最佳實踐與技巧 : 提供了一系列實用的策略,用於優化與 AI 模型的互動,包括情境提供、任務分解、錯誤處理和程式碼審查。 工具與資源 : 列出了當前市場上可用的各種 AI 程式碼生成工具,以及有影響力的開發人員和額外學習資源。 挑戰與考量 : 討論了使用 AI 程式碼生成時的潛在陷阱,例如幻覺、速率限制、上下文管理以及協作工作流程的缺乏。 核心概念與事實 1. 提示工程的重要性與基礎 定義 : 提示工程被定義為從 AI 編碼助手獲取最佳輸出的關鍵技能,因為「AI 的輸出品質在很大程度上取決於您提供的提示品質。」 (Addy Osmani, "The Prompt Engineering Playbook for Programmers")。 連續改進 : 提示工程是一個持續改進的迭代過程。「提示工程是關於持續改進。您需要建立和測試不同的提示,分析和記錄結果,根據模型的表現調整您的提示,並不斷實驗,直到您獲得所需的結果。」 (Lee Boonstra, "Documenting Your Prompts a Best Practice for Success")。 文件記錄 : 記錄提示被認為是「絕對的救命稻草」 (Lee Boonstra)。建議使用工具(如 Google Sheet)追蹤提示及其輸出、模型版本和設定。「這樣,當您需要重新審視舊工作、測試提示在新模型版本上的表現或解決問...

上下文工程與長上下文提示:引領大型語言模型的智慧未

大型語言模型(LLMs)的互動方式已從簡單、靜態的提示迅速演變。最初,使用者主要專注於精心設計的指令,以獲得即時回應 。然而,隨著LLMs能力與複雜性的提升,對於更精密的引導方法以確保可靠輸出的需求日益顯著 。這種轉變標誌著從單純的「提示設計」邁向更全面的「上下文管理」典範。 提示工程作為最初與LLMs有效溝通的學科應運而生,它涉及仔細措辭查詢、指定風格,並提供基本上下文或範例 。諸如「思維鏈」(Chain-of-Thought, CoT)和「上下文學習」(In-Context Learning, ICL)等技術被開發出來,旨在增強模型推斷能力,並使其無需額外微調即可適應新任務 。 上下文工程 (Context Engineering)是人工智慧開發中的一門新興學科,專注於設計系統,能動態地為大型語言模型(LLM)提供完成任務所需的精確資訊、工具與指令。 這種方法遠遠超越傳統的提示工程(prompt engineering),後者通常僅是撰寫一個靜態提示詞。而上下文工程則包含對 所有資訊的系統性、動態策劃與管理——包括指令、使用者輸入、記憶、外部知識、工具定義、結構化輸出等——在 LLM 產生回應前給予模型所需的一切。 提示工程:奠基之石 提示工程是與LLM有效溝通的起點。它強調文字措辭、角色扮演以及提供少量範例等技巧,透過技術如: • 思維鏈(Chain-of-Thought, CoT): 促使模型以中間步驟推理、解題,提升多步驟任務表現。 • 上下文學習(In-Context Learning, ICL): 模型從提示中的少量範例暫時性學習,適應新任務。 • 基於角色的提示: 指定模型模擬特定角色的語氣與專業程度。 • 動態提示: 根據任務狀態與模型輸出調整提示內容與順序。 • 指令與上下文分離: 把指令與背景資料分開,保持清晰結構。 然而,這些提示依舊是靜態、手工製作,當面對長對話、動態場景或巨量資料時,便顯現出適應性不足、可擴展性差與高維度變異性的挑戰。 上下文工程:協調AI的舞台 上下文工程不僅設計一條提示,而是搭建整個互動環境。它結合了多項技術與組件: • 系統提示/指令: 設定AI的行為與任務目標。 • 短期記憶(聊天歷史): 提供最近對話上下文。 • 長期記憶(知識庫): 維持跨...