Ray 개요

Ray 개요 (Overview)

분산 시스템 전문가가 아니어도 병렬·분산 컴퓨팅을 쉽게 쓸 수 있게 해 주는 프레임워크가 바로 Ray예요. AI와 파이썬 애플리케이션을 확장하기 위한 오픈소스 통합 프레임워크로, 병렬 처리를 위한 컴퓨팅 레이어를 제공해요. 여러 컴포넌트로 개별 분산 워크플로와 end-to-end 머신러닝 워크플로를 실행하는 복잡도를 크게 줄여 줘요.

출처: Ray Overview

Ray가 제공하는 것

  • 확장 가능한 라이브러리: 데이터 전처리, 분산 학습, 하이퍼파라미터 튜닝, 강화학습, 모델 서빙 같은 일반적인 머신러닝 작업용.
  • 파이썬적 분산 컴퓨팅 프리미티브: 파이썬 애플리케이션을 병렬화·확장하기 위한 프리미티브.
  • 통합·유틸리티: Kubernetes, AWS, GCP, Azure 같은 기존 도구·인프라와 Ray 클러스터를 통합·배포하는 통합과 유틸리티.

누가 어떤 이점을 얻나

데이터 사이언티스트·ML 실무자에게는 인프라 전문성 없이 작업을 확장할 수 있게 해 줘요.

  • 여러 노드·GPU에 걸쳐 ML 워크로드를 쉽게 병렬화·분산.
  • 네이티브·확장 가능한 통합으로 ML 생태계 활용.

ML 플랫폼 빌더·ML 엔지니어에게는:

  • 확장 가능하고 견고한 ML 플랫폼을 만들 수 있는 컴퓨팅 추상화 제공.
  • ML 생태계 온보딩·통합을 단순화하는 통합 ML API 제공.
  • 같은 파이썬 코드가 노트북에서 대형 클러스터까지 매끄럽게 확장되게 해 개발·프로덕션의 마찰 감소.

분산 시스템 엔지니어에게는 Ray가 핵심 프로세스를 자동 처리해요.

  • 오케스트레이션: 분산 시스템의 다양한 컴포넌트 관리.
  • 스케줄링: 태스크가 언제·어디서 실행될지 조정.
  • 장애 허용: 불가피한 실패 지점에도 태스크가 완료되도록 보장.
  • 오토스케일링: 동적 수요에 맞춰 할당된 리소스 양 조절.

Ray로 할 수 있는 일

사람들과 조직·기업이 Ray로 자신의 AI 애플리케이션을 만들 때 쓰는 일반적인 ML 워크로드예요.

  • CPU·GPU에서의 배치 추론
  • 모델 서빙
  • 대규모 모델 분산 학습
  • 병렬 하이퍼파라미터 튜닝 실험
  • 강화학습
  • ML 플랫폼

Ray 프레임워크

Ray의 통합 컴퓨팅 프레임워크는 세 개의 레이어로 구성돼요.

  1. Ray AI Libraries – ML 애플리케이션을 위한 확장 가능·통일된 툴킷을 제공하는 오픈소스 파이썬 도메인 특화 라이브러리 세트.
  2. Ray Core – 파이썬 애플리케이션을 확장하고 ML 워크로드를 가속하는 범용 분산 컴퓨팅 라이브러리.
  3. Ray Clusters – 공통 Ray 헤드(head) 노드에 연결된 워커 노드들의 집합. 고정 크기거나 수요에 따라 오토스케일업·다운할 수 있어요.

더 알아보기