init 모듈

init 모듈 (Init)

examples/scale_out 디렉토리의 __init__.py 파일에 대한 문서 페이지입니다. 실제로는 빈 파일이므로, 이 페이지에서는 scale_out 예제 디렉토리에 어떤 것들이 들어 있는지 정리해 둡니다.

출처: 문서

원본: https://github.com/vllm-project/vllm/blob/main/examples/scale_out/init.py

본문

examples/scale_out 디렉토리는 스케일 아웃(scale-out) 서빙과 관련된 예제 모음입니다. vLLM의 분리형(disaggregated)/확장 서빙 흐름을 직접 실습해 볼 수 있는 클라이언트들이 있습니다.

주요 예제:

  • example_mm_serve.py — 멀티모달 요청을 먼저 렌더(전처리)한 뒤 생성(generate)하는 2단계 분리형 서빙 왕복을 보여줍니다. /v1/chat/completions/render로 토큰 ID와 직렬화된 텐서 피처로 전처리하고, /inference/v1/generate로 추론합니다. 렌더 응답을 클라이언트 측 변환 없이 그대로 generate에 넘깁니다.
  • token_generation_client.py — 토큰 인/토큰 아웃(token-in/token-out) 서버를 호출하는 예제입니다. chat_template으로 토큰 ID를 만든 뒤 /inference/v1/generate로 요청하고 결과를 디코드합니다. vllm serve Qwen/Qwen3-0.6B --enable-scale-out으로 서버를 띄우면 됩니다.

이 두 예제 모두 --enable-scale-out 플래그로 서버를 시작해야 동작합니다.

# examples/scale_out/__init__.py 는 패키지 초기화를 위한 빈 파일입니다.

스케일 아웃 서빙이란?

스케일 아웃(scale-out) 서빙은 전통적인 단일 인스턴스 서빙과 달리, 토큰을 입력받아 토큰을 출력하는 토큰 인/토큰 아웃 인터페이스를 바탕으로 서로 다른 엔진 단계를 분리·확장할 수 있는 구조입니다. 렌더(전처리)와 생성(추론)이 별도 엔드포인트로 나뉘어 있어, 멀티모달 요청의 전처리를 실제 추론과 분리해 실행하고 스케일을 따로 조절할 수 있습니다.

examples/scale_out 디렉토리는 바로 이 구조를 직접 실습하기 위한 클라이언트 예제들을 제공합니다. 이 __init__.py 자체는 내용이 없는 패키지 표식이므로, 실제 코드는 위 두 예제 파일에서 확인하세요.

스케일 아웃을 시작할 때 참고할 점:

  • 서버를 먼저 --enable-scale-out 플래그로 시작해야 합니다. 이 플래그가 렌더와 생성 엔드포인트(/v1/chat/completions/render, /inference/v1/generate)를 활성화합니다.
  • example_mm_serve.py는 멀티모달 이미지 요청을 렌더한 결과를 그대로 generate에 넘겨 두 엔드포인트가 클라이언트 측 변환 없이 이어지는 것을 보여줍니다.
  • token_generation_client.py는 텍스트만 쓸 때의 가장 단순한 형태로, 채팅 템플릿으로 만든 토큰 ID를 그대로 서버에 보냅니다.

두 예제 모두 OpenAI 호환 클라이언트나 raw HTTP 요청만으로 동작하므로, 스케일 아웃 토폴로지를 직접 만져 보기 전에 먼저 실행해 보기 좋은 출발점입니다.

더 알아보기 (Learn more)