Skip to content

Latest commit

 

History

History
182 lines (125 loc) · 9.51 KB

File metadata and controls

182 lines (125 loc) · 9.51 KB

使用 Visual Studio Code 的 AI Toolkit 擴展來消耗伺服器

當你在構建 AI 代理時,不僅僅是生成智能回應,還需要賦予代理採取行動的能力。這就是模型上下文協議(MCP)的作用所在。MCP 使代理能夠以一致的方式訪問外部工具和服務。可以把它想像成將你的代理連接到一個它能真正使用的工具箱。

假設你將代理連接到你的計算器 MCP 伺服器。突然間,你的代理只需接收到像「47 乘以 89 是多少?」這樣的提示,就能執行數學運算——不需要硬編碼邏輯或構建自定義 API。

概述

本課程涵蓋如何使用 Visual Studio Code 的 AI Toolkit 擴展將計算器 MCP 伺服器連接到代理,從而使代理能夠通過自然語言執行加法、減法、乘法和除法等數學運算。

AI Toolkit 是一個功能強大的 Visual Studio Code 擴展,簡化了代理的開發過程。AI 工程師可以通過本地或雲端開發和測試生成式 AI 模型,輕鬆構建 AI 應用程序。該擴展支持當前大多數主流生成模型。

注意:AI Toolkit 目前支持 Python 和 TypeScript。

學習目標

完成本課程後,你將能夠:

  • 通過 AI Toolkit 消耗 MCP 伺服器。
  • 配置代理設定,使其能夠發現並使用 MCP 伺服器提供的工具。
  • 通過自然語言使用 MCP 工具。

方法

以下是我們需要採取的高層次方法:

  • 創建代理並定義其系統提示。
  • 創建具有計算器工具的 MCP 伺服器。
  • 將代理構建器連接到 MCP 伺服器。
  • 通過自然語言測試代理的工具調用。

很好,現在我們已經了解了流程,讓我們配置一個 AI 代理來通過 MCP 利用外部工具,增強其能力!

先決條件

練習:消耗伺服器

Warning

macOS 用戶注意。我們目前正在調查影響 macOS 上依賴項安裝的問題。因此,macOS 用戶暫時無法完成本教程。我們會在修復完成後更新指導。感謝你的耐心和理解!

在本練習中,你將使用 AI Toolkit 在 Visual Studio Code 中構建、運行並增強一個具有 MCP 伺服器工具的 AI 代理。

-0- 預備步驟,將 OpenAI GPT-4o 模型添加到我的模型

本練習使用 GPT-4o 模型。在創建代理之前,應將該模型添加到 我的模型

  1. 打開 AI Toolkit 擴展,從 活動欄中選擇。
  2. 目錄部分,選擇 模型以打開 模型目錄。選擇 模型後,模型目錄將在新的編輯器標籤中打開。
  3. 模型目錄的搜索欄中輸入 OpenAI GPT-4o
  4. 點擊 + 添加,將模型添加到你的 我的模型列表。確保選擇的是 由 GitHub 托管的模型。
  5. 活動欄中確認 OpenAI GPT-4o 模型出現在列表中。

-1- 創建代理

代理(提示)構建器使你能夠創建和自定義自己的 AI 驅動代理。在本部分,你將創建一個新代理並分配一個模型來支持對話。

  1. 打開 AI Toolkit 擴展,從 活動欄中選擇。
  2. 工具部分,選擇 代理(提示)構建器。選擇 代理(提示)構建器後,該工具將在新的編輯器標籤中打開。
  3. 點擊 + 新代理按鈕。擴展將通過 命令面板啟動設置向導。
  4. 輸入名稱 計算器代理並按 Enter
  5. 代理(提示)構建器中,對於 模型字段,選擇 OpenAI GPT-4o(通過 GitHub) 模型。

-2- 為代理創建系統提示

代理框架搭建完成後,接下來需要定義其個性和目的。在本部分,你將使用 生成系統提示功能來描述代理的預期行為——在本例中是一個計算器代理——並讓模型為你編寫系統提示。

  1. 提示部分,點擊 生成系統提示按鈕。此按鈕將打開提示生成器,利用 AI 為代理生成系統提示。
  2. 生成提示窗口中輸入以下內容:你是一個高效且樂於助人的數學助手。當遇到涉及基本算術的問題時,你會提供正確的結果。
  3. 點擊 生成按鈕。右下角會出現通知,確認系統提示正在生成。生成完成後,提示將顯示在 代理(提示)構建器系統提示字段中。
  4. 查看 系統提示並根據需要進行修改。

-3- 創建 MCP 伺服器

