有關注我這陣子 .NET 開發 AI 應用程式文章的朋友們,不知有沒有被一堆新名詞搞昏頭?(我自己都寫到微醺惹~)

一下子是 MS Agent Framework,裡面又會用到 Microsoft.Extension.AI (延伸閱讀:兩分鐘做出 RAG 文件檢索 AI 應用網站);前陣子還很火熱的 MCP,一眨眼彷彿將成為昨日黃花...

實際動手寫過程式,對這堆名詞不敢說了解,至少有模糊的概念。但,真的很模糊...

Jeremy Likness 是微軟資深產品經理(Principal Product Manager),目前負責 .NET 的 AI 體驗(包括向量資料存取、語意搜尋、RAG)、ASP.NET 認證/授權,以及 Entity Framework... 等。(註:他的資歷比我早幾年,寫了三十幾年程式,1994 入行從 AS/400 RPG 開始寫...) 前陣子 Jeremy 在 Github 開了個 .NET AI 決策指南 Repository,目的是協助 .NET 開發者選擇適合的 AI 框架、平台、程式庫。這份資訊我找到最接近官方角度的 .NET AI 開發指引,有助於釐清這堆易混淆的名詞,若你跟我一樣打算用 .NET 開發 AI 應用,是入手階段不錯的參考資料。

作為一份 AI 時代的指南,這個 Repository 被加了一些 AI 魔法,除了直接閱讀 .md 文件,它還加入 .github 資料夾,用 copilot-instrauctions.md 提示 Copilot CLI 如何利用這些文件回答問題 (這個應用方式挺酷,可以學起來)。如此,我們可以 Clone 回去啟動 Copilot CLI,用問的請它為我們解惑。例如,問它何時把工具函數寫在 Agent Framework 裡就好,何時該寫成 MCP?

或者,若要用 .NET 開發 RAG + 語意搜尋功能,RD 開發團隊建議的標準做法是什麼?

各種 .NET AI 開發問題,都能從這份指南得到一份具官方權威性的方向指引。

我發現要善用它前有個先修功課 - 搞懂 .NET AI 開發相關的平台、框架與程式庫的名詞與縮寫,以下是決策指南提供的一覽表:

TechnologyAbbreviationStatus
Microsoft.Extensions.AIMEAIGA
Microsoft.Extensions.VectorDataMEVDGA
Model Context Protocol (C# SDK)MCPGA
Microsoft Agent FrameworkMAFRC
GitHub Copilot SDKCopilot SDKTechnical Preview
Azure AI FoundryFoundryGA
Foundry LocalFoundry LocalGA
.NET AspireAspireGA
ONNX RuntimeONNXGA
OllamaOllamaGA
Docker Model RunnerDocker MRGA

查了資料,這裡整理各名詞簡單說明:

  • MEAI
    Microsoft.Extensions.AI,.NET 生態系中 AI 整合的基礎抽象層,讓 .NET 開發者輕鬆整合各種 AI 服務(LLM、Embeddings 等),並支援 caching、telemetry 等中介軟體。參考
  • MEVD
    Microsoft.Extensions.VectorData,.NET 函式庫,提供統一抽象 API 來操作各種向量資料庫,支援向量搜尋、過濾、索引與資料模型對應。參考
  • MCP
    MCP 是開放協議,AI 應用與外部工具/資料來源的整合標準;MCP C# SDK 是 Microsoft 與 Anthropic 等合作維護的官方 .NET 實作。參考
  • MAF
    Microsoft Agent Framework,開放原始碼框架,用於建置、協調與部署單一或多 Agent AI 系統,將取代 Semantic Kernel 與 AutoGen,支援 .NET 與 Python。參考
  • Copilot SDK
    GitHub 提供的 SDK,讓開發者將 Copilot 的 Agentic 能力(規劃、Tool Calling、多輪對話等)以程式方式嵌入到自訂應用程式。參考
  • Foundry
    Microsoft 完整的 AI 平台(前身為 Azure AI Studio),用於快速建置、部署、優化與治理 AI 應用程式與代理,提供豐富模型選擇與 SDK。參考
  • Foundry Local
    Foundry 的本地版本,允許在裝置上本地運行 AI 模型,強調資料隱私,無需雲端訂閱,支援 CLI、SDK 與 REST API。參考
  • Aspire
    .NET 的分散式應用程式開發工具,用於簡化 Cloud-Native 應用的 Orchestration、Observability、彈性與部署體驗。參考
  • ONNX
    Microsoft 開發的高效能跨平台 ML 推論引擎,用來執行 ONNX 格式模型,支援雲端與邊緣裝置。參考
  • Ollama
    熱門的開源工具,可在本地輕鬆運行各種 LLM,常與 Microsoft.Extensions.AI 或 Agent Framework 搭配使用,提供 .NET 整合支援。參考
  • Docker MR
    Docker Model Runner,Docker 官方工具,讓開發者使用 Docker 命令在本地管理、運行與部署 AI 模型,支援多種後端與 OCI 註冊表。參考

有了這些資源,應能減少用 .NET 開發 AI 應用程式時的摸索時,祝大家早日踏出新手村。

Explains Microsoft’s official .NET AI Decision Guide, clarifying confusing AI frameworks, platforms, and acronyms. Introduces key technologies like MEAI, Agent Framework, MCP, and Foundry, helping .NET developers choose the right tools for building AI applications.


Comments

Be the first to post a comment

Post a comment