ENTERPILOT/GoModel
AI gateway / AI control plane / AI proxy written in Go. Unified OpenAI-compatible and Anthropic-compatible API for OpenAI, Anthropic, Gemini, Groq, xAI, Ollama, vLLM and more. A LiteLLM alternative with observability, guardrails, streaming, cost tracking, intelligent routing, sticky sessions, failover, real-time logs and usage tracking. Prod ready.
GoModel이란?
GoModel은 Go로 작성된 오픈소스 AI 게이트웨이입니다. 애플리케이션(또는 OpenAI/Anthropic 호환 SDK)과 다양한 LLM 제공업체 사이에 위치하여 HTTP 호출을 대신 처리합니다. 주요 목표는 여러 모델을 저렴하고 안정적이며 관찰 가능하게 사용하는 것입니다.
핵심 아이디어
| 아이디어 | 중요한 이유 |
|---|---|
단일 엔드포인트 – 구성된 모든 제공업체로 전달되는 /v1(OpenAI) 또는 /v1/messages(Anthropic) API를 노출합니다. |
기존 코드를 변경하지 않고 백엔드를 교체하거나 혼합할 수 있습니다. |
| 캐싱 및 프롬프트 압축 – 정확하거나 의미론적 응답을 저장하고 선택적으로 제공업체에 도달하기 전에 프롬프트를 축소합니다. | 토큰 사용량과 비용을 줄입니다. |
| 비용 및 예산 추적 – 요청별 비용 추정, 대시보드, 하드 지출 한도. | 비싼 모델 사용 시 예상치 못한 청구를 방지합니다. |
| 장애 조치 및 키 순환 – 자동 재라우팅, 회로 차단기, 여러 API 키에 대한 라운드로빈. | 안정성을 향상시키고 키별 속도 제한을 우회합니다. |
| 관찰 가능성 – Prometheus 메트릭, OpenTelemetry 추적, 웹 UI에서의 실시간 요청 스트리밍. | 성능 모니터링 및 디버깅에 필요한 데이터를 제공합니다. |
확장 가능한 플러그인 및 워크플로우 – Go 플러그인(.so)으로 로드되는 사용자 정의 가드레일, 응답 필터, 라우팅 로직. |
팀이 애플리케이션 코드를 변경하지 않고 정책(예: 욕설 필터)을 적용할 수 있습니다. |
주요 기능(README에 나열된 대로)
- 캐싱 – 정확한 및 의미론적 응답 캐싱.
- 비용 추적 및 예산 – 실시간 지출 분석, 사용자/팀/키별 하드 한도.
- 속도 제한 – 요청, 토큰, 동시성에 대한 상한.
- 가상 모델 – 제공업체 간 로드 밸런싱이 가능한 안정적인 모델 별칭.
- 세션 유지 – 클라이언트 세션을 특정 제공업체에 고정하여 프롬프트 캐시를 유지합니다.
- 장애 조치 및 복원력 – 재시도, 회로 차단기, 백업 제공업체.
- 레이블링 및 사용자 경로 – 키, 예산, 감사 로그에 대한 계층적 범위 지정.
- MCP 게이트웨이 – 여러 MCP 서버를 단일 엔드포인트 뒤에 집계합니다.
- 패스스루 API –
/p/{provider}/…아래의 제공업체 네이티브 엔드포인트에 직접 액세스. - 오디오 및 이미지 API – TTS, 전사, 이미지 생성/편집, 모두 동일한 액세스 제어.
- 가드레일 및 플러그인 – 요청/응답 정책, 사용자 정의 필터, 라우팅 전략.
- 워크플로우 – 요청별 버전 관리 정책 번들.
- 제공업체 키 순환 – 여러 API 키에 대한 라운드로빈.
- 관찰 가능성 – Prometheus, OpenTelemetry, 감사 로그, 라이브 스트리밍.
- 플레이그라운드 UI – 대시보드에서 모든 모델을 시도하고 원시 JSON을 확인합니다.
누가 사용할까요?
| 사용 사례 | GoModel이 어떻게 도움이 되는지 |
|---|---|
| 스타트업 또는 SaaS 플랫폼 – 코드를 다시 작성하지 않고 OpenAI, Anthropic, Gemini 등을 전환해야 하는 경우. | 하나의 구성 가능한 게이트웨이가 많은 SDK 변경을 대체합니다. |
| 엄격한 예산이 있는 팀 – 프로젝트 또는 사용자별 지출을 제한하려는 경우. | 내장된 비용 추적, 예산, 속도 제한. |
| 엔터프라이즈 – 감사 로그, SSO, 사용자 정의 가드레일이 필요한 경우. | 대시보드, OpenTelemetry, OIDC SSO(Pro), 플러그인 시스템. |
| 자체 호스팅 LLM을 실행하는 개발자 (예: Ollama, vLLM). | "모든 OpenAI 호환 제공업체"를 지원하고 로컬 모델에 프록시할 수 있습니다. |
| 메트릭과 알림이 필요한 운영 팀 – Prometheus 메트릭, 회로 차단기 로직, 상태 확인. | Prometheus 메트릭, 회로 차단기 로직, 상태 확인. |
시작하기(간단 요약)
- 설치 – macOS/Linux용 원라이너 스크립트, Windows용 PowerShell 스크립트 또는 Docker 이미지.
- 구성 –
.env,config.yaml또는 대시보드 UI; 템플릿에 모든 환경 변수가 나열됩니다. - 실행 –
gomodel(또는docker run …). 관리 UI는http://localhost:8080/admin/dashboard에 있습니다. - API 호출 –
/v1/responses(OpenAI 스타일)에 POST를 보내거나http://localhost:8080/v1을 가리키는 OpenAI/Anthropic SDK를 사용합니다.
라이선스 및 커뮤니티
저장소는 오픈소스입니다(README에 라이선스가 명시되어 있지 않지만 CI, Docker 이미지, 공개 저장소의 존재는 OSS 라이선스를 시사합니다). 프로젝트는 적극적으로 유지 관리됩니다 – CI 배지, Docker 풀, Discord 커뮤니티, Hacker News 토론이 링크되어 있습니다.
요약
GoModel은 Go 기반의 자체 호스팅 AI 게이트웨이로, 단일 OpenAI 호환 엔드포인트 뒤에서 수십 개의 LLM 제공업체에 대한 요청을 라우팅, 캐싱, 모니터링, 제어할 수 있습니다. 비용 제어, 안정성, 관찰 가능성이 필요하면서 기존 SDK를 그대로 유지하려는 팀을 대상으로 합니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트