AI08 · Build AI Applications 詳細 ROADMAP
計畫文件,不會被 Quartz 渲染。
回主 roadmap → ai/ROADMAP.md
章節目標
「你是 AI 服務,user 呼叫你」——這章是完整 AI 應用從零到 production 的實作章。涵蓋:API 整合、RAG 建造、Fine-tuning、本地部署、工作流自動化。
跟其他章分工:
- AI04 engineering = 工程概念(Gateway 選型、Obs 架構、Eval 方法論、Security 設計)
- 本章 = 動手實作(從零建一個能用的 AI 服務)
- AI09 Build Extensions = 擴展別人的 AI(反方向:你寫東西給 Claude / Cursor 用)
- AI05 agent = Agent 概念;本章 #15 以後 agent 實作題是「你建 Agent 服務」
- backend/ai/ B20 = 後端工程師視角;本章是 AI app 視角(可能不限後端棧)
對應 repo:ai-examples/(待建立)
🌱 基本介紹
| # | 主題 | Slug | Stage | 大綱 |
|---|
| 01 | Build AI Applications 全景 | 01-build-ai-apps-landscape | 🌱 | 從 API 第一支程式 → RAG 系統 → Fine-tuned 模型服務 → Local 部署 → Multi-tenant SaaS;整條實作路徑 |
❓ 為什麼需要
| # | 主題 | Slug | Stage | 大綱 |
|---|
| 02 | 為什麼 Demo 不等於 Production | 02-why-demo-not-production | 🌱 | Hallucination / cost / latency / rate limit / eval 缺位;上線才發現的問題 |
| 03 | 為什麼 RAG 常被高估 | 03-why-rag-overestimated | 🌱 | POC 夠用不代表 production 夠用;retrieval quality 是長期戰;chunking 策略影響勝過 prompt 技巧 |
| 04 | 為什麼 Fine-tuning 很少是你第一個該做的 | 04-why-finetune-last-resort | 🌱 | Prompt / RAG 夠用的場景遠多;fine-tune 成本 / 維護 overhead / 資料準備門檻 |
🕰️ 演進
| # | 主題 | Slug | Stage | 大綱 |
|---|
| 05 | Build AI Apps 演進驅動力 | 05-build-apps-evolution-drivers | 🌱 | 第一代:直接呼叫 GPT API;遇到 provider lock-in → LiteLLM / OpenRouter 抽象;遇到 context 限制 → RAG;遇到 RAG retrieval 爛 → Reranking / Hybrid search;遇到 domain knowledge 不足 → Fine-tuning;遇到成本 / 隱私 → Local deployment |
🧠 知識型
F08-A API 整合
| # | 主題 | Slug | Stage | 大綱 |
|---|
| 06 | 呼叫 LLM API:第一支 AI 程式 | 06-calling-llm-api | 🌱 | OpenAI / Anthropic / Google SDK;streaming 處理;error / retry;對應 repo 01-llm-api/ |
| 07 | Multi-provider Failover 實作 | 07-multi-provider-failover | 🌱 | Primary / Fallback / Load balance;provider outage 應變;LiteLLM / Portkey 實戰(跟 AI04 概念層對應) |
| 08 | Streaming & SSE 架構實作 | 08-streaming-sse-implementation | 🌱 | Server-Sent Events / WebSocket 傳 LLM token stream;Next.js / FastAPI 實作;跟 I01 #30 WebSocket edge 連動 |
| 09 | 後端跟模型互動完整實作 | 09-backend-model-integration-full | 🌱 | Sync / async / streaming;queue for long-running task;token budget;跟 backend/ai/ B20 分工:本篇是 AI app 視角,B20 是後端工程師視角 |
F08-B RAG 建造
| # | 主題 | Slug | Stage | 大綱 |
|---|
| 10 | RAG Pipeline 從零 | 10-rag-pipeline-from-zero | 🌿 | 吸收自舊 02-rag-architecture.md;資料載入 → Chunk → Embed → Store → Retrieve → Prompt → Response;對應 repo 02-rag/ |
| 11 | Chunking 策略實作 | 11-chunking-strategies | 🌿 | 吸收自舊 02-2-chunking-and-vectordb.md;固定 / semantic / recursive / document-aware;每種適用場景 |
| 12 | Retrieval 調校實戰 | 12-retrieval-tuning | 🌿 | 吸收自舊 02-3-retrieval-and-evaluation.md;Hybrid search / Reranking / Query expansion / HyDE |
| 13 | RAG Evaluation Loop | 13-rag-eval-loop | 🌱 | Retrieval eval(recall@k, MRR)、generation eval(faithfulness, relevance);RAGAS 實戰;Build eval dataset |
F08-C Fine-tuning & Local Deploy
| # | 主題 | Slug | Stage | 大綱 |
|---|
| 14 | Fine-tuning 實戰(LoRA / SFT / DPO) | 14-fine-tuning-hands-on | 🌱 | OpenAI / Anthropic fine-tuning API;local LoRA(Unsloth / axolotl);資料準備 / 切 train/eval;對應 repo 04-fine-tuning/ |
| 15 | 本地部署模型(Ollama / vLLM) | 15-local-deployment | 🌱 | Ollama 快速起 / vLLM production;GPU 需求;量化(GGUF / AWQ);benchmark;跟 I03 #29 GPU workload + I03 S04 WASM 連動 |
| 16 | Hybrid:cloud + local 混合部署 | 16-hybrid-deployment | 🌱 | 敏感資料走 local / 長文走 cloud 的路由策略;cost / privacy trade-off |
F08-D Agent Application 建造
| # | 主題 | Slug | Stage | 大綱 |
|---|
| 17 | 建第一個 Single Agent | 17-first-single-agent | 🌱 | OpenAI Assistants API / Anthropic tool use 完整範例;handle error;對應 repo 08-agent/ |
| 18 | Multi-Agent Demo(LangGraph) | 18-langgraph-demo | 🌱 | Supervisor + 2 worker;state 管理;conditional edge |
F08-E Workflow 自動化建造
| # | 主題 | Slug | Stage | 大綱 |
|---|
| 19 | n8n / LangChain Workflow 實戰 | 19-workflow-automation-hands-on | 🌿 | 吸收自舊 03-2-n8n-langchain-practice.md |
| 20 | No-code / Low-code AI Platform 實作 | 20-nocode-lowcode-hands-on | 🌱 | Dify / Flowise 建一個完整 chatbot;跟 code-based 的取捨 |
🔧 小實作注意事項
| # | 主題 | Slug | Stage | 大綱 |
|---|
| 21 | 本機起 AI Gateway + Obs stack | 21-local-ai-gateway-obs | 🌱 | LiteLLM + Langfuse docker-compose;sample app 走 gateway;trace 進 Langfuse |
| 22 | Build Eval Framework 從零 | 22-build-eval-framework | 🌱 | 定義 metric;收集 eval dataset;跑 automated eval;CI 整合 |
| 23 | 第一個 production-ready RAG service | 23-production-rag-service | 🌱 | 含 auth / rate limit / streaming / eval loop / monitoring;deployable on K8s |
💣 Anti-pattern
| # | 主題 | Slug | Stage | 大綱 |
|---|
| 24 | Build AI Apps Anti-patterns | 24-build-apps-antipatterns | 🌱 | Demo-driven development(POC 好就上線沒做 eval);直接呼叫 provider 不抽象;vector DB 用預設參數(沒調 index);RAG 不評估 retrieval 只評 answer;Fine-tune 當萬靈丹;local deploy 忽略 VRAM 需求;streaming 沒處理 cancellation |
🧰 對應檢查工具
| # | 主題 | Slug | Stage | 大綱 |
|---|
| 25 | Build AI Apps 工具 | 25-build-apps-tooling | 🌱 | SDK: OpenAI / Anthropic / Google;Framework: LangChain / LlamaIndex / Haystack / Vercel AI SDK;Local: Ollama / vLLM / TGI / llama.cpp;Fine-tune: OpenAI / Unsloth / axolotl / trl;Workflow: n8n / LangChain / Dify / Flowise;Eval: RAGAS / DeepEval / Promptfoo |
📎 補充
| # | 主題 | Slug | Stage | 大綱 |
|---|
| S01 | AI app 可擴展性 | s01-ai-app-scalability | 🌱 | Multi-tenant / streaming backpressure / queue for long-running;跟 backend/micro-service/ 整合 |
| S02 | AI app 測試策略 | s02-ai-app-testing | 🌱 | Prompt regression test / eval dataset / CI 整合;跟 common/quality/testing 對照 |
章節進度統計
- 知識主題:25 項 + 2 補充 = 27 項
- 🌿 growing:4(RAG / Workflow 既有 4 篇)
- 🌱 seed:23
跨系列連結