TensorSharp: .NET 네이티브 오픈 소스 로컬 LLM 추론 엔진
요약
TensorSharp는 .NET 네이티브로 구현된 오픈 소스 로컬 LLM 추론 엔진입니다. 멀티모달, 추론, 함수 도구를 지원하며 OpenAI 및 Ollama API와 호환됩니다. CPU 백엔드는 100% 순수 C#으로 동작하며 CUDA, MLX 등 다양한 백엔드를 지원합니다.
핵심 포인트
- .NET 네이티브 구현으로 Windows, MacOS, Linux 지원
- Gemma4, Qwen3.6 등 다양한 모델 및 멀티모달 지원
- vLLM의 페이지드 KV 캐시 및 연속 배칭 기술 적용
- OpenAI 및 Ollama 인터페이스와 완전 호환
- llama.cpp와 대등한 성능의 고성능 추론 엔진
저의 최신 오픈 소스 .NET 네이티브 (native) 로컬 LLM 추론 엔진 및 애플리케이션을 공유하고자 합니다. 이 엔진은 멀티모달 (multi-modal) (이미지, 비전, 오디오), 추론 (reasoning) 및 함수 도구 (function tool)를 지원하며, Gemma4, DiffusionGemma, Qwen3.6과 같은 많은 모델을 지원합니다. Windows, MacOS, Linux에서 실행할 수 있으며 GPU의 성능을 최대한 활용할 수 있습니다. API는 OpenAI 및 Ollama 인터페이스와 완전히 호환됩니다. llama.cpp와 대등한 성능을 보여줍니다.
이 프로젝트는 단순히 llama.cpp의 C# 래퍼 (wrapper)가 아닙니다. LLM 추론 엔진 전체를 바닥부터 끝까지 직접 구현했습니다. CPU 백엔드 (backend)를 사용할 경우, 100% 순수 C# 코드 실행으로 이루어집니다. CPU 백엔드 외에도 CUDA, MLX 및 GGML 백엔드를 구현했습니다. GGML 백엔드는 GGML 프로젝트를 외부 프로젝트로 참조하며, 상위 레벨에서 몇 가지 퓨전 연산 (fusion operation)을 구축했습니다.
저는 다른 프로젝트들로부터 많은 것을 배웠으며 이를 TensorSharp에 적용했습니다. 예를 들어 vLLM의 페이지드 KV 캐시 (paged KV cache) 및 연속 배칭 (continuous batching), oMLX의 MoE 모델을 위한 SSD 기반 캐시 (SSD based cache), llama.cpp의 GGUF 양자화 (quantized), 그리고 프리필 (prefill) 및 디코드 (decode)를 위한 기타 최적화 기법 등을 도입했습니다.
모든 피드백과 의견을 환영합니다. 프로젝트가 마음에 드신다면 GitHub에서 별 (star)을 눌러주시면 정말 감사하겠습니다. 미리 감사드립니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기