오픈AI(OpenAI) 호환 대규모 언어모델(LLM) 엔드포인트의 토큰 생성 처리량(TPS: Tokens Per Second)을 측정하는 CLI(Command Line Interface) 도구 'tokps'가 공개되어 개발자들의 주목을 받고 있습니다. Go 언어로 개발된 이 경량 도구는 OpenAI, Z.ai, GLM 등 다양한 LLM은 물론, llama.cpp, vLLM, Ollama 같은 로컬 모델 서버까지, 동일한 와이어 포맷을 사용하는 모든 /chat/completions 엔드포인트의 성능을 정밀하게 측정할 수 있습니다.
tokps는 스트리밍(streaming) 방식으로 테스트 프롬프트를 전송하고, 토큰이 스트리밍되는 속도를 모니터링하여 모델이 얼마나 빠르게 토큰을 생성하는지 측정합니다. 특히, TTFT(Time To First Token, 첫 토큰 생성 시간)와 순수 토큰 생성 시간(generation time)을 분리하여 측정함으로써, 초기 응답 지연과 실제 디코딩 속도를 명확히 구분합니다. 기본적으로 한 번의 워밍업(warmup) 실행 후 다섯 번의 측정 요청을 보내 중앙값(p50)과 최소-최대 범위를 보고하여, 일시적인 네트워크 문제나 콜드 스타트(cold start)가 결과에 미치는 영향을 최소화합니다. 또한, 동시성(concurrency) 테스트 기능을 통해 여러 스트림을 동시에 실행했을 때의 집계된 TPS를 측정하여, 실제 서비스 환경에서의 부하 처리 능력을 파악할 수 있습니다.
이러한 정밀한 측정 기능은 LLM을 활용하는 서비스 개발자들에게 매우 중요합니다. 모델의 응답 속도는 사용자 경험에 직결되며, 토큰 생성 비용은 서비스 운영 비용에 큰 영향을 미치기 때문입니다. tokps를 통해 개발자들은 자신이 사용하는 LLM의 성능 병목 지점을 정확히 파악하고, 모델 선택 및 인프라 최적화에 대한 합리적인 의사결정을 내릴 수 있습니다. 예를 들어, 특정 모델이 TTFT는 길지만 TPS가 높다면, 초기 응답 속도 개선에 집중하거나 스트리밍 UI를 통해 사용자에게 빠른 응답처럼 보이게 할 수 있습니다. 반대로 TPS가 낮다면, 더 빠른 모델을 고려하거나 캐싱 전략을 도입하는 등의 방안을 모색할 수 있어, 전반적인 서비스 품질 향상과 비용 효율성 증대에 기여할 것으로 기대됩니다.