핵심 요점
- MIT license—사용, 수정, 자체 호스팅이 완전히 무료이며 SDK 자체에 사용 상한 없음
- Microsoft가 개발하여 2023년 3월 오픈소스로 최초 출시—처음에는 C#/.NET, 이후 Python과 Java가 부차적인 추가가 아닌 1급 SDK로 추가됨
- microsoft/semantic-kernel GitHub 저장소는 28,000개 이상의 스타를 돌파
- 핵심 개념: Kernel(중앙 오케스트레이터), Plugins(모델이 호출할 수 있는 함수 및 프롬프트 템플릿), Planners(오늘날 대부분 네이티브 LLM function calling으로 대체됨)
- Microsoft Agent Framework(MAF)는 2026년 4월 2일 정식 출시(GA)에 도달하여 Semantic Kernel과 AutoGen을 하나의 지원 플랫폼으로 통합—Microsoft가 두 제품 모두에 대해 명시한 후속작
- MAF 출시 이후 Semantic Kernel은 유지보수 모드에 들어감: 중요 버그 수정과 보안 패치만 제공되며, 지원은 최소 2027년까지 약속됨
- SDK 자체는 무료입니다. 비용은 연결하는 모델 API(Azure OpenAI, OpenAI 등)와, Azure에 배포할 경우 호스팅 비용에서 발생합니다
📍 한 문장으로
Semantic Kernel은 네이티브 C#/.NET, Python, Java SDK로 LLM 애플리케이션을 구축하기 위한 Microsoft의 무료 MIT-licensed 오픈소스 SDK이며, Microsoft가 개발 역량을 후속 제품인 Microsoft Agent Framework로 옮기면서 현재는 유지보수 모드입니다.
💬 쉽게 말하면
Semantic Kernel은 .NET, Python, Java 개발자에게 동일한 구성 요소를 제공합니다—AI 서비스를 담는 'kernel', 모델이 호출할 수 있는 '플러그인', 어떤 플러그인을 실행할지 결정하는 계획 로직입니다—하지만 Microsoft는 이제 새 에이전트 프로젝트를 Microsoft Agent Framework에서 시작할 것을 권장합니다.
📌참고: Semantic Kernel은 코드를 작성해 사용하는 라이브러리이며, 다운로드하는 앱이 아닙니다—설치할 GUI가 없습니다. 유지보수 모드는 폐기를 의미하지 않습니다. Microsoft는 기존 프로덕션 배포에 대해 계속 버그 수정과 보안 패치를 제공합니다. 단지 새로운 기능이 이제 Microsoft Agent Framework로 향한다는 의미일 뿐입니다.
Semantic Kernel은 누가 만들었으며, 지금은 어떻게 되고 있는가?
Microsoft는 2023년 3월 Semantic Kernel을 오픈소스 SDK로 출시했으며, 이후 Microsoft Agent Framework가 그 공식 후속작이 되었습니다. Semantic Kernel은 'kernel' 추상화를 통해 대규모 언어 모델과 기존 애플리케이션 코드를 결합했으며, 관대한 MIT license 하에 제공되었습니다. 대부분의 에이전트 프레임워크가 먼저 Python을 대상으로 하고 이후 다른 언어를 추가하는 것과 달리, Semantic Kernel은 C#/.NET을 주 언어로 출시한 뒤 Python과 Java를 나중에 이식된 것이 아닌 1급 SDK로 추가했습니다.
Semantic Kernel은 업계가 이후 다른 이름으로 채택한 '플러그인'과 '플래너'라는 용어를 대중화했습니다. 플러그인은 모델이 발견하고 호출할 수 있는 네이티브 함수나 프롬프트 템플릿이며, 플래너는 어떤 플러그인을 어떤 순서로 호출할지 결정했습니다. 초기의 전용 플래너—SequentialPlanner, ActionPlanner, StepwisePlanner—는 모델 제공업체가 네이티브 function calling을 추가하면서 대부분 대체되었으며, Semantic Kernel은 현재 FunctionChoiceBehavior 설정을 통해 이를 기본값으로 사용합니다.
2026년 Microsoft는 더 큰 통합 흐름 속에서 Semantic Kernel의 위치를 재조정했습니다. Microsoft Agent Framework(MAF)는 2026년 4월 2일 정식 출시(GA)에 도달하여 Semantic Kernel의 엔터프라이즈 기반—Kernel, 플러그인, 필터, 관찰 가능성—을 AutoGen의 멀티에이전트 오케스트레이션 모델과 통합해 하나의 지원 플랫폼으로 만들었습니다. 그 이후 microsoft/semantic-kernel 저장소는 유지보수 모드에 있습니다. Microsoft는 중요 버그 수정과 보안 패치를 제공하며 지원은 최소 2027년까지 약속되어 있지만, 새로운 기능 투자는 Agent Framework로 향하고 있습니다.
최초 출시
- 날짜:
- 2023-03
- 의미:
- Microsoft가 Semantic Kernel을 오픈소스 MIT-licensed SDK로 출시, 처음에는 C#/.NET
Python 및 Java SDK
- 날짜:
- 2023
- 의미:
- Python과 Java 포트가 1급 SDK로 뒤이어 나오며, Semantic Kernel은 몇 안 되는 다국어 에이전트 프레임워크 중 하나가 됨
플래너 대체
- 날짜:
- 진행 중
- 의미:
- 초기의 전용 플래너 클래스가 LLM 네이티브 function calling으로 대체되어 기본 계획 메커니즘이 됨
Microsoft Agent Framework 프리뷰
- 날짜:
- 2025-10
- 의미:
- Microsoft가 Semantic Kernel과 AutoGen을 결합한 공식 후속작인 Agent Framework를 프리뷰로 공개
Microsoft Agent Framework GA
- 날짜:
- 2026-04-02
- 의미:
- MAF가 정식 출시(GA)에 도달, Microsoft는 이를 Semantic Kernel과 AutoGen 양쪽의 후속작으로 자리매김
Semantic Kernel 유지보수 모드
- 날짜:
- 2026-04
- 의미:
- microsoft/semantic-kernel이 중요 버그 수정과 보안 패치만 제공하는 체제로 전환, 지원은 최소 2027년까지 약속
📌참고: 이 전환으로 MIT license가 바뀌지는 않습니다—기존 Semantic Kernel 배포는 계속해서 무기한 무료로 실행, 수정, 자체 호스팅할 수 있습니다. 바뀌는 것은 Microsoft가 새로운 기능 개발에 투자하는 위치이며, 이는 이제 Microsoft Agent Framework입니다.
Semantic Kernel이란 무엇인가?
Semantic Kernel은 대규모 언어 모델을 애플리케이션에 통합하기 위한 오픈소스 SDK(MIT license, github.com/microsoft/semantic-kernel)로, C#/.NET, Python, Java용 네이티브 SDK로 제공됩니다. 중심 추상화인 Kernel은 AI 서비스 연결, 플러그인, 메모리를 관리하며 이들 간의 호출을 조율합니다.
- Kernel: 등록된 AI 서비스(채팅 완성, 임베딩), 플러그인, 구성을 담는 중앙 객체—모든 Semantic Kernel 애플리케이션은 이를 하나씩 구성함
- Plugins: 메타데이터가 표시된(Python에서는
@kernel_function, C#에서는 `[KernelFunction]`) 네이티브 코드 함수 또는 프롬프트 템플릿으로, 모델이 발견하고 호출할 수 있음—다른 프레임워크의 "tools"에 해당 - Planners: 요청을 충족하기 위해 어떤 플러그인을 호출할지 결정하는 로직. 현재의 기본 방식은 오래된 전용 플래너 클래스 대신 모델 제공업체의 네이티브 function calling(
FunctionChoiceBehavior.Auto())에 의존함 - 벡터 스토어 커넥터(메모리): 지원되는 벡터 데이터베이스 전반에서 임베딩을 저장하고 검색하기 위한 표준 인터페이스로, 검색 증강 생성(RAG)에 사용됨
- Process Framework: Kernel 위에 구축된, 더 길고 다단계인 비즈니스 프로세스를 위한 워크플로 추상화
- 엔터프라이즈 구성 요소: 프로덕션 Azure 배포를 위해 설계된 내장 필터, 관찰 가능성 및 텔레메트리 훅, 구조화된 로깅
import asyncio
from semantic_kernel import Kernel
from semantic_kernel.connectors.ai.open_ai import AzureChatCompletion
from semantic_kernel.connectors.ai.function_choice_behavior import FunctionChoiceBehavior
from semantic_kernel.contents.chat_history import ChatHistory
from semantic_kernel.functions import kernel_function
class LightsPlugin:
@kernel_function(description="Turns a light on or off")
def change_state(self, is_on: bool) -> str:
return f"Light is now {'on' if is_on else 'off'}"
async def main():
kernel = Kernel()
kernel.add_service(AzureChatCompletion(deployment_name="gpt-4o-mini", api_key="...", base_url="..."))
kernel.add_plugin(LightsPlugin(), plugin_name="Lights")
history = ChatHistory()
history.add_user_message("Turn on the light")
chat = kernel.get_service(type=AzureChatCompletion)
result = await chat.get_chat_message_contents(
chat_history=history,
settings=AzureChatCompletion.get_prompt_execution_settings_class()(
function_choice_behavior=FunctionChoiceBehavior.Auto()
),
kernel=kernel,
)
print(result[0])
asyncio.run(main())Semantic Kernel의 비용은 얼마인가?
Semantic Kernel SDK 자체는 완전히 무료입니다—Microsoft는 이 프레임워크에 요금을 부과하지 않으며 Semantic Kernel에는 유료 등급이 없습니다. 실제 비용은 호출하는 대규모 언어 모델과, Azure에 배포하는 경우 애플리케이션을 실행하는 인프라에서 발생합니다.
- Semantic Kernel(SDK): 영구 무료, MIT license, 자체 호스팅 또는 클라우드, 프레임워크 자체에 사용 상한 없음
- 모델 API 비용: 연결하는 LLM 제공업체(Azure OpenAI Service, OpenAI 등)별 사용량 기반 과금—Semantic Kernel 자체는 모델 접근을 호스팅하거나 재판매하지 않음
- Azure 호스팅 비용(선택 사항): Azure App Service, Azure Functions, 또는 Azure Kubernetes Service에 배포하면 표준 Azure 컴퓨팅 요금이 부과됨—Semantic Kernel은 Azure를 요구하지 않지만 Microsoft 자체 예제와 엔터프라이즈 구성 요소는 기본적으로 이를 전제함
- 벡터 데이터베이스 비용(선택 사항): 메모리/RAG용으로 Azure AI Search나 다른 벡터 스토어를 연결하면 해당 서비스 자체의 별도 요금이 부과됨
- 지원: 기존 Semantic Kernel 배포에 대한 Microsoft의 유지보수 창(중요 버그 수정 및 보안 패치)은 최소 2027년까지 이어지며, 기존 Microsoft 또는 Azure 계약 이외의 추가 비용은 없음
항목 | 가격 | 최적 대상 |
|---|---|---|
| Semantic Kernel SDK | 무료(MIT license) | 모두—비용 없음, 영원히 |
| 모델 API 사용 | 제공업체별 사용량 기반 과금 | 연결하는 어떤 LLM이든 |
| Azure 호스팅(선택) | 표준 Azure 요금 | Azure에 배포하는 팀 |
| 벡터 스토어(선택) | 제공업체에 따라 다름 | RAG / 메모리 사용 사례 |
2026년 9월 기준 Semantic Kernel 공식 문서와 GitHub 저장소를 바탕으로 확인되었습니다—모델 API와 Azure 호스팅 가격은 해당 서비스가 독립적으로 책정하며 시간이 지나면서 변동되므로, 예산을 세우기 전에 최신 가격 페이지를 확인하십시오.
Semantic Kernel을 설치하고 시작하는 방법은?
Semantic Kernel 설치는 지원되는 세 언어 중 하나에서 패키지 관리자 명령 하나만 실행하면 됩니다—SDK 자체에는 계정이나 라이선스 키가 필요하지 않습니다.
- 1사용하는 언어에 맞게 SDK를 설치합니다:
dotnet add package Microsoft.SemanticKernel(.NET),pip install semantic-kernel(Python), 또는com.microsoft.semantic-kernel의존성을 추가합니다(Java). - 2모델 제공업체의 자격 증명을 환경 변수나 구성으로 설정합니다—Semantic Kernel 자체는 모델 접근을 제공하지 않습니다. Azure OpenAI, OpenAI, 또는 다른 지원 커넥터를 연결하십시오.
- 3
Kernel을 생성하고 AI 서비스(예: .NET의AddAzureOpenAIChatCompletion또는 Python의AzureChatCompletion)를 추가한 뒤, 모델이 호출할 수 있어야 하는 플러그인을 등록합니다. - 4자동 function calling(
FunctionChoiceBehavior.Auto())을 활성화하여 전용 플래너를 작성하지 않고도 모델이 등록된 플러그인을 직접 호출할 수 있게 합니다. - 5완전히 새로운 프로젝트라면, 유지보수 모드에 있는 SDK 위에 구축하는 대신 Microsoft가 명시한 후속작이자 2026년 4월부터 정식 제공 중인 Microsoft Agent Framework에서 바로 시작할지 검토하십시오.
- 6최신 API 참조와 마이그레이션 가이드는 Semantic Kernel 공식 문서와 GitHub 저장소를 참조하십시오.
Semantic Kernel을 사용하려면 Azure가 필요합니까?
아니요. Semantic Kernel은 대부분의 Microsoft 예제에서 기본적으로 Azure OpenAI Service에 연결하지만, 커넥터를 통해 순수 OpenAI 및 다른 제공업체도 지원합니다. SDK 자체를 실행하는 데 Azure가 반드시 필요하지는 않습니다.
새 프로젝트는 Semantic Kernel과 Microsoft Agent Framework 중 무엇으로 시작해야 합니까?
Microsoft 자체 안내는 새 프로젝트를 2026년 4월 2일부터 정식 제공 중인 후속작 Microsoft Agent Framework로 유도합니다. Semantic Kernel은 이미 프로덕션에서 이를 운영 중인 팀에게 주로 적합한 선택으로 남아 있습니다.
Semantic Kernel은 누구에게 적합한가?
Semantic Kernel은 이미 여기에 투자한 팀, 또는 가능한 한 큰 커뮤니티보다 네이티브 다국어 SDK를 중시하는 기존 .NET/Azure 스택을 보유한 팀에 적합합니다. 2026년에 완전히 백지 상태에서 시작하는 경우에는 상대적으로 약한 선택입니다.
Semantic Kernel을 사용하지 말아야 할 때는 언제인가?
Microsoft Agent Framework를 피할 구체적인 이유가 없다면, 2026년의 완전히 새로운 프로젝트에는 Semantic Kernel을 피하십시오. 다른 도구가 더 나은 선택인 몇 가지 구체적인 상황이 있습니다.
- 기존 Semantic Kernel 투자 없이 2026년에 처음부터 시작하는 경우—유지보수 모드의 SDK 위에 구축하는 대신 Microsoft 자체의 정식 제공 후속작인 Microsoft Agent Framework로 바로 이동하십시오
- .NET/Azure 생태계 밖에 있는 팀으로, LangChain이나 LlamaIndex 주변의 더 큰 커뮤니티, 튜토리얼, 통합 카탈로그로부터 이득을 얻을 수 있는 경우
- 단일 kernel이 플러그인을 호출하는 방식이 아니라, 이름을 가진 에이전트들이 그룹 채팅에서 토론하거나 협상하는 AutoGen/AG2 스타일의 특정 멀티에이전트 대화 패턴이 구체적으로 필요한 프로젝트
- Kernel/플러그인/플래너 추상화를 도입하는 것보다 모델 제공업체 API를 직접 호출하는 편이 더 단순한 경량 스크립트나 프로토타입
- 프로젝트 도중에 전환하기보다는, 이미 작동하는 프로덕션 배포가 있고 약속된 지원 창이 일정과 맞아떨어질 때만 Semantic Kernel을 사용하십시오
Semantic Kernel과 대안 비교
Semantic Kernel은 LLM 애플리케이션과 에이전트를 구축하기 위한 다른 프레임워크들과 경쟁하며, Microsoft 자체 로드맵에서는 이제 그중 하나와 통합되고 있습니다.
도구 | 인터페이스 | 라이선스 | 지원 주체 | 최적 대상 |
|---|---|---|---|---|
| Semantic Kernel | C# / Python / Java 코드 | MIT | Microsoft(유지보수 모드) | 기존 .NET/Azure 엔터프라이즈 앱 |
| Microsoft Agent Framework | C# / Python 코드 | MIT | Microsoft | Microsoft 생태계 내 새로운 에이전트 프로젝트 |
| LangChain | Python / JS 코드 | MIT | LangChain Inc.(VC 투자) | 범용 LLM 앱 및 에이전트 |
| LlamaIndex | Python / TS 코드 | MIT | LlamaIndex Inc.(VC 투자) | RAG 중심 인덱싱 및 검색 |
| CrewAI | Python 코드 | MIT | CrewAI Inc.(VC 투자) | 역할 기반 멀티에이전트 크루 |
| AutoGen | Python 코드 | MIT / CC-BY | Microsoft Research(유지보수 모드) | 멀티에이전트 대화 패턴 |
| LangGraph | Python / JS 코드 | MIT | LangChain Inc. | 그래프 기반 상태 유지 에이전트 |
Semantic Kernel 평가 시 흔한 오해
이러한 오해는 "유지보수 모드"의 의미를 잘못 해석하거나 Semantic Kernel을 그 후속 제품과 혼동하는 데서 비롯됩니다.
자주 묻는 질문
Semantic Kernel은 무료로 사용할 수 있습니까?
예. Semantic Kernel은 MIT license 하에 오픈소스이며 상업용 제품을 포함한 모든 용도로 무료이고, SDK 자체에 사용 제한이 없습니다.
Semantic Kernel은 누가 개발했습니까?
Microsoft가 Semantic Kernel을 개발했으며 2023년 3월 오픈소스 SDK로 출시했습니다.
Semantic Kernel은 폐기되었습니까?
아니요—폐기가 아니라 유지보수 모드입니다. Microsoft는 Semantic Kernel에 대해 중요 버그 수정과 보안 패치를 계속 제공하며 지원은 최소 2027년까지 약속되어 있지만, 새로운 기능 개발은 이제 Microsoft Agent Framework로 향합니다.
Microsoft Agent Framework란 무엇이며, Semantic Kernel과는 어떤 관계입니까?
Microsoft Agent Framework(MAF)는 Semantic Kernel과 AutoGen 양쪽에 대해 Microsoft가 명시한 후속작으로, Semantic Kernel의 엔터프라이즈 기반과 AutoGen의 멀티에이전트 오케스트레이션 모델을 하나의 지원 플랫폼으로 통합합니다. 2026년 4월 2일 정식 출시(GA)에 도달했습니다.
새 프로젝트에는 Semantic Kernel과 Microsoft Agent Framework 중 무엇을 사용해야 합니까?
Microsoft 자체 문서는 새 프로젝트를 Microsoft Agent Framework로 유도합니다. Semantic Kernel은 주로 이미 프로덕션 배포를 보유하고 있고 약속된 지원 창 동안 이를 계속 운영하고자 하는 팀에게 여전히 합리적인 선택입니다.
Semantic Kernel은 어떤 프로그래밍 언어를 지원합니까?
C#/.NET, Python, Java를 모두 네이티브 SDK로 지원합니다—Semantic Kernel은 C#/.NET으로 먼저 출시된 뒤 Python과 Java를 나중에 이식된 것이 아닌 1급 SDK로 추가했습니다.
Semantic Kernel의 "플러그인"이란 무엇입니까?
플러그인은 Kernel이 읽을 수 있는 메타데이터가 표시된 네이티브 코드 함수나 프롬프트 템플릿으로, 모델이 발견하고 호출할 수 있습니다—다른 에이전트 프레임워크의 "tools"에 해당합니다.
Semantic Kernel을 실행하려면 Azure가 필요합니까?
아니요. Semantic Kernel은 Azure OpenAI Service 외에 순수 OpenAI 및 다른 모델 커넥터도 지원합니다. Azure는 Microsoft 자체 예제와 엔터프라이즈 구성 요소에서 흔하지만 SDK의 필수 요건은 아닙니다.
Semantic Kernel의 GitHub 스타 수는 얼마나 됩니까?
microsoft/semantic-kernel 저장소는 28,000개 이상의 GitHub 스타를 돌파했습니다.
Semantic Kernel이 LangChain보다 낫습니까?
둘 중 어느 것이 절대적으로 더 낫다고 할 수 없습니다—서로 다른 상황에 적합합니다. Semantic Kernel은 네이티브 다국어 SDK(C#/.NET, Python, Java)와 Azure 지향 엔터프라이즈 구성 요소를 제공하지만 현재 유지보수 모드에 있습니다. LangChain은 Python/JavaScript 우선이며 더 큰 커뮤니티와 활발한 개발이 이루어지고 있습니다.
