Microsoft 365 에이전트 SDK를 사용하면 필요한 통신을 처리하는 스캐폴딩을 사용하여 Microsoft 365 Copilot, Microsoft Teams, 웹 및 사용자 지정 앱 등 원하는 채널에 배포할 수 있는 에이전트를 만들 수 있습니다. 개발자는 선택한 AI 서비스를 사용하고 SDK의 채널 관리 기능을 사용하여 빌드한 에이전트를 사용할 수 있도록 할 수 있습니다.
에이전트 SDK의 주요 기능
개발자는 모든 공급자 또는 기술 스택의 에이전트를 엔터프라이즈 시스템에 통합할 수 있는 유연성이 필요합니다. 에이전트 SDK는 선택한 AI를 사용하여 에이전트 패턴의 구현을 간소화하여 하나 이상의 서비스, 모델 또는 에이전트를 선택하여 특정 요구 사항을 충족할 수 있도록 합니다.
에이전트 SDK를 사용하여 다음을 수행합니다.
- 상태, 스토리지 및 활동 및 이벤트를 관리하는 기능을 사용하여 에이전트 '컨테이너'를 신속하게 빌드합니다. Microsoft 365 Copilot 또는 Microsoft Teams와 같은 모든 채널에 이 컨테이너를 배포합니다.
- 특정 기술 스택으로 제한되지 않고 에이전트 패턴을 구현합니다. 에이전트 SDK는 선택한 AI에 대해 독립적입니다.
- Microsoft Teams와 같은 클라이언트의 특정 동작에 맞게 에이전트를 사용자 지정합니다.
지원되는 언어
에이전트 SDK는 다음을 지원합니다.
- .NET 8.0 SDK를 사용하는 C#
- Node.js 버전 18 이상을 사용하는 JavaScript
- Python 3.9 ~ 3.11
에이전트 만들기
Github에서 C#, JavaScript 또는 Python에서 시작 샘플을 쉽게 가져올 수 있습니다.
C#에서 에이전트를 만들려면:
builder.AddAgent( sp =>
{
var agent = new AgentApplication(sp.GetRequiredService<AgentApplicationOptions>());
agent.OnActivity(ActivityTypes.Message, async (turnContext, turnState, cancellationToken) =>
{
var text = turnContext.Activity.Text;
await turnContext.SendActivityAsync(MessageFactory.Text($"Echo: {text}"), cancellationToken);
});
});
그러면 새 에이전트가 만들어지고, 메시지 유형 활동을 수신 대기하고, 메시지를 다시 보냅니다.
여기에서 선택한 사용자 지정 AI 서비스(예: Azure Foundry 또는 OpenAI 에이전트) 및 오케스트레이션(예: 의미 체계 커널)을 추가할 수 있습니다.
중요한 용어
SDK에 중요한 몇 가지 특정 개념은 다음과 같습니다.
- 턴: 턴은 에이전트가 수행하는 작업 단위입니다. 단일 메시지 또는 일련의 메시지일 수 있습니다. 개발자는 '턴'을 사용하여 작업하고 둘 사이의 데이터를 관리합니다.
- 활동: 활동은 에이전트에서 관리하는 하나 이상의 단위 유형입니다.
- 메시지: 메시지는 에이전트로 전송되는 활동의 유형입니다. 단일 메시지 또는 일련의 메시지일 수 있습니다.
Get Started
시작하기 전에 몇 가지 필수 구성 요소를 처리해야 합니다. 필수 구성 요소는 애플리케이션을 개발하는 데 사용하는 언어에 따라 달라집니다.
- .NET 8.0 SDK
- 봇 프레임워크 에뮬레이터
- Knowledge of ASP.NET Core 및 C#의 비동기 프로그래밍에 대한 지식
다운로드 및 설치
시작하는 데 필요한 파일을 다운로드합니다.
에이전트 GitHub 리포지토리를 로컬로 복제합니다. 리포지토리에는 SDK를 사용하여 애플리케이션 빌드를 시작하는 데 도움이 되는 SDK 원본 라이브러리 및 샘플이 포함되어 있습니다. 샘플을 설치하면 SDK에 필요한 패키지가 설치됩니다.