서론

요청량이 많지 않고, 단순히 “모델 하나 띄워서 한두 개의 요청만 처리”한다면 transformers + FastAPI(또는 Flask) 정도면 충분

  • 여기서 “모델 띄워주는 역할”은 Hugging Face의 transformers 라이브러리가 담당

예시

# main.py
from fastapi import FastAPI
from transformers import pipeline

app = FastAPI()

# 1) transformers 파이프라인으로 모델 로드
generator = pipeline(
    "text-generation",
    model="gpt2",            # 원하는 모델 지정
    device=0                  # GPU가 있다면 0, CPU만 있으면 -1
)

@app.post("/generate")
async def generate(payload: dict):
    prompt = payload["prompt"]
    # 2) transformers로 텍스트 생성
    outputs = generator(prompt, max_new_tokens=50)
    return {"choices": outputs}

 

또는 OpenAI 등 외부 API 사용 시:

  • 자체 GPU 없이 “OpenAI API”나 “Anthropic API”처럼 원격으로 모델을 호출한다면 vLLM은 필요 없다.

 

vLLM

  • vLLM이 빛을 발하는 순간:
    1. 자체 GPU를 보유하고 있고,
    2. 높은 동시 처리량(수십·수백 TPS)과
    3. 낮은 지연(Latency)이 요구될 때
    4. 동적 배칭, 요청 스케줄링, 스트리밍 같은 최적화 로직을
      직접 구현하지 않고 바로 활용하고 싶을 때

이런 조건이 모두 맞아떨어질 때 vLLM이 “생산(Production)급”으로 가치를 발휘합니다.

 
 
 
반응형

'Programming > LLM RAG' 카테고리의 다른 글

vector db  (1) 2025.06.14
Pinecone  (0) 2025.06.13
LangChain/LangGraph  (0) 2025.06.13
TensorRT-LLM  (1) 2025.06.13
SGLang  (0) 2025.06.13

+ Recent posts