Skip to content

Latest commit

 

History

History
189 lines (133 loc) · 16.6 KB

File metadata and controls

189 lines (133 loc) · 16.6 KB

Використання сервера з розширення AI Toolkit для Visual Studio Code

Коли ви створюєте AI-агента, справа не лише в генерації розумних відповідей; важливо також надати агенту можливість діяти. Саме тут вступає в гру протокол Model Context Protocol (MCP). MCP дозволяє агентам легко отримувати доступ до зовнішніх інструментів і сервісів у стандартизований спосіб. Уявіть, що ви підключаєте свого агента до набору інструментів, які він може дійсно використовувати.

Наприклад, якщо ви підключите агента до MCP-сервера калькулятора, ваш агент зможе виконувати математичні операції, просто отримуючи запит, як-от: «Скільки буде 47 помножити на 89?»—без необхідності жорстко прописувати логіку або створювати власні API.

Огляд

У цьому уроці ми розглянемо, як підключити MCP-сервер калькулятора до агента за допомогою розширення AI Toolkit у Visual Studio Code, щоб ваш агент міг виконувати математичні операції, такі як додавання, віднімання, множення та ділення, використовуючи природну мову.

AI Toolkit — це потужне розширення для Visual Studio Code, яке спрощує розробку агентів. Інженери AI можуть легко створювати AI-додатки, розробляючи та тестуючи генеративні AI-моделі — локально або в хмарі. Розширення підтримує більшість основних генеративних моделей, доступних сьогодні.

Примітка: AI Toolkit наразі підтримує Python і TypeScript.

Цілі навчання

До кінця цього уроку ви зможете:

  • Використовувати MCP-сервер через AI Toolkit.
  • Налаштувати конфігурацію агента, щоб він міг знаходити та використовувати інструменти, надані MCP-сервером.
  • Використовувати MCP-інструменти через природну мову.

Підхід

Ось як ми будемо діяти на високому рівні:

  • Створити агента та визначити його системний запит.
  • Створити MCP-сервер з інструментами калькулятора.
  • Підключити Agent Builder до MCP-сервера.
  • Перевірити виклик інструментів агента через природну мову.

Чудово, тепер, коли ми розуміємо процес, давайте налаштуємо AI-агента для використання зовнішніх інструментів через MCP, розширюючи його можливості!

Попередні вимоги

Вправа: Використання сервера

Warning

Примітка для користувачів macOS. Ми наразі досліджуємо проблему, яка впливає на встановлення залежностей у macOS. Через це користувачі macOS не зможуть завершити цей урок на даний момент. Ми оновимо інструкції, щойно буде доступне рішення. Дякуємо за ваше терпіння та розуміння!

У цій вправі ви створите, запустите та вдосконалите AI-агента з інструментами MCP-сервера у Visual Studio Code за допомогою AI Toolkit.

-0- Попередній крок: додайте модель OpenAI GPT-4o до My Models

У вправі використовується модель GPT-4o. Модель має бути додана до My Models перед створенням агента.

  1. Відкрийте розширення AI Toolkit з Activity Bar.
  2. У розділі Catalog виберіть Models, щоб відкрити Model Catalog. Вибір Models відкриває Model Catalog у новій вкладці редактора.
  3. У рядку пошуку Model Catalog введіть OpenAI GPT-4o.
  4. Натисніть + Add, щоб додати модель до списку My Models. Переконайтеся, що ви вибрали модель, яка Hosted by GitHub.
  5. У Activity Bar підтвердьте, що модель OpenAI GPT-4o з’явилася у списку.

-1- Створення агента

Agent (Prompt) Builder дозволяє створювати та налаштовувати власних AI-агентів. У цьому розділі ви створите нового агента та призначите модель для забезпечення розмови.

  1. Відкрийте розширення AI Toolkit з Activity Bar.
  2. У розділі Tools виберіть Agent (Prompt) Builder. Вибір Agent (Prompt) Builder відкриває Agent (Prompt) Builder у новій вкладці редактора.
  3. Натисніть кнопку + New Agent. Розширення запустить майстер налаштування через Command Palette.
  4. Введіть назву Calculator Agent і натисніть Enter.
  5. У Agent (Prompt) Builder, у полі Model, виберіть модель OpenAI GPT-4o (via GitHub).

-2- Створення системного запиту для агента

