Fits on Chips: 거대언어모델(LLM) 비용을 쉽게 절감하는 방법

스퀴즈비츠의 Fits on Chips는 LLM 서빙 최적화를 통해 복잡한 과정을 자동화하여 최적의 성능과 결과를 낼 수 있도록 도와줍니다. LLM 서빙에 대한 지식부터 실제로 Fits on Chips가 어떻게 고품질 LLM을 더 쉽게 운영할 수 있는지에 대한 자세한 내용까지 모두 공유해 드립니다!
Seungryeol Kim's avatar
Apr 23, 2024
Fits on Chips: 거대언어모델(LLM) 비용을 쉽게 절감하는 방법

핏츠온칩스(Fits on Chips)를 소개합니다

핏츠온칩스(Fits on Chips)의 대표 이미지
핏츠온칩스(Fits on Chips)의 대표 이미지
거대 언어 모델(LLM)은 더욱 정교하게 사람의 언어를 이해하고, 텍스트 뿐만 아니라 이미지, 음성 등 다양한 데이터를 동시에 이해하고 진행하는 멀티모달 기능이 향상되면서 최근 AI 기술의 중심에 있습니다. 특히 o3-mini와 DeepSeek-R1과 같은 추론 특화 모델의 등장은 이제는 LLM이 단순한 대화 도구를 넘어, 다양한 산업에서 활용될 수 있는 솔루션임을 보여주고 있습니다.
지금까지 이 분야의 많은 기술들은 기업 내부에서만 관리되거나, 최신 모델의 경우에는 회사의 전용 API를 통해서만 접근할 수 있었습니다. AI 모델을 개발하려면 많은 인력과 막대한 비용 투자가 필요했기 때문이죠. 기업에서 이렇게 어렵게 개발한 모델을 오픈소스로 제공한다는 것은 부담스러운 일이었습니다.
그러나 최근 DeepSeek-R1과 같은 사례를 통해, 오픈소스 모델도 독점 모델에 버금가는 높은 성능을 달성한다는 사실이 증명되었습니다. 이는 자사의 업무에 부합하도록 모델을 미세 조정(Fine-tuning)해야 하거나 엄격한 보안 및 규정을 준수해야 하는 기업들에게 훨씬 매력적으로 다가올 수 있는 변화였습니다. 오픈소스 LLM을 사용하면 데이터를 외부 서비스에 내보내지 않고도, 필요에 따라 AI 기술을 사용할 수 있기 때문입니다.
모델을 직접 운영할 때 가장 큰 이점은 데이터와 프로세스의 보안을 유지하면서도 필요에 따라 자유롭게 개선할 수 있다는 점입니다. 특히 오픈소스 모델의 성능이 발전하면서, 외부 서비스 의존도를 낮추고 자체적으로 LLM 구축을 검토하는 기업이 늘어나고 있습니다.
이러한 흐름에 따라 LLM 자체 서빙이 더욱 주목받고 있습니다. LLM 서빙이란 AI 모델을 만들어 서비스화하는 과정입니다. 쉽게 말해, 식당에서 요리를 손님에게 내놓는 전체 과정에 비유할 수 있습니다. 외부 도움 없이 자체적으로 LLM을 운영하는 것에 대한 관심이 높아지고 있지만, 실제로 직접 운영하다 보면 복잡한 설정과 최적화 과정으로 어려움을 겪게 됩니다. 다양한 시스템 구성으로 인해 수많은 시행착오가 따르며, 적절한 도구 없이는 상당한 운영 부담이 발생하기 때문입니다.
이러한 문제를 해결하기 위해 등장한 것이 바로 'Fits on Chips'입니다.
Fits on Chips는 모델 실험을 위한 설계와 벤치마킹 환경 구성, 그리고 최적의 성능을 찾는 과정까지 훨씬 단순하게 만들어줍니다. 즉, 복잡한 과정을 자동화해서 최적의 성능과 결과를 만들어낼 수 있도록 도와주는 도구입니다.
이어지는 내용에서는 LLM 서빙 성능에 영향을 미치는 핵심 요소들을 살펴보고, Fits on Chips가 다양한 파라미터 설정을 자동화하여 조직 내부 환경에서도 고품질 LLM을 더 쉽게 운영할 수 있도록 지원하는 방법을 자세히 알아보겠습니다.

