Flide는 하나의 입력에 질문이 여러 개 붙을 때 공유 입력을 한 번만 계산하므로 매우 빠름. 질문이 하나여도 모델 크기와 입력 길이에 따라 최대 3배 빨라질 수 있음.
아쉽게도 실무에서는 반대로 여러 입력에 같은 질문을 하는 경우가 훨씬 유용함.
Laya를 로컬에서 실행할 때 Flide 적용 전후 성능 수치가 있는지 궁금함.
로컬 모델 30개 이상을 지원하며, Flide 적용 전후 성능 비교는 README에서 확인할 수 있음. Laya는 아직 지원하지 않지만, 앞으로 몇 차례의 버전 업데이트 안에 지원하고 싶음.
이 작업에 새 추론 엔진 전체가 필요한 건 아님. 의사결정 모델 실험용으로 vLLM을 수정해서 잘 사용했음.
공유 문맥은 재사용하고 질문만 다시 계산하도록 했으며, 질문이 더 길면 질문을 앞에 놓고 자주 바뀌는 문맥과 답변 선택지 토큰을 뒤에 배치함. 적절한 워크로드에서는 여기서 제시한 것과 대략 비슷한 속도 향상을 얻었음.
전체 어텐션에서는 그 방식이 잘 작동한다는 데 동의함. 하지만 Qwen3.5의 Gated DeltaNet에 대해 vLLM은 블록 경계에서만 캐싱을 지원하므로 새 엔진을 개발함.
CUDA 그래프 사용도 최적화했으며, 어떤 부하에서도 답변을 비트 단위까지 동일하게 유지할 수 있음.
내 데이터셋은 동일한 입력에 여러 의사결정 질문을 적용하는 구조라 이 도구를 써보고 싶었음. 어떤 로컬 모델부터 써볼지는 아직 정하지 못함.
Flide 팀에서 개발하고 있음. Jev 계열 의사결정 모델의 추론을 정확성을 유지하면서 vLLM과 SGLang보다 최대 9.5배 빠르게 만들기 위해 Flide를 처음부터 개발함.
소스 코드는 https://github.com/OmniJev/Flide에 공개했으며, 피드백과 아이디어를 기다리고 있음.
구체적으로 어떤 조건에서 9.5배 빨라지는지 궁금함. 단일 사용자가 토큰 하나나 의사결정 하나를 추론하는 경우처럼 vLLM과 속도가 비슷한 조건도 있는지?
가장 큰 속도 향상은 어떻게 달성했는지? “정확성을 유지한다”는 표현은 타협이 없다는 뜻처럼 들리는데, 실제로 절충해야 하는 부분은 없는지? 성능을 최대한 활용하려면 문맥을 특정 방식으로 구성해야 하는지도 궁금함.
이걸 쓰려면 모델을 직접 호스팅해야 하는지? 그렇다면 3050 카드에서는 어떤 모델을 돌릴 수 있는지?
Flide는 자체 호스팅 방식으로, 본인의 GPU에서 모델을 서빙함. 3050에서도 0.8B 모델은 충분히 실행 가능하고 긴 입력을 처리할 여유도 있음. Linux에서만 테스트했으므로 Windows에서는 WSL2가 필요할 수 있음.