Після створення структури агента настав час визначити його особистість і мету. У цьому розділі ви використаєте функцію Generate system prompt, щоб описати призначення агента — у цьому випадку калькулятор — і дозволити моделі написати системний запит для вас.

  1. У розділі Prompts натисніть кнопку Generate system prompt. Ця кнопка відкриває конструктор запитів, який використовує AI для генерації системного запиту для агента.
  2. У вікні Generate a prompt введіть наступне: Ви — корисний і ефективний математичний асистент. Коли вам дають задачу, що включає базову арифметику, ви відповідаєте правильним результатом.
  3. Натисніть кнопку Generate. У нижньому правому куті з’явиться сповіщення, яке підтверджує, що системний запит генерується. Після завершення генерації запит з’явиться у полі System prompt у Agent (Prompt) Builder.
  4. Перегляньте System prompt і за потреби змініть його.

-3- Створення MCP-сервера

Тепер, коли ви визначили системний запит вашого агента, який спрямовує його поведінку та відповіді, настав час надати агенту практичні можливості. У цьому розділі ви створите MCP-сервер калькулятора з інструментами для виконання операцій додавання, віднімання, множення та ділення. Цей сервер дозволить вашому агенту виконувати математичні операції в реальному часі у відповідь на запити природною мовою.

AI Toolkit оснащений шаблонами для спрощення створення власного MCP-сервера. Ми використаємо шаблон Python для створення MCP-сервера калькулятора.

Примітка: AI Toolkit наразі підтримує Python і TypeScript.

  1. У розділі Tools у Agent (Prompt) Builder натисніть кнопку + MCP Server. Розширення запустить майстер налаштування через Command Palette.

  2. Виберіть + Add Server.

  3. Виберіть Create a New MCP Server.

  4. Виберіть шаблон python-weather.

  5. Виберіть Default folder для збереження шаблону MCP-сервера.

  6. Введіть наступну назву для сервера: Calculator.

  7. Відкриється нове вікно Visual Studio Code. Виберіть Yes, I trust the authors.

  8. Використовуючи термінал (Terminal > New Terminal), створіть віртуальне середовище: python -m venv .venv.

  9. Використовуючи термінал, активуйте віртуальне середовище:

    1. Windows - .venv\Scripts\activate
    2. macOS/Linux - source .venv/bin/activate
  10. Використовуючи термінал, встановіть залежності: pip install -e .[dev].

  11. У Explorer у Activity Bar розгорніть каталог 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-сервера калькулятора.

  1. Натисніть F5, щоб розпочати налагодження MCP-сервера. Agent (Prompt) Builder відкриється у новій вкладці редактора. Статус сервера буде видно у терміналі.
  2. У полі User prompt у Agent (Prompt) Builder введіть наступний запит: Я купив 3 предмети за ціною $25 кожен, а потім використав знижку $20. Скільки я заплатив?
  3. Натисніть кнопку Run, щоб згенерувати відповідь агента.
  4. Перегляньте вихідні дані агента. Модель має зробити висновок, що ви заплатили $55.
  5. Ось розбивка того, що має відбутися:
    • Агент вибирає інструменти multiply і subtract, щоб допомогти у розрахунку.
    • Відповідні значення a і b призначаються для інструменту multiply.
    • Відповідні значення a і b призначаються для інструменту subtract.
    • Відповідь від кожного інструменту надається у відповідному Tool Response.
    • Остаточний вихідний результат моделі надається у фінальному Model Response.
  6. Надішліть додаткові запити, щоб ще більше протестувати агента. Ви можете змінити існуючий запит у полі User prompt, натиснувши на поле та замінивши існуючий запит.
  7. Після завершення тестування агента ви можете зупинити сервер через термінал, ввівши CTRL/CMD+C, щоб вийти.

Завдання

Спробуйте додати додатковий інструмент до вашого файлу server.py (наприклад, повернення квадратного кореня числа). Надішліть додаткові запити, які вимагатимуть від агента використання вашого нового інструменту (або існуючих інструментів). Обов’язково перезапустіть сервер, щоб завантажити нові інструменти.

Рішення

Рішення

Основні висновки

Основні висновки з цього розділу:

  • Розширення AI Toolkit — це чудовий клієнт, який дозволяє використовувати MCP-сервери та їх інструменти.
  • Ви можете додавати нові інструменти до MCP-серверів, розширюючи можливості агента для задоволення змінних вимог.
  • AI Toolkit включає шаблони (наприклад, шаблони MCP-сервера Python), щоб спростити створення власних інструментів.

Додаткові ресурси

Що далі

Відмова від відповідальності:
Цей документ було перекладено за допомогою сервісу автоматичного перекладу Co-op Translator. Хоча ми прагнемо до точності, зверніть увагу, що автоматичні переклади можуть містити помилки або неточності. Оригінальний документ на його рідній мові слід вважати авторитетним джерелом. Для критично важливої інформації рекомендується професійний людський переклад. Ми не несемо відповідальності за будь-які непорозуміння або неправильне тлумачення, що виникли внаслідок використання цього перекладу.