AI Agent 介紹

就是把軟體工程的整套流程,用在管理 Agent 的產出上

Agentic Engineering

2025 年 2 月 Andrej Karpathy 提出 Vibe Coding

  • 就是講幾句話,看看 AI 能夠吐出什麼東西

同年 Simon Willison 提出對照概念 Agentic Engineering

  • 審查並測試程式碼來把關品質
  • 能夠對程式碼負責任

就是把軟體工程的整套流程,用在管理 Agent 的產出上

Agent 是什麼?

Agent 有許多定義, Anthropic 在 2024 年底的解釋:

  • 相對於固定的 Workflow 而言
    Agent 會動態調整工作流程
    與使用工具的時機來完成任務

可以看到 LLM 多了很多隻手可以跟外界互動

Agentic loop

Agentic loop
https://code.claude.com/docs/en/how-claude-code-works

Context window

每次對話都會變成下一次的輸入
前面的回答就會一直疊加

回答速度就會越來越慢
比較早的對話會開始被稀釋

Context 滿了就會壓縮對話


2025 年中發現

2025 年中發現,如果提供更完整的背景知識
Agent 可以更了解怎麼完成工作
所以大家就開始對話中塞入更多的資料

Context 裡面有什麼?

大致上分五大類:

  • System Prompt
  • Tools Definition
  • Memories
  • Messages
  • Tools Results
Context 裡面有什麼

Prompt Caching

模型會快取對話

  • 通常會被保存 5 分鐘 ( 免費 )
    到 1 小時 ( 付費 )

官方針對 Cache 建議:

  • 用對話去改檔案
  • 不建議 session 中途換模型
  • 不建議 session 中換 tools

https://claude.com/blog/lessons-from-building-claude-code-prompt-caching-is-everything

Attention 架構

Attention Is All You Need (Vaswani. et al., 2017)

Attention Is All You Need (Vaswani. et al., 2017)

Attention Head 重要的參數

  • Query :搜尋值
  • Key :索引值
  • Value :內容值
Q K V
Q 與要生成的字的關聯
K 這個字跟誰有關
V 文字實際上的意義

https://epichka.com/blog/2023/qkv-transformer/

Prefill / Decode 與 KV cache

生成每個新的字前,要先有 QKV 大矩陣
但 Key 跟 Value 不會因為字變多而改變
所以可以快取 (Cache) 下來
下一個字生成時就可以只算新增的部分

這讓模型分成兩個階段:
Prefill 是第一次算整個 QKV 矩陣
( 計算速度為主 )

Decode 利用 KV Cache 加速輸出
( 記憶體頻寬為主 )

Agentic Coding

先用輕鬆的方式來寫程式

Explore

Explore

Plan

Plan

Implement

Implement

Commit

Commit

https://code.claude.com/docs/en/best-practices

Coding 的 Prompt 需要多詳細?

Coding 的 Prompt 需要多詳細?
https://www.anthropic.com/engineering/effective-context-engineering-for-ai-agents

怎麼寫出有結構的 Prompt ?

Explore

Explore 階段

  • 相關資料
  • 討論方向與需求

Plan

Plan 階段

  • 拆解複雜問題,排序優先級
  • 變成具體可以驗收的任務

詳細如何引導,會留到軟體工程章節