vLLM API Server Contract

마지막 수정:

inferencevllmapi-serverdata-contract

vLLM 분석의 첫 경계는 API server와 engine core 사이다.

API server는 GPU 계산을 직접 다루지 않는다. 대신 외부 요청을 engine이 이해할 수 있는 내부 요청으로 바꾼다.

external API request
  -> prompt / messages
  -> sampling params
  -> request id
  -> internal engine request

반대 방향도 중요하다.

engine output
  -> token ids
  -> text chunks
  -> finish reason
  -> streaming response / final response

이 카드에서 볼 것은 기능 목록이 아니라 data contract다.

API server가 engine core에 넘기는 것은 무엇인가?
engine core가 API server에 돌려주는 것은 무엇인가?
token id와 text 변환은 어느 경계에서 일어나는가?
streaming response는 어떤 단위로 만들어지는가?

확인

  • API server가 GPU worker와 직접 통신하지 않는 이유는 무엇인가?
  • 외부 request와 engine 내부 request의 데이터 형식은 어떻게 다른가?
  • streaming response를 만들려면 engine output에 어떤 정보가 필요할까?