stuntd: Laya 기반의 로컬 Jev 호환 서버, 내 트래픽으로 학습 (API 키 불필요)
stuntd: a local Jev-compatible server on Laya that learns from your own traffic (no API key needed)
핵심 요약
사용자의 트래픽을 학습해 로컬에서 Jev 호환 결정을 내리는 Laya 기반 프록시 서버 'stuntd' 소개.
- 로컬 프록시 — 외부 API 호출을 가로채 결정을 학습하고 로컬에서 처리함.
- Jev 호환성 — Jev 프로토콜을 지원하여 기존 SDK와 즉시 연동 가능함.
- 학습 효율성 — Laya 모델을 기반으로 사용자 트래픽을 학습해 성능을 개선함.
- 비용 절감 — 로컬 GPU를 활용해 API 호출 비용과 지연 시간을 줄임.
이게 뭔데? stuntd는 LLM의 결정(선택, 예/아니오, 점수)을 타입화해서 처리하는 로컬 프록시야. 앱은 평소처럼 프록시를 거쳐서 LLM 제공업체에 요청을 보내면 돼. stuntd는 그 결정들을 기록하고, Laya(오픈 웨이트 System One 모델, 인코더는 고정됨) 위에 작은 헤드를 학습시켜서 섀도우 모드로 돌려. 그러다가 네가 설정한 목표치만큼 기존 제공업체와 결과가 일치하면 그때부터 라이브 모드로 전환하는 거지. 신뢰도 임계값보다 낮으면 여전히 원래 제공업체로 요청을 보내고, 일치율이 떨어지면 다시 스스로 강등시켜.
이 녀석은 Jev 프로토콜도 지원해. typesafe-sdk를 http://127.0.0.1:8787`에 연결하면 Laya가 로컬에서 POST /v1/systemone 요청을 제로샷으로, 키 없이 바로 받아쳐. Jev 호환 서버(유료 API, kev, SemIf, LLM2Jev, laya-server 등)를 뒤에 붙여두면, 스스로 답할 수 있을 때까지 그 서버의 답변을 보면서 학습해.
왜 만들었냐고? Jev는 빠르고 성능도 좋지만, 결국 호스팅된 API잖아. 왕복 380ms 정도 걸리고, 토큰당 돈 내야 하고, 얼리 액세스라 불편하지. Laya는 오픈 모델이라 노트북 GPU에서 22ms 만에 답이 나오는데, 제로샷으로 돌리면 라벨이 많을 때 성능이 개판이거든. banking77(77개 인텐트)에서 Jev가 76% 찍을 때 Laya는 38%밖에 안 나와(dhruvmehra/jevbench 데이터 기준). 네 트래픽으로 학습시킨 헤드를 붙이면 이 격차를 메울 수 있는데, 이걸 폴백 루프가 포함된 프록시로 구현해둔 놈이 없더라고.
퀵스타트, 로컬 Jev, 키 필요 없음:
pip install "stuntd[train]"
stuntd config init
stuntd serve
클라이언트 설정: TypeSafeClient(api_key="anything", base_url="http://127.0.0.1:8787").
수치 (RTX 5060 노트북 기준, 레포에서 전부 재현 가능; 내가 Jev 키가 없어서 교사는 전부 규칙이나 오라클로 대체함):
-
헤드 답변 p50: CUDA 22ms, CPU 60ms, TCP를 통한 데몬 경유 시 28ms.
-
Snake 게임, BFS 오라클을 교사로 사용, 동일 시드: 제로샷 Laya는 게임당 0.7점; 교사 게임 30판과 138초 학습 후에는 헤드가 직접 99.6%의 수를 두고 11.4점 기록(오라클은 21점). README에 비교 GIF 있음.