LLM 서빙 프레임워크와 주요 퍼포먼스 지표

LLM 서빙 시나리오를 위해서는 적합한 프레임워크와 구성을 선택하는 것이 중요합니다.
LLM 서빙 시나리오를 위해서는 적합한 프레임워크와 구성을 선택하는 것이 중요합니다.
일관된 성능을 달성하려면 LLM 서빙에 적합한 프레임워크와 구성을 선택해야 합니다. 마치 건물을 짓기 전 기초 공사를 하는 것처럼, AI 모델이 안정적으로 작동할 수 있는 튼튼한 기반을 마련해야 합니다.
많은 팀이 비교하는 두 가지 프레임워크는 vLLM과 TensorRT-LLM입니다. 각각 서로 다른 최적화를 제공하므로, 용도에 맞게 선택하는 것이 중요합니다. vLLM은 오픈소스 프레임워크로 누구나 쉽게 활용할 수 있으며, 확장성이 뛰어납니다. 그래서 최신 모델과 서빙 기법을 통합하려는 팀에게 유용합니다. 즉, 최신 모델을 빠르게 적용해 보고 싶은 팀이 사용하면 좋습니다. 반면 TensorRT-LLM은 NVIDIA의 TensorRT 라이브러리를 활용하는 GPU 기반 프레임워크입니다. 더 낮은 수준의 하드웨어에 최적화를 제공하여 vLLM보다 높은 처리 속도와 성능을 보여줍니다. 어떤 프레임워크가 더 좋다기보다는, 하드웨어 환경, 모델 크기, 스케줄링 및 메모리 관리에 필요한 제어 수준 등 각자의 용도에 따라 선택이 달라집니다.
프레임워크를 무엇으로 선택하느냐만큼 중요한 것은 모델을 어떻게 설정하느냐입니다.
최대 배치 크기나 한 번에 처리할 수 있는 최대 토큰 수와 같은 파라미터 구성은 실제 성능에 예상보다 훨씬 큰 영향을 미칠 수 있습니다. 예를 들어, 배치 크기를 늘린다면 일반적으로 한 번에 처리할 수 있는 처리량(Throughput)이 증가합니다. 하지만 그만큼 첫 응답이 나오는 시간(TTFT)이나 토큰이 생성되는 속도(TPOT)는 느려질 수밖에 없습니다. 따라서 다양한 조건을 함께 살펴볼 필요가 있습니다. 한 가지 지표를 극대화하는 것이 아니라, 우리 서비스에 가장 중요한 기준은 무엇인지 설정하는 것이 중요합니다. 사용자가 첫 응답을 받는 데 걸리는 시간, 응답이 이어지는 속도, 또는 많은 양을 한꺼번에 처리하는지의 선택지 중에서 명확한 우선순위를 정한 후, 파라미터를 조정해야 합니다.
(자세한 내용은 아래 영문 블로그 글을 통해 확인하실 수 있습니다.)
[vLLM vs TensorRT-LLM] #2. Towards Optimal Batching for LLM Serving - The official SqueezeBits Tech blog
최적의 서빙 구성은 시나리오에 따라 달라집니다. 질문이 매우 길어 빠른 입력 처리가 중요한 프리필 집중(Prefill-heavy) 시나리오와 응답이 길어 생성 속도가 중요한 디코딩 집중(Decode-heavy) 시나리오는 각각 다른 구성값을 요구합니다. 기본 설정에 의존하거나 단일 파라미터만 조정하는 것보다, 반복적인 실험을 통해 더 효율적인 결과를 얻을 수 있습니다.
다만 최대 배치 크기는 vLLM과 TensorRT-LLM 모두에서 사용 가능한 수많은 파라미터 중 하나일 뿐입니다. 고급 스케줄링 전략, 메모리 최적화 및 기타 튜닝 옵션들은 성능에 큰 영향을 미칠 수 있어 별도의 철저한 실험을 고려해 볼 수 있습니다. vLLM을 선택하든 TensorRT-LLM을 선택하든, 반복 실험을 통해 이러한 광범위한 파라미터를 체계적으로 탐색하는 것이 진정한 고성능 LLM 서빙을 실현하는 핵심입니다.

