AWS Neuron

AWS Trainium 및 AWS Inferentia에서 AI 및 딥 러닝을 최적화하기 위한 SDK

AWS Neuron이란 무엇인가요?

AWS Neuron은 AWS Inferentia 및 AWS Trainium 기반 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스에서 딥 러닝 및 생성형 AI 워크로드를 실행하는 데 사용되는 소프트웨어 개발 키트(SDK)입니다. 여기에는 컴파일러, 런타임, 훈련 및 추론 라이브러리, 모니터링, 프로파일링 및 디버깅을 위한 개발자 도구가 포함됩니다. Neuron은 딥 러닝 및 AI 모델 구축 및 배포, 최고 성능 및 최저 비용을 달성하기 위한 최적화, 모델 동작에 대한 심층적인 인사이트 확보 등 엔드 투 엔드 기계 학습(ML) 개발 수명 주기를 지원합니다.

배경 패턴

인기 있는 ML 프레임워크 및 라이브러리와의 기본 통합

Neuron은 PyTorch 및 JAX 그리고 Hugging Face Optimum Neuron, PyTorch Lightning, AXLearn과 같은 필수 ML 라이브러리와 기본적으로 통합됩니다. 또한 Neuron은 StableHLO 및 GSPMD를 포함한 OpenXLA를 지원하므로 PyTorch/XLA 및 JAX 개발자가 Neuron의 Inferentia 및 Trainium에 대한 컴파일러 최적화를 사용할 수 있습니다. Neuron을 사용하면 Amazon SageMaker, Amazon EKS, Amazon ECS, AWS ParallelCluster, AWS Batch와 같은 서비스뿐 아니라 Ray(Anyscale), Domino Data Lab, Datadog, Weights & Biases와 같은 서드 파티 서비스와 함께 Trainium 및 Inferentia 기반 인스턴스를 사용할 수 있습니다.

배경 패턴

분산 훈련 및 추론 라이브러리

Neuron에는 오픈 소스 PyTorch 라이브러리인 NxD Training 및 NxD Inference를 사용하는 분산 훈련 및 추론을 위한 기본 최적화 기능이 포함되어 있습니다. NxD Training은 대규모 분산 훈련을 단순화 및 최적화하고 다양한 모델 아키텍처, 병렬 처리 전략, 훈련 워크플로를 지원합니다. NxD Training은 온디바이스 샘플링, QKV 가중치 결합, 연속 배칭, 추측 디코딩, 동적 버킷팅, 분산 추론과 같은 주요 기능을 사용하여 최적화된 모델 추론을 위한 포괄적인 솔루션을 제공합니다. 또한 NxD Inference는 vLLM, Hugging Face TGI와 같은 서빙 솔루션과도 통합됩니다. 둘 다 서로 다른 모델 아키텍처를 위한 모델 허브를 포함합니다.

배경 패턴

고급 응용 과학 기능

Neuron은 과학자와 연구자가 Trainium 및 Inferentia를 기반으로 오픈 소스 AI 연구 및 혁신의 경계를 넓힐 수 있도록 지원하는 몇 가지 응용 과학 기능을 갖추고 있습니다. Neuron Kernel Interface(NKI)는 Trainium 및 Inferentia에서 사용할 수 있는 하드웨어 프리미티브 및 지침에 대한 직접적인 액세스 권한을 제공하여 연구진이 최적의 성능을 위해 컴퓨팅 커널을 구축하고 조정할 수 있도록 합니다. 이는 일반적으로 사용되는 Triton과 같은 구문과 타일 수준 시멘틱을 도입한 Python 기반 프로그래밍 환경입니다. 연구진은 NKI를 사용하여 새로운 기능, 최적화 및 과학 혁신으로 딥 러닝 모델을 개선할 수 있습니다. Neuron의 사용자 지정 C++ 연산자를 사용하면 개발자가 Inferentia 및 Trainium에 최적화된 자체 연산자를 만들어 SDK의 기능을 확장할 수 있습니다.

배경 패턴

강력한 개발자 도구

AWS Neuron SDK는 AWS Inferentia 및 Trainium 기반 EC2 인스턴스에서 딥 러닝 모델의 모니터링, 관리, 최적화를 위한 심층적인 인사이트를 제공하는 포괄적인 도구 세트를 제공합니다. 하드웨어 리소스, 모델 실행, 시스템 세부 정보를 모니터링하기 위한 neuron-top, neuron-monitor, Neuron Sysfs와 같은 유틸리티를 제공합니다. Kubernetes 및 EKS 기반 컨테이너식 애플리케이션의 경우, Neuron은 Amazon CloudWatch 통합 및 기타 인기 있는 관찰성 도구(예: Data Dog, Weights & Biases)를 통해 모니터링을 간소화합니다. 또한 neuron-profile 도구는 단일 노드 및 분산 애플리케이션 모두에서 성능 병목 현상을 식별하고 해결하는 데 도움이 되며, 인기 있는 ML 프레임워크에 대한 기본 프로파일링 기능을 제공합니다.

배경 패턴

시작하기

Neuron 딥 러닝 Amazon 머신 이미지(Neuron DLAMI)는 Neuron SDK, 인기 있는 프레임워크, 유용한 라이브러리로 사전 구성되어 제공되므로 AWS Inferentia에서 빠르게 훈련 및 추론 실행을 시작할 수 있습니다. Neuron DLAMI는 워크플로를 간소화하고 성능을 최적화하여 설정 복잡성을 제거하므로 AI 모델을 구축하고 배포하는 데 집중할 수 있습니다. Neuron DLAMI를 시작하세요.

Trainium 및 Inferentia에 최적화된 프레임워크와 함께 사전 구성된 AWS Neuron 딥 러닝 컨테이너(Neuron DLC)를 사용하여 모델을 빠르게 배포할 수 있습니다. 사용자 지정 솔루션의 경우 자체 컨테이너를 구축하고 Neuron 디바이스 플러그인, Neuron 스케줄러 확장 및 헬름 차트와 같은 Kubernetes 기능을 활용하세요. 확장 가능한 배포를 위해 Amazon EKS, AWS Batch, Amazon ECS와 같은 AWS 서비스와 원활하게 통합됩니다. Neuron DLC를 시작하세요.

Optimum Neuron은 Hugging Face 트랜스포머와 AWS Neuron SDK를 연결하여 Trainium 및 Inferentia를 위한 표준 Hugging Face API를 제공합니다. AI 워크플로의 대규모 모델 훈련 및 배포에 대한 지원을 포함하여 훈련 및 추론을 위한 솔루션을 제공합니다. Amazon SageMaker와 사전 구축된 딥 러닝 컨테이너를 지원하는 Optimum Neuron은 ML용 Trainium 및 Inferentia의 사용을 간소화합니다. 이 통합을 통해 개발자는 익숙한 Hugging Face 인터페이스로 작업하면서 트랜스포머 기반 프로젝트에 Trainium과 Inferentia를 활용할 수 있습니다. Hugging Face Optimum Neuron를 시작하세요.

Amazon SageMaker JumpStart를 사용하면 Neuron을 사용하여 모델을 훈련하고 배포할 수 있습니다. JumpStart는 Meta의 Llama 모델 제품군과 같은 인기 모델을 미세 조정하고 배포할 수 있도록 지원합니다. SageMaker JumpStart를 시작하세요.