1.7B 토큰 무료 풀을 합친 OpenAI 호환 라우터
여러 공급자의 무료 티어를 모아 하나의 OpenAI‑호환 /v1 엔드포인트로 라우팅하고 자동 폴백·키 암호화·대시보드를 제공하는 셀프호스트 라우터이다.
TL;DR
FreeLLMAPI는 16개 이상의 공급자의 무료 티어를 하나의 OpenAI 호환 /v1 엔드포인트 뒤에 통합해 로컬에서 대규모 무료 추론 풀을 구성하는 셀프호스트 라우터이다. 라우터는 키별 RPM/RPD/TPM/TPD 카운터와 헬스 체크를 사용해 우선순위 기반 모델을 선택하고 429·5xx 응답이 발생하면 단기 쿨다운 후 폴백 체인의 다음 모델로 재시도하며 임베딩은 동일 패밀리 내에서만 페일오버한다. 대시보드에서 키 관리·폴백 체인 재배열·애널리틱스 확인이 가능하고 데스크톱 앱과 로컬 개발 스크립트를 제공해 빠른 시작이 가능하다. 단점으로는 무료 티어의 변동성으로 인한 일일 지능 저하와 레이턴시 변동, 서비스 약정(SLA) 부재가 명확하게 존재한다, 따라서 프로덕션용 안정성은 보장되지 않는다.
주요 기능
- OpenAI 호환 엔드포인트를 제공해 기존 OpenAI SDK와 LangChain 같은 클라이언트를 그대로 사용하게 한다.
- 다중 공급자의 무료 티어를 합쳐 대략 월 17억 토큰에 달하는 추정 추론 용량을 확보하고 우선순위 기반 폴백 체인을 운영한다.
- 스트리밍과 비스트리밍 응답을 모두 지원하며 툴 호출과 Anthropic Messages API까지 변환해 라우팅한다.
- 각 키에 대해 RPM/RPD/TPM/TPD 카운터를 유지해 속도 제한을 피하고 429/5xx 발생 시 단기 쿨다운 후 다음 모델로 재시도한다.
- 대시보드에서 키 관리·폴백 체인 재정렬·모델 토글·애널리틱스 확인이 가능하며 데스크톱 트레이 앱과 멀티언어 UI를 포함한다.
어떻게 동작하는가
클라이언트가 통합된 freellmapi 베어러 토큰으로 /v1 엔드포인트에 요청하면 Express 기반 프록시가 라우터를 호출해 현재 우선순위·건강 상태·키별 쿼터를 기준으로 사용 가능한 모델을 선택한다. 선택된 공급자 어댑터는 암호화된 키를 메모리에서 복호화해 실제 API 호출을 수행하고, 429·5xx·타임아웃이 발생하면 해당 키에 쿨다운을 주고 폴백 체인의 다음 후보로 재시도한다. 임베딩은 모델 패밀리 단위로만 페일오버가 허용되어 벡터 일관성을 유지한다.
해결 문제
서로 다른 공급자 SDK와 쿼터·레이트 리밋을 수동으로 관리해야 하는 복잡성을 제거해 하나의 OpenAI 호환 엔드포인트로 통합된 접근을 제공한다. 다중 무료 티어를 합쳐 실제 사용 가능한 추론 용량을 늘리고 각 키의 사용량과 상태를 추적해 자동으로 건강한 키를 선택한다. 또한 폴백·스티키 세션·컨텍스트 핸드오프 같은 연속성 메커니즘으로 대화형 워크로드의 품질 저하를 완화한다.
지금 주목받는 이유
여러 공급자의 무료 티어를 조합해 월 약 1.7억이 아닌 17억 토큰 규모의 로컬 추론 풀을 만들 수 있다는 실용적 가치와 셀프호스트 대시보드가 결합되어 개인 실험용으로 빠르게 확산됐다.
차별점
- 여러 공급자의 무료 티어를 합쳐 로컬에서 월 수억~수십억 토큰 규모의 추론 풀을 구성한다는 점이 핵심 차별점이며 상용 유료 API에 의존하지 않는 점이 명확하다.
- 임베딩에 대해 모델 패밀리 단위 라우팅을 강제해 벡터 저장소의 일관성을 보장하는 정책을 운영하며, 툴 호출·Anthropic API·이미지·오디오까지 OpenAI 호환 형식으로 통합한다.
- 공급자 어댑터 패턴과 키별 속도 추적, 429 발생 시 단기 쿨다운 후 폴백을 수행하는 운영 로직이 내장되어 있어 손수 쿼터 관리를 구현할 필요가 적다.
사용 사례
- 여러 무료 모델을 조합해 비용 없이 프로토타입을 빠르게 구축하고 다양한 모델을 비교해 라우팅 우선순위를 튜닝하는 실험 환경으로 사용된다.
- 로컬 데스크톱 또는 라즈베리파이 같은 소형 ARM 서버에서 통합 엔드포인트를 띄워 개인 개발 워크플로에서 OpenAI SDK를 그대로 재사용하는 용도로 쓰인다.
- Claude Code·Anthropic 호환 클라이언트나 에디터 자동완성(Continue) 같은 기존 툴을 프록시 뒤에 연결해 무료 공급자 풀로 요청을 전달하는 브리지 역할을 한다.
시작하기
Docker 설치를 권장하며 원라이너로 설치 스크립트를 내려받아 실행하면 컨테이너를 생성하고 기본 설정을 자동으로 구성한다. 수동 설치는 리포를 클론한 뒤 ENCRYPTION_KEY를 생성해 .env에 기록하고 docker compose up -d로 서버와 대시보드를 기동하는 방식이며 로컬 개발은 Node.js 20+ 환경에서 npm install 후 npm run dev로 Vite 개발 UI를 실행해 키를 추가하면 된다. 기본적으로 컨테이너는 localhost 바인딩이므로 LAN 접근이 필요하면 HOST_BIND=0.0.0.0로 재기동해야 한다.
요구사항
- Docker 및 Docker Compose
- Node.js 20+ (로컬 개발 시)
- OpenSSL (환경변수 ENCRYPTION_KEY 생성용)
- SQLite (앱 내부 데이터 저장, 기본 구성에서 자동 관리)
벤치마크
| 벤치마크 | 지표 | 값 | 비교 |
|---|---|---|---|
| Estimated combined free-tier capacity | tokens/month | 1.7B | — |
| gemini-embedding-001 | dims | 3072 | — |
이미지 분석




14.8k
Stars
2.2k
Forks
+249
Trending
0
조회수
관련 토론
아직 관련 토론이 없습니다.
댓글
댓글을 작성하려면 로그인이 필요합니다.