TensorFold TP2 엔진을 사용해 NVIDIA DGX Spark(GB10) 노드 2대에서 텐서 병렬 처리로 DeepSeek-V4.1-Flash-1017을 서빙하는 레시피입니다.
microsoft/onnxruntime-genai
ONNX Runtime에서 생성형 AI 모델을 실행하고 전체 LLM 생성 루프를 처리하는 Python, C#, Java 바인딩을 제공하는 C/C++ 라이브러리입니다.
- 스타
- 1,153
- 포크
- 383
- 열린 이슈
- 276
- 마지막 커밋
- 4시간 전
어떤 프로젝트인가요?
ONNX Runtime GenAI는 ONNX Runtime으로 생성형 AI 모델을 실행하는 라이브러리입니다. ONNX 모델의 생성 루프를 구현하며, 전처리와 후처리, 추론, logits 처리, 검색 및 샘플링, KV cache 관리, tool calling을 위한 문법 명세를 지원합니다.
Llama, Phi, Qwen, Gemma, Mistral, DeepSeek, Whisper 등 다양한 모델 계열을 지원합니다. Python, C#, C/C++용 API를 제공하며, Java는 소스에서 빌드하면 사용할 수 있습니다. Linux, Windows, Mac, Android에서 실행되며 CPU, CUDA, DirectML, OpenVINO, QNN, WebGPU 및 기타 가속기를 사용할 수 있습니다.
이 라이브러리는 multi-LoRA 어댑터, 연속 디코딩, 제약 디코딩도 제공합니다. README에 따르면 Foundry Local, Windows ML, Visual Studio Code AI Toolkit의 기반으로 사용됩니다.
핵심 기능
- 01샘플링과 KV cache 관리를 포함해 ONNX LLM의 전체 생성 루프를 구현합니다.
- 02Python, C#, C/C++용 API를 제공하며, Java는 소스에서 빌드해 사용할 수 있습니다.
- 03x86, x64, arm64에서 Linux, Windows, Mac, Android를 지원합니다.
- 04CUDA, DirectML, OpenVINO, QNN, WebGPU 등을 통해 하드웨어 가속을 지원합니다.
- 05multi-LoRA, 연속 디코딩, 제약 디코딩을 제공합니다.
활용 사례
- Phi나 Llama 같은 소형 언어 모델을 노트북이나 기기에서 로컬로 실행합니다.
- ONNX Runtime을 통해 C# 또는 Windows 애플리케이션에 LLM 추론을 통합합니다.
- 하나의 코드베이스로 다양한 공급업체의 NPU 또는 GPU에서 양자화 모델을 배포합니다.
- 생성 중 구조화된 출력이나 tool-call 문법을 적용합니다.
빠른 시작
- 1
Hugging Face에서 Phi-3 모델을 다운로드합니다
huggingface-cli download microsoft/Phi-3-mini-4k-instruct-onnx --include cpu_and_mobile/cpu-int4-rtn-block-32-acc-level-4/* --local-dir . - 2
numpy를 설치합니다
pip install numpy - 3
onnxruntime-genai Python 패키지를 설치합니다
pip install --pre onnxruntime-genai - 4
README의 Python 예제를 스크립트로 저장한 다음 실행해 텍스트를 생성합니다
사용 전 알아둘 점
- Java 바인딩을 사용하려면 소스에서 빌드해야 합니다.
- main 브랜치의 예제는 최신 안정 릴리스와 다를 수 있습니다.
토픽
자주 묻는 질문
- onnxruntime-genai은(는) 무엇인가요?
- ONNX Runtime에서 생성형 AI 모델을 실행하고 전체 LLM 생성 루프를 처리하는 Python, C#, Java 바인딩을 제공하는 C/C++ 라이브러리입니다. ONNX Runtime GenAI는 ONNX Runtime으로 생성형 AI 모델을 실행하는 라이브러리입니다. ONNX 모델의 생성 루프를 구현하며, 전처리와 후처리, 추론, logits 처리, 검색 및 샘플링, KV cache 관리, tool calling을 위한 문법 명세를 지원합니다.
- onnxruntime-genai은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- onnxruntime-genai은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- onnxruntime-genai은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. onnxruntime-genai의 마지막 커밋은 2026년 11월 7일입니다.
- onnxruntime-genai은(는) 어디에 사용할 수 있나요?
- Phi나 Llama 같은 소형 언어 모델을 노트북이나 기기에서 로컬로 실행합니다. ONNX Runtime을 통해 C# 또는 Windows 애플리케이션에 LLM 추론을 통합합니다. 하나의 코드베이스로 다양한 공급업체의 NPU 또는 GPU에서 양자화 모델을 배포합니다. 생성 중 구조화된 출력이나 tool-call 문법을 적용합니다.
- onnxruntime-genai는 어떻게 설치하나요?
- Hugging Face에서 Phi-3 모델을 다운로드합니다: huggingface-cli download microsoft/Phi-3-mini-4k-instruct-onnx --include cpu_and_mobile/cpu-int4-rtn-block-32-acc-level-4/* --local-dir . numpy를 설치합니다: pip install numpy onnxruntime-genai Python 패키지를 설치합니다: pip install --pre onnxruntime-genai README의 Python 예제를 스크립트로 저장한 다음 실행해 텍스트를 생성합니다
- onnxruntime-genai은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/microsoft/onnxruntime-genai
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
AI 모델 추론 API, 멀티모델 파이프라인, LLM 앱을 구축하고 Docker와 Kubernetes에 배포하는 Python 라이브러리입니다.
모델 미세 조정, 변환, 양자화 단계를 조합해 CPU, GPU, NPU에 최적화된 ONNX 모델을 만드는 Python 툴킷입니다.
OpenVINO, PyTorch, ONNX에서 추론 속도를 높이기 위해 양자화, 프루닝, 희소화를 지원하는 신경망 압축용 Python 프레임워크입니다.
TensorRT, PyTorch, ONNX, OpenVINO 등 다양한 프레임워크의 AI 모델을 HTTP/REST와 gRPC로 배포하는 오픈소스 추론 서버입니다.
PyTorch, TensorFlow, ONNX 등 딥러닝 모델을 HTTP 엔드포인트로 제공하는 Java 기반 독립형 모델 서빙 솔루션입니다.