ome-projects/ome
Open Model Engine (OME) — Kubernetes operator for LLM serving, GPU scheduling, and model lifecycle management. Works with SGLang, vLLM, TensorRT-LLM, and Triton
OME (Open Model Engine) – Kubernetes Operator for LLM Serving
무엇인가요 – OME는 Kubernetes에 최적화된 컨트롤러로, 클러스터 내에서 대규모 언어 모델(LLM)을 확장 가능하게 실행할 수 있게 해줍니다. 각 모델, 런타임, GPU 리소스를 Kubernetes의 고급 커스텀 리소스로 취급하여, 모델 인제스트부터 추론 서비스 배포까지 전체 라이프사이클을 자동화합니다.
주요 기능
- Model CRDs –
BaseModel/ClusterBaseModel는 모델 파일(아키텍처, 파라미터 수, 형식)을 설명합니다. OME는 파일을 분석하고, SafeTensors, PyTorch, TensorRT, ONNX 등 다양한 형식을 지원하며, 이중 암호화와 네임스페이스 스코프로 모델을 저장합니다. - 지능형 런타임 선택 – OME는 모델의 특성에 따라 사용 가능한 런타임(SGLang, vLLM 등)을 평가하고 자동으로 최적의 것을 선택합니다.
- 최적화된 배포 패턴 – 프리필/디코드 분리, 멀티노드 추론, 카나리아/블루그린 배포, 사용자 정의 오토스케일링 정책을 지원합니다.
- GPU 인식 스케줄링 –
AcceleratorClass리소스는 GPU의 기능과 비용을 설명합니다. OME의 비닝패킹 스케줄러는 HA 요구사항을 존중하면서 클러스터 활용도를 극대화합니다. - 플릿 레벨 할당량 (alpha) – 선택적 컨트롤플레인 구성요소(
ome-quota-manager,ome-alfred)는 계층적 GPU 할당량 트리를 구축하고 Kueue에 노출하여 대규모 GPU 팜에서 간그 스케줄링을 가능하게 합니다. - CLI 및 웹 콘솔 –
kubectl ome(kubectl 플러그인)를 통해 모델, 런타임, 배포를 감시하고, 일시정지, 프로모션, 롤백, 마이그레이션과 같은 보호된 작업을 수행할 수 있습니다. 별도의 웹 UI(ome-console)는 HuggingFace 모델 검색 기능을 갖춘 시각적 대시보드를 제공합니다. - 벤치마킹 –
BenchmarkJobCRD는 설정 가능한 트래픽 부하를 실행하고 결과를 저장하여 성능 비교를 반복 가능하게 합니다.
설치 방법
- 사전 요구 사항 – Kubernetes 1.28+.
- CRD 및 핵심 오ペ레이터 설치 – OCI 레지스트리에서 Helm을 사용하여:
helm upgrade --install ome-crd oci://ghcr.io/moirai-internal/charts/ome-crd --namespace ome --create-namespace helm upgrade --install ome oci://ghcr.io/moirai-internal/charts/ome-resources --namespace ome - 옵션 추가 구성 – 스케줄러, 할당량 관리자, "Alfred" 케어테이커는 각각 별도의 Helm 차트로, 필요에 따라 활성화할 수 있습니다.
- CLI 설치 – Krew를 사용하여
kubectl ome플러그인 설치:
또는 소스에서 빌드 (kubectl krew install --manifest-url https://github.com/ome-projects/ome/releases/latest/download/ome.yamlmake kubectl-ome).
일반적인 워크플로우
- 지원되는 백엔드에 저장된 모델 파일을 가리키는
BaseModel(또는ClusterBaseModel)을 생성합니다. - OME는 모델을 분석하고,
ServingRuntime을 생성하거나 기존 것을 선택하며,AcceleratorClass에 매칭합니다. InferenceService리소스가 모델과 런타임을 연결합니다. OME는 필요한 Pod, Service, Gateway-API 경로를 생성합니다.- KEDA 또는 HPA를 통한 오토스케일링 정책과 배포 정책이 서비스의 반응성을 유지하고 안전한 업데이트를 가능하게 합니다.
kubectl ome또는 웹 콘솔을 사용하여 건강 상태를 모니터링하고, 배치 결정을 확인하며,BenchmarkJob을 실행합니다.
프로덕션 준비성 – 프로젝트는 v1beta1 API, 완전한 문서, 단위/통합 테스트 커버리지, RBAC 기반 보안, 모델 암호화, HA 스토리지 등을 제공합니다. 대규모 LLM 워크로드에 이미 프로덕션 환경에서 사용되고 있습니다.
라이선스 – Apache 2.0.
TL;DR – OME는 프로덕션 수준의 Kubernetes 네이티브 플랫폼으로, 모델 인제스트, 런타임 선택, GPU 인식 스케줄링, 배포 전략, 관찰성까지 선언적 CRD, Helm 설치 가능한 오페레이터, CLI, 보조 웹 UI를 통해 자동화합니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트