.NET 에코시스템은 AI 애플리케이션을 개발하는 데 필요한 강력한 도구, 라이브러리, 서비스를 많이 제공합니다. .NET은 클라우드와 로컬 AI 모델 연결, 다양한 AI와 벡터 데이터베이스 서비스를 위한 여러 SDK, 다양한 범위와 복잡도의 지능형 앱을 빌드하는 데 도움이 되는 기타 도구를 지원합니다.
중요
이 문서에 제시된 모든 SDK와 서비스가 Microsoft에서 유지 관리되는 것은 아닙니다. SDK를 고려할 때 품질, 라이선싱, 지원 및 호환성을 평가하여 요구 사항을 충족하는지 확인합니다.
.NET용 Microsoft.Extensions.AI 라이브러리
Microsoft.Extensions.AI 는 의미 체계 커널을 포함하여 .NET 에코시스템 전반의 개발자와 공동으로 만든 핵심 .NET 라이브러리 집합입니다. 이러한 라이브러리는 소형 및 대형 언어 모델(SLLM 및 LLM), 포함 및 미들웨어와 같은 AI 서비스와 상호 작용하기 위한 C# 추상화의 통합 계층을 제공합니다.
Microsoft.Extensions.AI 에서는 다양한 서비스에서 구현할 수 있는 추상화 기능을 제공하며, 모두 동일한 핵심 개념을 준수합니다. 이 라이브러리는 특정 공급자의 서비스에 맞게 조정된 API를 제공하기 위한 것이 아닙니다. Microsoft.Extensions.AI 목표는 .NET 에코시스템 내에서 통합 계층 역할을 하여 개발자가 선호하는 프레임워크 및 라이브러리를 선택할 수 있게 하는 동시에 에코시스템 전체에서 원활한 통합 및 협업을 보장하는 것입니다.
.NET을 위한 의미 체계 커널
의미 체계 커널은 .NET 앱에서 AI 통합 및 오케스트레이션 기능을 구현하는 오픈 소스 SDK입니다. 이 SDK는 일반적으로 다른 API나 웹 서비스, 데이터 저장소 및 사용자 지정 코드와 함께 하나 이상의 AI 서비스를 사용하는 .NET 앱에 권장되는 AI 오케스트레이션 도구입니다. 의미 체계 커널은 엔터프라이즈 개발자에게 다음과 같은 이점을 제공합니다.
AI 기능을 기존 애플리케이션에 통합하여 기업 제품에 대한 응집력 있는 솔루션을 사용하도록 간소화합니다.
복잡성을 줄이는 추상화 기능을 제공하여 다양한 AI 모델 또는 서비스를 사용하는 학습 곡선을 최소화합니다.
AI 모델의 프롬프트 및 응답의 예측할 수 없는 동작을 줄여 안정성을 개선합니다. 프롬프트를 미세 조정하고 작업을 계획하여 제어되고 예측 가능한 사용자 환경을 만들 수 있습니다.
Azure는 특정 애플리케이션 기능과 워크플로를 빌드하기 위한 다양한 AI 서비스를 제공합니다. 이러한 서비스의 대부분은 사용자 지정 앱에 기능을 통합할 수 있는 .NET SDK를 제공합니다. 가장 일반적으로 사용되는 서비스 중 일부는 다음 표에 나와 있습니다. 사용 가능한 서비스 및 학습 리소스의 전체 목록은 Azure AI 서비스 설명서를 참조하세요.
.NET 앱은 다양한 개발 시나리오에서 로컬 AI 모델에 연결할 수도 있습니다. 의미 체계 커널은 .NET을 사용하여 로컬 모델에 연결하는 데 권장되는 도구입니다. 의미 체계 커널은 다양한 플랫폼에서 호스트되는 여러 다른 모델에 연결할 수 있으며 하위 수준 구현 세부 정보를 추상화합니다.
사용자가 제공한 데이터에 대한 추론, 독해 이해, 수학 문제 해결, 텍스트 요약과 같은 작업에서 모델을 연구합니다.
참고
이전 SLM은 Azure와 같은 다른 서비스에도 호스트될 수 있습니다.
벡터 데이터베이스 및 서비스에 연결
AI 애플리케이션은 종종 데이터 벡터 데이터베이스 및 서비스를 사용하여 관련성을 개선하고 사용자 지정된 기능을 제공합니다. 이러한 서비스 중 다수는 .NET용 네이티브 SDK를 제공하는 반면, 사용자 지정 코드를 통해 연결할 수 있는 REST 서비스를 제공하는 서비스도 있습니다. 의미 체계 커널은 각 SDK를 학습할 필요 없이 다양한 벡터 저장소를 사용할 수 있는 확장 가능한 구성 요소 모델을 제공합니다.
이 문서에서는 .NET에 대한 공식 지원을 제공하는 서비스에 중점을 두고 .NET 에코시스템의 도구와 SDK를 요약했습니다. 사용자의 필요와 앱 개발 단계에 따라 .NET + AI 리소스의 비공식 목록에서 에코시스템에 대한 오픈 소스 옵션을 살펴볼 수도 있습니다. Microsoft는 이러한 많은 프로젝트의 유지 관리자가 아니므로 해당 프로젝트의 품질, 라이선스 및 지원을 검토해야 합니다.