Repolode
smg-project

smg-project/smg

Rust 기반의 엔진 독립형 LLM 게이트웨이로, OpenAI 및 Anthropic 호환 트래픽을 자체 호스팅 추론 엔진과 클라우드 모델 제공업체로 라우팅합니다.

스타
633
포크
195
열린 이슈
172
마지막 커밋
16시간 전

어떤 프로젝트인가요?

SMG(Shepherd Model Gateway)는 LLM 추론 서버와 클라우드 제공업체 앞단에 위치해 이를 하나의 통합 엔드포인트로 제공하는 모델 라우팅 게이트웨이입니다. 워커의 수명 주기를 관리하고 vLLM, SGLang, TensorRT-LLM, TokenSpeed, MLX 및 OpenAI 호환 서버 전반에서 트래픽을 분산하며, OpenAI, Anthropic, Gemini, xAI, AWS Bedrock, Azure OpenAI로 요청을 전달할 수도 있습니다.

자체 호스팅 엔진의 경우 라우터는 radix tree를 사용해 KV 캐시 상태를 추적하므로, 접두사를 공유하는 요청이 같은 워커로 전달됩니다. 또한 네이티브 gRPC 파이프라인을 통해 prefill/decode 분리를 지원합니다. 운영 기능으로는 Kubernetes Pod 검색, 서킷 브레이커, 속도 제한, 우선순위 기반 요청 승인 스케줄링, OpenTelemetry 트레이싱을 포함한 Prometheus 메트릭이 있습니다.

게이트웨이는 채팅 기록 저장(PostgreSQL, Oracle, Redis 또는 메모리 내 저장소), MCP 도구 실행, API 키 및 OIDC 인증, 사용자 지정 요청 처리를 위한 WebAssembly 플러그인도 지원합니다.

핵심 기능

  • 01자체 호스팅 백엔드와 클라우드 백엔드 전반에서 OpenAI, Anthropic, Gemini 스타일 API 엔드포인트를 통합 제공합니다.
  • 02캐시 인식 라우팅과 그 외 9가지 로드 밸런싱 정책을 제공합니다.
  • 03prefill/decode 및 encode 분리를 지원하는 네이티브 gRPC 파이프라인을 제공합니다.
  • 04Kubernetes Pod 검색 및 멀티노드 배포를 위한 고가용성 메시를 제공합니다.
  • 05MCP 도구 실행과 다양한 오픈 모델을 위한 도구 호출 및 추론 파서를 제공합니다.
  • 06Prometheus 메트릭, OpenTelemetry 트레이싱, WebAssembly 플러그인을 제공합니다.

활용 사례

  • vLLM 또는 SGLang GPU 서버 풀 전체에서 요청을 로드 밸런싱합니다.
  • 로컬 엔진과 호스팅 클라우드 모델을 모두 연결하는 OpenAI 호환 엔드포인트 하나를 제공합니다.
  • LLM 서비스에 인증, 멀티테넌트 제어, 채팅 기록 기능을 추가합니다.
  • 워커를 자동으로 검색하는 Kubernetes 기반 라우팅 추론 플랫폼을 운영합니다.

빠른 시작

  1. 1

    Docker로 설치

    docker pull lightseekorg/smg:latest
  2. 2

    Python으로 설치

    pip install smg
  3. 3

    추론 워커를 대상으로 게이트웨이 실행

    smg launch --worker-urls http://localhost:8000
  4. 4

    게이트웨이에 채팅 요청 전송

    curl http://localhost:30000/v1/chat/completions -H "Content-Type: application/json" -d '{"model": "llama3", "messages": [{"role": "user", "content": "Hello!"}]}'

사용 전 알아둘 점

  • 실행하려면 라우팅 대상인 기존 추론 워커나 클라우드 제공업체가 하나 이상 필요합니다.
  • README에는 안정 버전 출시 여부가 설명되어 있지 않으므로 버전 간 변경 사항이 있을 수 있습니다.

토픽

자주 묻는 질문

smg은(는) 무엇인가요?
Rust 기반의 엔진 독립형 LLM 게이트웨이로, OpenAI 및 Anthropic 호환 트래픽을 자체 호스팅 추론 엔진과 클라우드 모델 제공업체로 라우팅합니다. SMG(Shepherd Model Gateway)는 LLM 추론 서버와 클라우드 제공업체 앞단에 위치해 이를 하나의 통합 엔드포인트로 제공하는 모델 라우팅 게이트웨이입니다. 워커의 수명 주기를 관리하고 vLLM, SGLang, TensorRT-LLM, TokenSpeed, MLX 및 OpenAI 호환 서버 전반에서 트래픽을 분산하며, OpenAI, Anthropic, Gemini, xAI, AWS Bedrock, Azure OpenAI로 요청을 전달할 수도 있습니다.
smg은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
smg은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
smg은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. smg의 마지막 커밋은 2026년 10월 19일입니다.
smg은(는) 어디에 사용할 수 있나요?
vLLM 또는 SGLang GPU 서버 풀 전체에서 요청을 로드 밸런싱합니다. 로컬 엔진과 호스팅 클라우드 모델을 모두 연결하는 OpenAI 호환 엔드포인트 하나를 제공합니다. LLM 서비스에 인증, 멀티테넌트 제어, 채팅 기록 기능을 추가합니다. 워커를 자동으로 검색하는 Kubernetes 기반 라우팅 추론 플랫폼을 운영합니다.
smg는 어떻게 설치하나요?
Docker로 설치: docker pull lightseekorg/smg:latest Python으로 설치: pip install smg 추론 워커를 대상으로 게이트웨이 실행: smg launch --worker-urls http://localhost:8000 게이트웨이에 채팅 요청 전송: curl http://localhost:30000/v1/chat/completions -H "Content-Type: application/json" -d '{"model": "llama3", "messages": [{"role": "user", "content": "Hello!"}]}'
smg은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/smg-project/smg

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트