파라미터 조정(Parameter Tuning)의 어려움

주요 지표에 영향을 미치는 LLM 서빙 파라미터 간의 상호작용을 일러스트 그래프로 표현했습니다.
주요 지표에 영향을 미치는 LLM 서빙 파라미터 간의 상호작용을 일러스트 그래프로 표현했습니다.
파라미터 조정은 움직이는 퍼즐을 푸는 것과 같습니다. 명확한 지표가 있더라도 단 하나의 최적의 설정값이 아닌 상황에 따라 다른 최적값을 가지고 있습니다. 각 서비스 시나리오는 고유한 특성을 가지고 있으며, 하드웨어 제약, 데이터셋 특성, 서빙 프레임워크 버전 모두가 최적 설정에 영향을 미칩니다. 한 환경에서 완벽하게 작동하던 설정이 다른 환경에서는 성능 저하를 일으킬 수 있기 때문에 이상적인 구성을 찾는 과정은 끝나지 않는 작업처럼 느껴질 수 있습니다.
또 다른 어려움은 체계적인 실험을 수행하는 데 있습니다. 배치 크기를 늘리거나 요청 속도를 조정했을 때 처리량이 어떻게 개선될지 가설을 세우는 것과 실제 환경에서 모든 파라미터 조합을 체계적으로 테스트하는 것은 전혀 다른 문제입니다. 실험 과정은 시간이 많이 걸리고 많은 리소스를 필요로 하며, 특히 팀 구성원들 간의 협업이 원활하지 않을 경우 더욱 그러합니다. 모든 구성원이 같은 방향을 유지하도록 하는 통합된 프레임워크가 없다면, 이들 그룹은 고립된 채 작업하게 되어 파라미터가 테스트되고 해석이 일관된 방식으로 이루어질 수 없습니다.
이러한 어려움에도 불구하고, 파라미터 미세 조정은 사용자 경험을 개선하고 비용 효율성을 유지하는 데 여전히 중요합니다. 요청 속도나 배치 크기를 조정하면 응답 시간을 크게 줄일 수 있지만, 예상치 못한 방식으로 리소스 사용률을 변화시킬 수도 있습니다. 마찬가지로 처리량에 과도하게 최적화하면, 빠른 초기 응답을 필요로 하는 특정 사용자의 지연 시간이 늘어날 수 있습니다. 이러한 상충관계의 균형을 맞추는 것은 섬세한 작업이며, 모델이 진화하거나 워크로드가 확장될 때 더욱 어려워집니다. 큐(queue) 길이 변경이나 특정 최적화 플래그 전환과 같은 미세 조정을 통해 성능을 개선할 수 있지만, 이러한 개선 효과가 지속되는지 신중하게 검증해야 합니다. 결국 반복적인 실험, 실증 데이터 수집, 팀원 간의 긴밀한 협업이 성능 목표에 맞는 최적의 파라미터 구성을 찾는 열쇠입니다. 이 과정의 복잡성을 이해하는 것이 성공적인 관리의 시작입니다.

Fits on Chips 솔루션

Fits on Chips 추론 서비스의 전체적인 모습입니다.
Fits on Chips 추론 서비스의 전체적인 모습입니다.
Fits on Chips는 하드웨어, 모델, 데이터셋 구성을 단순화하고 파라미터 조정부터 실험 실행, 결과 해석까지 전 과정을 가이드합니다. 이전에는 ML 엔지니어들이 스프레드시트나 기획 문서로 실험 내용을 정리하고, 각자 환경을 설정하거나 설정값을 동료들과 공유해야 하는 번거로움이 있었습니다. 리소스를 할당하고 다양한 제약 조건을 조율하는 것도 필요했습니다. 테스트 실행 후에는 결과를 검토하고 공유 문서를 수동으로 업데이트해야 했으며, 모든 구성원이 동일한 정보를 바탕으로 같은 이해를 공유하고 있는지 확인하기 어려웠습니다.
Fits on Chips를 사용하면 기획, 환경 구성, 리소스 할당, 결과 추적 등 모든 단계를 하나의 통합 인터페이스에서 관리할 수 있습니다. 이제 팀은 실시간으로 협업할 수 있으며, 전체 워크플로우가 간소화됩니다. 성능 및 비용 효율성 향상 결과도 모든 구성원에게 명확하게 공유됩니다. 실시간 업데이트를 통해 최신 정보가 유지되고, 정확한 의사소통으로 팀이 더 효과적으로 반복 작업을 수행할 수 있습니다.