現在你已經定義了代理的系統提示——指導其行為和回應——接下來需要為代理配備實際功能。在本部分,你將創建一個具有加法、減法、乘法和除法計算工具的計算器 MCP 伺服器。該伺服器將使代理能夠根據自然語言提示執行實時數學運算。

AI Toolkit 配備了模板,方便創建自己的 MCP 伺服器。我們將使用 Python 模板來創建計算器 MCP 伺服器。

注意:AI Toolkit 目前支持 Python 和 TypeScript。

  1. 代理(提示)構建器工具部分,點擊 + MCP 伺服器按鈕。擴展將通過 命令面板啟動設置向導。

  2. 選擇 + 添加伺服器

  3. 選擇 創建新 MCP 伺服器

  4. 選擇 python-weather 作為模板。

  5. 選擇 默認文件夾保存 MCP 伺服器模板。

  6. 為伺服器輸入以下名稱:計算器

  7. 一個新的 Visual Studio Code 窗口將打開。選擇 是,我信任作者

  8. 使用終端(終端 > 新終端),創建虛擬環境:python -m venv .venv

  9. 使用終端激活虛擬環境:

    1. Windows - .venv\Scripts\activate
    2. macOS/Linux - source .venv/bin/activate
  10. 使用終端安裝依賴項:pip install -e .[dev]

  11. 活動欄資源管理器視圖中,展開 src 目錄並選擇 server.py,在編輯器中打開該文件。

  12. server.py 文件中的代碼替換為以下內容並保存:

    """
    Sample MCP Calculator Server implementation in Python.
    
    
    This module demonstrates how to create a simple MCP server with calculator tools
    that can perform basic arithmetic operations (add, subtract, multiply, divide).
    """
    
    from mcp.server.fastmcp import FastMCP
    
    server = FastMCP("calculator")
    
    @server.tool()
    def add(a: float, b: float) -> float:
        """Add two numbers together and return the result."""
        return a + b
    
    @server.tool()
    def subtract(a: float, b: float) -> float:
        """Subtract b from a and return the result."""
        return a - b
    
    @server.tool()
    def multiply(a: float, b: float) -> float:
        """Multiply two numbers together and return the result."""
        return a * b
    
    @server.tool()
    def divide(a: float, b: float) -> float:
        """
        Divide a by b and return the result.
        
        Raises:
            ValueError: If b is zero
        """
        if b == 0:
            raise ValueError("Cannot divide by zero")
        return a / b

-4- 使用計算器 MCP 伺服器運行代理

現在你的代理已經擁有工具,是時候使用它們了!在本部分,你將向代理提交提示以測試並驗證代理是否利用了計算器 MCP 伺服器中的適當工具。

你將通過 代理構建器作為 MCP 客戶端在本地開發機器上運行計算器 MCP 伺服器。

  1. F5 開始調試 MCP 伺服器。代理(提示)構建器將在新的編輯器標籤中打開。伺服器的狀態在終端中可見。
  2. 代理(提示)構建器用戶提示字段中輸入以下提示:我買了 3 件商品,每件價格 $25,然後用了 $20 折扣。我花了多少錢?
  3. 點擊 運行按鈕生成代理的回應。
  4. 查看代理輸出。模型應得出你花了 $55
  5. 以下是應發生的情況:
    • 代理選擇 乘法減法工具來幫助計算。
    • 乘法工具分配相應的 ab 值。
    • 減法工具分配相應的 ab 值。
    • 每個工具的回應顯示在相應的 工具回應中。
    • 模型的最終輸出顯示在 模型回應中。
  6. 提交其他提示進一步測試代理。你可以通過點擊 用戶提示字段並替換現有提示來修改提示。
  7. 測試完成後,你可以通過 終端輸入 CTRL/CMD+C 停止伺服器。

作業

嘗試向你的 server.py 文件添加一個額外的工具條目(例如:返回一個數字的平方根)。提交需要代理利用新工具(或現有工具)的額外提示。請確保重新啟動伺服器以加載新添加的工具。

解決方案

解決方案

關鍵要點

本章的關鍵要點如下:

  • AI Toolkit 擴展是一個出色的客戶端,能夠消耗 MCP 伺服器及其工具。
  • 你可以向 MCP 伺服器添加新工具,擴展代理的能力以滿足不斷變化的需求。
  • AI Toolkit 包括模板(例如 Python MCP 伺服器模板),簡化了自定義工具的創建。

其他資源

下一步

免責聲明
本文件已使用人工智能翻譯服務 Co-op Translator 進行翻譯。我們致力於提供準確的翻譯,但請注意,自動翻譯可能包含錯誤或不準確之處。應以原始語言的文件作為權威來源。對於關鍵資訊,建議尋求專業人工翻譯。我們對因使用此翻譯而引起的任何誤解或錯誤解讀概不負責。