Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Из этого краткого руководства вы узнаете, как настроить рабочий агент Claude на JavaScript с использованием инструментов Agent 365, уведомлений и наблюдаемости, а также как протестировать агент с помощью Agents Playground и Teams.
Prerequisites
- Если вы планируете использовать Visual Studio Code, у вас должен быть установлен .NET. (Рекомендуется использовать .NET 8.0.)
- Node.js (версия 18 или выше)
- Пакеты пакета SDK агентов Claude и ключ Anthropic API
- Тестовая площадка агентов
- Доступ к установкам npm (диспетчер пакетов Node)
- Необходим доступ к GitHub
- Существующий проект агента ИИ. В этом кратком руководстве используется пример агента Claude из галереи набора инструментов для создания агентов Microsoft 365 (ATK в VS Code).
- A365 CLI
- Аутентификация идентификатора агента
Настройка примера Claude + Node.js из набора инструментов для создания агентов Microsoft 365
Чтобы подготовить все необходимое, установите набор инструментов для создания агентов Microsoft 365 в VS Code, откройте галерею примеров и создайте локально проект Claude + Node.js, чтобы затем его настроить и запустить. Снимки экрана ниже показывают, что вас ожидает в ходе выполнения потока.
В Visual Studio Code откройте панель Расширения (сочетание клавиш Ctrl+Shift+X), найдите набор инструментов для создания агентов Microsoft 365 и выберите Установить.
Откройте раздел набор инструментов для создания агентов M365 на панели действий VS Code и выберите Просмотреть примеры.
Выберите пример Claude + Node.js, нажмите Создать и выберите (или создайте) папку, в которой должен быть сгенерирован проект (например,
C:\A365-Ignite-Demo). Набор инструментов создает вложенную папку (например,sample_agent) и открывает ее в VS Code.
После завершения подготовки шаблона у вас будет готовый к запуску проект. Следующие шаги выполняются внутри новой папки с примером.
Установите зависимости и настройте среду
Сгенерированный package.json уже включает необходимые пакеты для примера, поэтому установите все одной командой:
npm install
После установки убедитесь, что проект собирается и запускается, запустив сервер разработки
npm run dev
Сервер разработки слушает порт, настроенный в примере (по умолчанию localhost:3978), и готов принимать запросы от Agents Playground или интерфейса командной строки.
Добавление инструментов Microsoft 365 (серверы MCP)
Вы можете исследовать MCP-серверы и управлять ими с помощью команд разработчика a365 в интерфейсе командной строки. Пакет @microsoft/agents-a365-tooling-extensions-claude подключает эти MCP-серверы к вашему оркестратору Claude, чтобы Agent SDK мог вызывать инструменты Microsoft 365 в соответствии с навыками, определенными в вашем плане агента Claude.
Когда вы работаете с инструментами Microsoft MCP, вы можете:
- Узнавать, какие MCP-серверы доступны для использования
- Добавлять один или несколько MCP-серверов в конфигурацию вашего агента
- Просматривать настроенные MCP-серверы
- Удалять MCP-серверы, которые вам больше не нужны
После добавления MCP-серверов манифест инструментов вашего агента расширяется и включает записи, такие как:
{
"mcpServers": [
{
"mcpServerName": "mcp_MailTools",
"mcpServerUniqueName": "mcp_MailTools",
"scope": "McpServers.Mail.All",
"audience": "api://00001111-aaaa-2222-bbbb-3333cccc4444"
}
]
}
Узнайте, как добавлять инструменты и управлять ими
Подписка на уведомления и их обработка
Пример агента подписывается на все уведомления Agent 365 с помощью onAgentNotification("*") и направляет их в один обработчик. Этот обработчик позволяет агенту реагировать на фоновые или системные события, а не только на прямые сообщения пользователя.
Подробнее о том, как отправлять уведомления агентам
В следующем коде показано, как настроено уведомление в файле agent.ts.
constructor() {
super();
this.onAgentNotification("agents:*", async (context, state, activity) => {
await this.handleAgentNotificationActivity(context, state, activity);
});
}
async handleAgentNotificationActivity(context, state, activity) {
await context.sendActivity("Received an AgentNotification!");
// Add custom handling here
}
Observability
Important
Этот выборка использует устаревший SDK Agent 365 Observability. Не используйте этот паттерн для новой интеграции наблюдаемости. Используйте дистрибутив Microsoft OpenTelemetry вместо этого.
Следующий фрагмент инициализирует устаревший SDK Observability Agent 365 и обертывает каждый вызов агента в такую InferenceScope систему, что позволяет автоматически фиксировать входы, выходы и метаданные.
import {
InferenceOperationType,
InferenceScope,
ObservabilityManager
} from '@microsoft/agents-a365-observability';
const sdk = ObservabilityManager.configure(b =>
b.withService('<service-name>', '<version>')
);
sdk.start();
async invokeAgentWithScope(prompt: string) {
const scope = InferenceScope.start(
{
operationName: InferenceOperationType.CHAT,
model: '<llm-name>'
},
{
agentId: '<agent-id>',
agentName: '<agent-name>',
conversationId: '<conv-id>'
},
{ tenantId: '<tenant-id>' }
);
const response = await this.invokeAgent(prompt);
scope?.recordInputMessages([prompt]);
scope?.recordOutputMessages([response]);
scope?.recordResponseId(`resp-${Date.now()}`);
return response;
}
Этот код использует устаревшую систему Agent 365 Observability SDK, необходимую для выборки Node.js + Claude. Замените метаданные-заглушки на значения, которые вы уже настроили для агента. Ознакомьтесь с устаревшей документацией SDK, включая руководство по миграции для Microsoft OpenTelemetry.
Проверьте своего агента
Задайте необходимые переменные среды, выберите режим аутентификации и запустите агент локально. Вы можете провести комплексное тестирование с помощью Agents Playground без необходимости иметь арендатор Microsoft 365, если только не хотите опубликовать агент и использовать его в таких приложениях, как Teams или Outlook.
Обзор этапов тестирования
- Добавьте значения
ANTHROPIC_API_KEYи параметры модели в файл.env, чтобы пример мог обращаться к Claude. - Выберите режим аутентификации. Для локальной разработки этот пример поддерживает агентную аутентификацию с использованием значений, полученных из схемы агента.
- Запустите агент локально, после чего он станет доступен инструментам, например Agents Playground.
- Используйте Agents Playground для тестирования сообщений, инструментов и уведомлений без настройки арендатора или развертывания каких-либо компонентов.
- Когда вы будете готовы к работе в реальных условиях, опубликуйте агент в арендаторе Microsoft 365 и протестируйте его внутри Teams, Outlook или других приложений Microsoft 365.
Опубликовать вашего агента
Когда ваш агент готов к работе в среде Microsoft 365, например, для чатов Teams, сообщений Outlook или Word @mentions, вы публикуете его в арендаторе Microsoft 365.
Команда publish интерфейса командной строки Agent 365 отвечает за упаковку: она обновляет ваш манифест, объединяет все и отправлять агент в центр администрирования Microsoft.
Во время публикации проверьте и измените имя агента, описание, значки и версию перед завершением отправки. После публикации ваш агент становится зарегистрированным и доступным для установки в арендаторе.
Important
После публикации агента необходимо настроить шаблон агента на портале разработчика перед созданием экземпляров. Узнайте, как настроить схему агента на портале разработчика
Здесь вы можете посмотреть опубликованные агенты: https://admin.cloud.microsoft/#/agents/all
Узнайте больше о полном рабочем процессе и пошаговых инструкциях