1. 테스팅 자료 구성

Fits on Chips는 노드(하드웨어), 모델, 데이터셋을 등록할 수 있는 공동 작업 공간을 제공합니다. 우선, 제공된 도커(Docker) 이미지를 하드웨어에 설치한 뒤, 해당 장치를 플랫폼에 ‘노드(Node)’로 등록하기만 하면 준비가 끝납니다. 모델은 허깅페이스(Hugging Face)의 저장소 경로를 복사해서 양식에 붙여넣는 것만으로도 간단히 등록되며, 데이터셋 역시 동일한 방식으로 빠르게 추가할 수 있습니다.
이렇게 한 번 등록된 리소스들은 팀 전체가 즉시 공유할 수 있습니다. 덕분에 매번 파일을 주고받거나 설정을 반복할 필요가 없으며, 모든 팀원이 동일한 환경과 설정값 아래에서 실시간으로 일관되게 작업할 수 있습니다.

2. 파라미터 실험 설정

Fits on Chips에서 실험은 '프로젝트(projects)'로 구성됩니다. 각 프로젝트는 GPU + TensorRT-LLM 또는 GAUDI + vLLM과 같은 특정 하드웨어/소프트웨어 조합에 대응합니다. 프로젝트 내에서 여러 실험을 정의하고, 이전에 등록한 노드, 모델, 데이터셋을 선택할 수 있습니다.
이 단계에서는 요청 속도나 배치 크기 등 테스트할 파라미터를 결정합니다. 또한, 인터페이스에서 고정하거나 변경할 변수를 선택할 수 있습니다. Fits on Chips는 기본 설정값을 권장하지만, 개별 설정을 통해 더 나은 결과값을 만들고 시도해 보는 것도 권장합니다. 이러한 체계적인 접근 방식은 파라미터 조정의 시행착오를 줄이고, 실제로 지표를 개선하는 요소가 무엇인지 발견하는 데 도움을 줍니다.

3. 실험 시작

파라미터 조합을 결정했다면, 실험 시작은 간단합니다. 원하는 구성을 선택하고 ‘벤치마크(Benchmark)’ 버튼을 클릭하면 각 테스트 시퀀스를 실행하는 프로세스가 시작됩니다. 상태 표시(Status indicator)는 활성 벤치마크의 진행 상황을 보여주며, 원활하게 실행되고 있는지 또는 문제가 발생했는지 실시간 피드백을 제공합니다. 이를 통해 실험이 의도한 대로 실행되고 있는지에 대한 추측을 최소화할 수 있습니다. Fits on Chips는 이 정보를 단일 화면으로 통합하여 수동으로 트래킹할 필요를 없애줍니다.
또한 ‘플레이그라운드(Playground)’와 ‘모델 평가(Evaluation)’ 기능을 통해 모델이 얼마나 효율적으로 서빙될 수 있는지 테스트할 뿐만 아니라 실제 기능도 평가할 수 있습니다. 플레이그라운드 기능을 사용하면 실험의 파라미터 설정으로 구성된 도커 이미지에서 실행되는 LLM과 상호작용할 수 있습니다. 평가 기능을 통해서는 널리 채택된 LLM 평가 지표를 사용하여 LLM의 기능을 측정하고 비교할 수 있습니다. 이러한 기능들은 Fits on Chips에 완벽하게 통합되어 있습니다.
 

4. 인사이트 찾고 공유하기

실험이 완료되면, 플랫폼은 여러 실행 결과를 비교할 수 있는 시각화 툴을 제공합니다. 라인 플롯을 사용하여 TTFT, TPOT 또는 처리량과 같은 지표가 다양한 파라미터 설정에 따라 어떻게 변화하는지 확인할 수 있습니다. 병렬 좌표계(Parallel coordinates)도 제공되므로 여러 파라미터가 어떻게 상호작용하는지 다차원적으로 볼 수 있습니다. 이를 통해 '속도는 빠르지만 응답 시간이 조금 느려지는' 것처럼 서로 주고받는 관계를 쉽게 파악하고, 팀과 함께 논의할 수 있습니다. 모든 데이터가 플랫폼 내에 저장되므로, 인사이트 공유는 접근 권한을 부여하거나 시각화를 내보내는 것만큼 간단해집니다. 프로덕트 매니저는 특정 설정이 사용자 대면 지연 시간에 미치는 영향을 빠르게 확인할 수 있고, 엔지니어는 로그를 자세히 살펴보며 성능 병목 현상을 해결할 수 있습니다. 이러한 방식으로 Fits on Chips는 데이터를 중앙화할 뿐만 아니라 다음 단계에 대한 협업적 의사결정을 장려합니다.
테스팅 자료 구성, 파라미터 설정, 실험 실행, 결과 분석이라는 네 단계를 거치면서, 팀은 분산되고 수동적인 프로세스에서 보다 통합되고 반복 가능한 워크플로우로 전환할 수 있습니다. LLM 배포의 모든 복잡성을 제거하지는 못하더라도, Fits on Chips는 체계적으로 모델을 최적화하고 최소한의 마찰로 인사이트를 공유하려는 그룹에게 중요한 진전을 제공합니다.
 

결론 및 전망

최적화되고 효율적인 LLM 서빙을 구축하는 일은 복잡하고 까다로운 여정입니다. 하지만 기업이 외부 솔루션에 의존하지 않고 자체 언어 모델을 직접 배포하고 운영하고자 한다면, 이는 비즈니스의 가능성을 극대화할 수 있는 가치 있는 결정이라고 생각합니다.
이 글을 통해 우리는 미세 조정의 어려움과 적합한 서빙 프레임워크 선택의 필요성, 그리고 ‘Fits on Chips’와 같은 통합 플랫폼이 복잡하고 번거로운 작업을 어떻게 단순화하는지 살펴보았습니다. 하나의 솔루션으로 LLM 배포의 모든 어려움을 완전히 해소할 수는 없지만, 체계적인 실험 환경과 원활한 팀 협업이 뒷받침된다면 충분히 안정적이고 우수한 성능을 구현할 수 있습니다.
앞으로 이 분야는 최첨단 GPU 또는 TPU 아키텍처 같은 새로운 하드웨어와 더욱 빠르고 유연한 확장을 지원하는 LLM 프레임워크의 발전과 함께 계속 진화할 것입니다. 또한, 팀 내 다양한 담당자들이 함께 실험을 관리하고 결과를 해석할 수 있도록 하는 ‘협업 기능’이 더욱 중요해질 것입니다. 데이터 규모가 커지고 활용 분야가 다양해짐에 따라, 유의미한 전략을 도출하기 위한 강력한 데이터 분석 및 시각화 기능도 점점 더 중요해질 것이라고 생각합니다.
Fits on Chips는 LLM 서빙을 이제 막 시작했거나 시행착오를 겪고 있는 팀에게 유용합니다. 파라미터 조정을 체계적으로 개선하고 결과를 원활하게 공유함으로써, 성능과 비용 모두를 만족시키는 최적의 구성을 찾을 수 있습니다. 지속적인 학습과 적응이 여전히 성공의 열쇠인 만큼, 직접 실험하고 반복하며 LLM의 잠재력을 최대한 끌어올려 보시기 바랍니다.
Fits on Chips를 지금 사용해 보세요!
아래 링크를 클릭하여 무료로 살펴보실 수 있습니다.
Share article

스퀴즈비츠