대규모 모델 추론 딥 러닝 컨테이너 및 DeepSpeed ​​PlatoBlockchain 데이터 인텔리전스를 사용하여 Amazon SageMaker에 BLOOM-176B 및 OPT-30B를 배포하세요. 수직 검색. 일체 포함.

대규모 모델 추론 Deep Learning Containers 및 DeepSpeed를 사용하여 Amazon SageMaker에 BLOOM-176B 및 OPT-30B 배포

지난 몇 년 동안 딥 러닝 분야에서 급속한 발전이 있었습니다. NVIDIA 및 Amazon의 최신 액셀러레이터와 같이 하드웨어가 향상되었지만 고급 기계 학습(ML) 실무자는 여전히 자연어 처리(NLP)와 같은 애플리케이션을 위한 대규모 딥 러닝 모델을 배포하는 문제에 정기적으로 직면합니다.

이전 게시물에서 우리는 기능 및 구성 가능한 설정 in Amazon SageMaker 모델 배포 이렇게 하면 이러한 대형 모델을 더 쉽게 추론할 수 있습니다. 오늘 우리는 새로운 아마존 세이지 메이커 몇 분 만에 대규모 모델 추론을 시작하는 데 사용할 수 있는 DLC(딥 러닝 컨테이너). 이것 DLC DeepSpeed ​​및 Hugging Face Accelerate와 같은 모델 병렬 추론을 위해 가장 널리 사용되는 오픈 소스 라이브러리를 패키지로 제공합니다.

이 게시물에서는 새로운 SageMaker 대형 모델 추론 DLC를 사용하여 가장 인기 있는 대형 NLP 모델 두 가지를 배포합니다. BigScience's 블룸-176B 그리고 메타의 OPT-30B Hugging Face 저장소에서. 특히 DeepSpeed의 DJL(Deep Java Library) 서비스 및 텐서 병렬 처리 기술을 사용하여 텍스트 생성 사용 사례에서 토큰당 0.1초의 대기 시간을 달성합니다.

전체 예제 노트북은 다음에서 찾을 수 있습니다. GitHub 저장소.

대규모 모델 추론 기술

언어 모델은 최근 크기와 인기가 폭발적으로 증가했습니다. Hugging Face와 같은 모델 동물원에서 쉽게 액세스할 수 있고 분류 및 텍스트 생성과 같은 NLP 작업에서 향상된 정확도와 성능을 통해 실무자들은 점점 더 이러한 대형 모델에 접근하고 있습니다. 그러나 대형 모델은 너무 커서 단일 가속기의 메모리에 맞지 않는 경우가 많습니다. 예를 들어, BLOOM-176B 모델에는 350GB 이상의 가속기 메모리가 필요할 수 있으며, 이는 현재 사용 가능한 하드웨어 가속기의 용량을 훨씬 초과합니다. 이를 위해서는 DeepSpeed ​​및 Hugging Face Accelerate와 같은 라이브러리의 모델 병렬 기술을 사용하여 추론을 위해 여러 가속기에 모델을 배포해야 합니다. 이 포스트에서 우리는 SageMaker 대형 모델 추론 컨테이너 이 두 오픈 소스 라이브러리를 사용하여 대기 시간 및 처리량 성능을 생성하고 비교합니다.

DeepSpeed와 Accelerate는 다양한 기술을 사용하여 추론을 위해 대규모 언어 모델을 최적화합니다. 주요 차이점은 DeepSpeed의 최적화된 커널 사용. 이러한 커널은 모델의 계산 그래프에서 병목 현상을 줄임으로써 추론 대기 시간을 크게 개선할 수 있습니다. 최적화된 커널은 개발하기 어려울 수 있으며 일반적으로 특정 모델 아키텍처에 따라 다릅니다. DeepSpeed는 이러한 최적화된 커널을 통해 OPT 및 BLOOM과 같은 인기 있는 대형 모델을 지원합니다. 그에 반해 Hugging Face의 Accelerate 라이브러리는 작성 시점에 최적화된 커널을 포함하지 않습니다. 결과 섹션에서 논의한 것처럼 이 차이는 DeepSpeed가 Accelerate에 비해 많은 성능 우위를 차지합니다.

DeepSpeed와 Accelerate의 두 번째 차이점은 모델 병렬 처리 유형입니다. Accelerate는 파이프라인 병렬 처리를 사용하여 모델의 숨겨진 레이어 간에 모델을 분할하는 반면 DeepSpeed는 텐서 병렬 처리를 사용하여 레이어 자체를 분할합니다. 파이프라인 병렬 처리는 더 많은 모델 유형을 지원하고 더 큰 배치 크기가 사용될 때 처리량을 개선할 수 있는 유연한 접근 방식입니다. Tensor 병렬 처리는 모델 레이어가 여러 장치에 분산될 수 있기 때문에 GPU 간의 더 많은 통신이 필요하지만 여러 GPU를 동시에 사용하여 추론 지연 시간을 개선할 수 있습니다. 병렬 처리 기술에 대한 자세한 내용은 모델 병렬화 소개모델 병렬성.

솔루션 개요

대규모 언어 모델을 효과적으로 호스팅하려면 다음 주요 영역에서 기능과 지원이 필요합니다.

  • 솔루션 구축 및 테스트 – ML 개발의 반복적인 특성을 감안할 때 빠른 실패 기능을 포함하여 이러한 모델이 호스팅될 때 추론 엔드포인트가 어떻게 작동하는지 구축, 신속하게 반복 및 테스트할 수 있는 기능이 필요합니다. 이러한 모델은 일반적으로 p4dn 또는 g5와 같은 더 큰 인스턴스에서만 호스팅할 수 있으며 모델의 크기를 감안할 때 추론 인스턴스를 가동하고 테스트 반복을 실행하는 데 시간이 걸릴 수 있습니다. 로컬 테스트에는 일반적으로 테스트할 비슷한 크기의 인스턴스가 필요하고 이러한 모델을 얻기가 쉽지 않기 때문에 제약이 있습니다.
  • 대규모 배포 및 실행 – 모델 파일을 추론 인스턴스에 로드해야 하며, 이는 크기가 주어진 경우 자체적으로 문제를 나타냅니다. Bloom-176B의 예로 Tar / Un-Tar는 생성하는 데 약 1시간이 걸리고 로드하는 데 또 한 시간이 걸립니다. 모델 파일에 쉽게 액세스할 수 있는 대체 메커니즘이 필요합니다.
  • 모델을 싱글톤으로 로드 – 다중 작업자 프로세스의 경우 모델이 한 번만 로드되도록 해야 경쟁 조건이 발생하고 불필요한 리소스를 추가로 소비하지 않습니다. 이 게시물에서는 다음에서 직접 로드하는 방법을 보여줍니다. 아마존 단순 스토리지 서비스 (아마존 S3). 그러나 이것은 DJL의 기본 설정을 사용하는 경우에만 작동합니다. 또한 끝점의 확장은 몇 분 안에 회전할 수 있어야 하므로 모델을 로드하고 배포하는 방법을 재고해야 합니다.
  • 샤딩 프레임워크 – 이러한 모델은 일반적으로 텐서 병렬 메커니즘 또는 일반적인 샤딩 기술로 파이프라인 샤딩에 의해 수행되어야 하며 텐서 샤딩 위에 구축된 ZeRO 샤딩과 같은 고급 개념이 있습니다. 샤딩 기술에 대한 자세한 내용은 다음을 참조하십시오. 모델 병렬성. 이를 위해 NIVIDIA, DeepSpeed ​​등의 다양한 조합과 프레임워크를 사용할 수 있습니다. 이를 위해서는 BYOC를 테스트하거나 1P 컨테이너를 사용하고 솔루션을 반복하고 벤치마킹 테스트를 실행할 수 있는 기능이 필요합니다. 비동기, 서버리스 등과 같은 다양한 호스팅 옵션을 테스트할 수도 있습니다.
  • 하드웨어 선택 – 하드웨어 선택은 앞서 언급한 모든 지점과 추가 트래픽 패턴, 사용 사례 요구 사항 및 모델 크기에 따라 결정됩니다.

이 게시물에서는 DeepSpeed의 최적화된 커널과 텐서 병렬 처리 기술을 사용하여 SageMaker에서 BLOOM-176B 및 OPT-30B를 호스팅합니다. 또한 Accelerate의 결과를 비교하여 최적화된 커널과 텐서 병렬 처리의 성능 이점을 보여줍니다. DeepSpeed ​​및 Accelerate에 대한 자세한 내용은 다음을 참조하십시오. DeepSpeed ​​추론: 전례 없는 규모로 변압기 모델의 효율적인 추론 가능DeepSpeed ​​및 Accelerate를 통한 놀랍도록 빠른 BLOOM 추론.

이 예에서는 모델 제공 솔루션으로 DJLServing을 사용합니다. DJLServing은 프로그래밍 언어에 구애받지 않는 DJL(Deep Java Library)로 구동되는 고성능 범용 모델 서비스 솔루션입니다. DJL 및 DJLServing에 대해 자세히 알아보려면 DJLServing 및 DeepSpeed ​​모델 병렬 추론을 사용하여 Amazon SageMaker에 대규모 모델 배포.

최적화된 커널로 인해 정밀도가 변경되고 계산 그래프가 수정되어 이론적으로 모델 동작이 변경될 수 있다는 점은 주목할 가치가 있습니다. 이것은 때때로 추론 결과를 변경할 수 있지만 이러한 차이가 모델의 기본 평가 메트릭에 실질적으로 영향을 미칠 것으로 예상하지 않습니다. 그럼에도 불구하고 실무자는 이러한 커널을 사용할 때 모델 출력이 예상대로인지 확인하는 것이 좋습니다.

다음 단계는 DJLServing 및 SageMaker 대형 모델 추론 컨테이너를 사용하여 SageMaker에서 BLOOM-176B 모델을 배포하는 방법을 보여줍니다. 전체 예제는 다음 페이지에서도 볼 수 있습니다. GitHub 저장소.

DJLServing SageMaker DLC 이미지 사용

지역을 노트북을 실행 중인 특정 지역으로 바꾼 후 DJLServing SageMaker DLC 이미지를 사용하려면 다음 코드를 사용하십시오.

763104351884.dkr.ecr..amazonaws.com/djl-inference:0.19.0-deepspeed0.7.3-cu113
# example uri might be like 763104351884.dkr.ecr.us-east-1.amazonaws.com/djl-inference:0.19.0-deepspeed0.7.3-cu113

모델 파일 만들기

먼저 라는 파일을 생성합니다. serving.properties 한 줄의 코드만 포함합니다. 이것은 DJL 모델 서버가 DeepSpeed ​​엔진을 사용하도록 지시합니다. 파일에는 다음 코드가 포함되어 있습니다.

engine=DeepSpeed

serving.properties 모델별 구성을 구성하는 데 사용되는 DJLServing에서 정의한 파일입니다.

다음으로 우리는 우리의 model.py 모델을 로드한 다음 제공하는 데 필요한 코드를 정의하는 파일입니다. 우리 코드에서 우리는 TENSOR_PARALLEL_DEGREE 환경 변수(기본값은 1). 이것은 텐서 병렬 모듈이 배포되는 장치의 수를 설정합니다. DeepSpeed는 BLOOM 모델용을 포함하여 몇 가지 기본 제공 파티션 정의를 제공합니다. 지정하여 사용합니다. replace_methodrelpace_with_kernel_inject. 맞춤형 모델이 있고 DeepSpeed가 효과적으로 분할해야 하는 경우 다음을 변경해야 합니다. relpace_with_kernel_injectfalse 그리고 추가 injection_policy 런타임 파티션이 작동하도록 합니다. 자세한 내용은 추론을 위한 초기화. 이 예에서는 DeepSpeed에서 사전 분할된 BLOOM 모델을 사용했습니다.

둘째, model.py 파일에서 엔드포인트가 회전된 후 Amazon S3에서도 모델을 로드합니다. 모델이 로드됩니다. /tmp SageMaker가 매핑하기 때문에 컨테이너의 공간 /tmp ~로 아마존 엘라스틱 블록 스토어 엔드포인트 생성 파라미터를 지정할 때 탑재되는 (Amazon EBS) 볼륨 VolumeSizeInGB. 볼륨 인스턴스와 함께 사전 구축된 p4dn과 같은 인스턴스의 경우 계속해서 활용할 수 있습니다. /tmp 컨테이너에. 다음 코드를 참조하십시오.

from djl_python import Input, Output
import os
import deepspeed
import torch
import torch.distributed as dist
import sys
import subprocess
import time
from glob import glob
from transformers import pipeline, AutoModelForCausalLM, AutoTokenizer
from transformers.models.opt.modeling_opt import OPTDecoderLayer

predictor = None

def check_config():
    local_rank = os.getenv('LOCAL_RANK')
    
    if not local_rank:
        return False
    return True
    
def get_model():

    if not check_config():
        raise Exception("DJL:DeepSpeed configurations are not default. This code does not support non default configurations") 
    
    tensor_parallel = int(os.getenv('TENSOR_PARALLEL_DEGREE', '1'))
    local_rank = int(os.getenv('LOCAL_RANK', '0'))
    model_dir = "/tmp/model"
    bucket = os.environ.get("MODEL_S3_BUCKET")
    key_prefix = os.environ.get("MODEL_S3_PREFIX")
    print(f"rank: {local_rank}")
    if local_rank == 0:
        if f"{model_dir}/DONE" not in glob(f"{model_dir}/*"):
            print("Starting Model downloading files")
            try:
                proc_run = subprocess.run(
                    ["aws", "s3", "cp", "--recursive", f"s3://{bucket}/{key_prefix}", model_dir]
                )
                print("Model downloading finished")
                # write file when download complete. Could use dist.barrier() but this makes it easier to check if model is downloaded in case of retry
                with open(f"{model_dir}/DONE", "w") as f:
                    f.write("download_complete")
                    
                proc_run.check_returncode() # to throw the error in case there was one
                
            except subprocess.CalledProcessError as e:
                print ( "Model download failed: Error:nreturn code: ", e.returncode, "nOutput: ", e.stderr )
                raise # FAIL FAST  
                               
    dist.barrier()
                
    
    tokenizer = AutoTokenizer.from_pretrained(model_dir)
    
    # has to be FP16 as Int8 model loading not yet supported
    with deepspeed.OnDevice(dtype=torch.float16, device="meta"):
        model = AutoModelForCausalLM.from_config(
            AutoConfig.from_pretrained(model_dir), torch_dtype=torch.bfloat16
        )
    model = model.eval()
    
    model = deepspeed.init_inference(
        model,
        mp_size=tensor_parallel,
        dtype=torch.int8,
        base_dir = model_dir,
        checkpoint=os.path.join(model_dir, "ds_inference_config.json"),
        replace_method='auto',
        replace_with_kernel_inject=True
    )

    model = model.module
    dist.barrier()
    return model, tokenizer

DJLServing은 다음에 정의된 모든 pip 패키지에서 런타임 설치를 관리합니다. requirement.txt. 이 파일에는 다음이 포함됩니다.

awscli
boto3

라는 디렉토리를 만들었습니다. code 그리고 model.py, serving.propertiesrequirements.txt 이 디렉토리에 파일이 이미 생성되어 있습니다. 파일을 보려면 터미널에서 다음 코드를 실행할 수 있습니다.

mkdir -p code
cat code/model.py 
cat code/serving.properties 
cat code/requirements.txt 

다음 그림은 의 구조를 보여줍니다 model.tar.gz.

마지막으로 모델 파일을 생성하여 Amazon S3에 업로드합니다.

tar cvfz model.tar.gz code
s3_code_artifact = sess.upload_data("model.tar.gz", bucket, s3_code_prefix)

Hugging Face에서 모델 다운로드 및 저장(선택 사항)

Amazon S3에 모델을 다운로드하고 거기에서 사용하려는 경우를 위해 이 섹션의 단계를 제공했습니다. 단계는 GitHub의 Jupyter 파일에 제공됩니다. 다음 스크린샷은 단계의 스냅샷을 보여줍니다.

대규모 모델 추론 딥 러닝 컨테이너 및 DeepSpeed ​​PlatoBlockchain 데이터 인텔리전스를 사용하여 Amazon SageMaker에 BLOOM-176B 및 OPT-30B를 배포하세요. 수직 검색. 일체 포함.

SageMaker 모델 생성

우리는 이제 세이지메이커 모델. 우리는 Amazon Elastic Container Registry (Amazon ECR) 이미지 및 SageMaker 모델 생성을 위한 이전 단계의 모델 아티팩트. 모델 설정에서 구성합니다. TENSOR_PARALLEL_DEGREE=8, 이는 모델이 8개의 GPU를 따라 분할되었음을 의미합니다. 다음 코드를 참조하십시오.

PrimaryContainer={
        "Image": inference_image_uri,
        "ModelDataUrl": s3_code_artifact,
        "Environment": {
            "MODEL_S3_BUCKET": bucket,
            "MODEL_S3_PREFIX": s3_model_prefix,
            "TENSOR_PARALLEL_DEGREE": "8",
},

Jupyter 파일에서 이전 셀을 실행하면 다음과 유사한 출력이 표시됩니다.

{
    "ModelArn": "arn:aws:sagemaker:us-east-1::model/bloom-djl-ds-"
}

SageMaker 엔드포인트 생성

테스트를 위해 여러 GPU가 있는 모든 인스턴스를 사용할 수 있습니다. 이 데모에서는 p4d.24xlarge 인스턴스를 사용합니다. 다음 코드에서 우리가 설정하는 방법에 주목하십시오. ModelDataDownloadTimeoutInSeconds, ContainerStartupHealthCheckTimeoutInSecondsVolumeSizeInGB 큰 모델 크기를 수용하기 위한 매개변수. 그만큼 VolumeSizeInGB 매개변수는 EBS 볼륨 연결을 지원하는 GPU 인스턴스에 적용할 수 있습니다.

endpoint_config_response = sm_client.create_endpoint_config(
    EndpointConfigName=endpoint_config_name,
    ProductionVariants=[
        {
            "VariantName": "variant1",
            "ModelName": model_name,
            "InstanceType": "ml.p4d.24xlarge",
            "InitialInstanceCount": 1,
            #"VolumeSizeInGB" : 200,
            "ModelDataDownloadTimeoutInSeconds": 2400,
            "ContainerStartupHealthCheckTimeoutInSeconds": 2400,
        },
    ],
)'

마지막으로 SageMaker 엔드포인트를 생성합니다.

create_endpoint_response = sm_client.create_endpoint(
    EndpointName=f"{endpoint_name}", EndpointConfigName=endpoint_config_name
)

다음 코드에서 인쇄된 것을 볼 수 있습니다.

{
    "EndpointArn": "arn:aws:sagemaker:us-east-1::endpoint/bloom-djl-ds-"
}

끝점을 시작하는 데 시간이 걸릴 수 있습니다. 문제가 발생하면 몇 번 더 시도할 수 있습니다. InsufficientInstanceCapacity 오류가 발생하거나 계정의 한도를 늘리도록 AWS에 요청할 수 있습니다.

성능 조정

이 게시물과 함께 제공되는 노트북을 다른 모델과 함께 사용하려는 경우 SageMaker, DeepSpeed ​​및 DJL이 제공하는 일부 조정 가능한 매개변수를 탐색할 수 있습니다. 이러한 매개변수를 반복적으로 실험하면 호스팅된 대형 모델의 대기 시간, 처리량 및 비용에 중대한 영향을 미칠 수 있습니다. 작업자 수, 텐서 병렬도, 작업 대기열 크기 등과 같은 매개변수 조정에 대한 자세한 내용은 다음을 참조하십시오. DJL 제공 구성DJLServing 및 DeepSpeed ​​모델 병렬 추론을 사용하여 Amazon SageMaker에 대규모 모델 배포.

결과

이 게시물에서는 DeepSpeed를 사용하여 SageMaker ML 인스턴스에서 BLOOM-176B 및 OPT-30B를 호스팅했습니다. 다음 표는 Hugging Face의 Accelerate와의 비교를 포함하여 성능 결과를 요약한 것입니다. 대기 시간은 256개 토큰 문자열을 네 번 생성하는 데 걸리는 밀리초 수를 반영합니다(batch_size=4) 모델에서. 처리량은 각 테스트에 대해 초당 생성된 토큰 수를 반영합니다. Hugging Face Accelerate의 경우 GPU 메모리 매핑과 함께 라이브러리의 기본 로딩을 사용했습니다. DeepSpeed의 경우 더 빠른 체크포인트 로딩 메커니즘을 사용했습니다.

모델 도서관 모델 정밀도 배치 크기 평행 학위 로드 시간
(들)
대기 시간(4 x 256 토큰 출력) .
. . . . . . . P50
(ms)
P90
(ms)
P99
(ms)
처리량
(토큰/초)
블룸-176B 딥스피드 INT8 4 8 p4d.24x대형 74.9 27,564 27,580 32,179 37.1
블룸-176B 가속 INT8 4 8 p4d.24x대형 669.4 92,694 92,735 103,292 11.0
OPT-30B 딥스피드 FP16 4 4 g5.24xlarge 239.4 11,299 11,302 11,576 90.6
OPT-30B 가속 FP16 4 4 g5.24xlarge 533.8 63,734 63,737 67,605 16.1

지연 시간 관점에서 DeepSpeed는 Accelerate보다 BLOOM-3.4B의 경우 약 176배, OPT-5.6B의 경우 30배 더 빠릅니다. DeepSpeed의 최적화된 커널은 이러한 지연 시간 차이의 대부분을 담당합니다. 이러한 결과를 감안할 때 선택한 모델이 지원되는 경우 Accelerate보다 DeepSpeed를 사용하는 것이 좋습니다.

또한 DeepSpeed를 사용한 모델 로드 시간이 훨씬 더 짧았기 때문에 엔드포인트 수를 빠르게 확장해야 할 것으로 예상되는 경우 더 나은 옵션이 됩니다. DeepSpeed에서 지원하지 않는 모델 또는 모델 정밀도가 있는 경우 Accelerate의 보다 유연한 파이프라인 병렬 처리 기술이 더 나은 옵션일 수 있습니다.

이러한 결과는 또한 다양한 모델 크기의 지연 시간과 처리량의 차이를 보여줍니다. 테스트에서 OPT-30B는 2.4배 이상 저렴한 인스턴스 유형에서 BLOOM-176B보다 단위 시간당 30배의 토큰을 생성합니다. 처리량 단위당 가격 기준으로 g5.24xl 인스턴스의 OPT-8.9B는 p176d.4xl 인스턴스의 BLOOM-24B보다 XNUMX배 더 좋습니다. 엄격한 대기 시간, 처리량 또는 비용 제한이 있는 경우 여전히 기능 요구 사항을 달성할 수 있는 가장 작은 모델을 사용하는 것이 좋습니다.

정리

모범 사례의 일부로 항상 유휴 인스턴스를 삭제하는 것이 좋습니다. 아래 코드는 인스턴스를 삭제하는 방법을 보여줍니다.

# - Delete the end point
sm_client.delete_endpoint(EndpointName=endpoint_name)

# - In case the end point failed we still want to delete the model
sm_client.delete_endpoint_config(EndpointConfigName=endpoint_config_name)
sm_client.delete_model(ModelName=model_name)

선택적으로 S3에서 모델 체크 포인트를 삭제합니다.

!aws s3 rm --recursive s3:///{s3_model_prefix}

결론

이 게시물에서는 SageMaker 대형 모델 추론 컨테이너를 사용하여 BLOOM-176B 및 OPT-30B라는 두 개의 대형 언어 모델을 호스팅하는 방법을 시연했습니다. 단일 SageMaker ML 인스턴스에서 여러 GPU와 함께 DeepSpeed의 모델 병렬 기술을 사용했습니다.

Amazon SageMaker 및 대규모 모델 추론 기능에 대한 자세한 내용은 다음을 참조하십시오. Amazon SageMaker는 이제 구성 가능한 볼륨 크기 및 제한 시간 할당량을 통해 대규모 모델 배포를 지원합니다.실시간 추론.


저자 소개

대규모 모델 추론 딥 러닝 컨테이너 및 DeepSpeed ​​PlatoBlockchain 데이터 인텔리전스를 사용하여 Amazon SageMaker에 BLOOM-176B 및 OPT-30B를 배포하세요. 수직 검색. 일체 포함.사이먼 자 마린 고객이 데이터 자산에서 가치를 추출하도록 돕는 데 주력하는 AI / ML 솔루션 설계자입니다. 여가 시간에 Simon은 가족과 함께 시간을 보내고, SF를 읽고, 다양한 DIY 하우스 프로젝트 작업을 즐깁니다.

대규모 모델 추론 딥 러닝 컨테이너 및 DeepSpeed ​​PlatoBlockchain 데이터 인텔리전스를 사용하여 Amazon SageMaker에 BLOOM-176B 및 OPT-30B를 배포하세요. 수직 검색. 일체 포함. 루피더 그레왈 AWS의 Sr Ai/ML 전문가 솔루션 아키텍트입니다. 그는 현재 SageMaker에서 모델 및 MLOps 서비스에 중점을 두고 있습니다. 이 역할을 하기 전에는 머신 러닝 엔지니어로 모델을 구축하고 호스팅하는 일을 했습니다. 일 외에는 테니스를 치고 산길에서 자전거를 타는 것을 즐깁니다.

대규모 모델 추론 딥 러닝 컨테이너 및 DeepSpeed ​​PlatoBlockchain 데이터 인텔리전스를 사용하여 Amazon SageMaker에 BLOOM-176B 및 OPT-30B를 배포하세요. 수직 검색. 일체 포함.프랭크 리우 AWS Deep Learning의 소프트웨어 엔지니어입니다. 그는 소프트웨어 엔지니어와 과학자를위한 혁신적인 딥 러닝 도구를 구축하는 데 중점을 둡니다. 여가 시간에는 친구 및 가족과 함께 하이킹을 즐깁니다.

대규모 모델 추론 딥 러닝 컨테이너 및 DeepSpeed ​​PlatoBlockchain 데이터 인텔리전스를 사용하여 Amazon SageMaker에 BLOOM-176B 및 OPT-30B를 배포하세요. 수직 검색. 일체 포함.앨런 탄 SageMaker의 수석 제품 관리자로 대규모 모델 추론을 주도하고 있습니다. 그는 분석 영역에 기계 학습을 적용하는 데 열정적입니다. 그는 일 외에는 야외 활동을 즐깁니다.

대규모 모델 추론 딥 러닝 컨테이너 및 DeepSpeed ​​PlatoBlockchain 데이터 인텔리전스를 사용하여 Amazon SageMaker에 BLOOM-176B 및 OPT-30B를 배포하세요. 수직 검색. 일체 포함.다왈 파텔 AWS의 수석 기계 학습 설계자입니다. 그는 분산 컴퓨팅 및 인공 지능과 관련된 문제에 대해 대기업에서 중견 스타트업에 이르는 다양한 조직과 협력했습니다. 그는 NLP 및 Computer Vision 도메인을 포함한 딥 러닝에 중점을 둡니다. 그는 고객이 SageMaker에서 고성능 모델 추론을 달성하도록 돕습니다.

대규모 모델 추론 딥 러닝 컨테이너 및 DeepSpeed ​​PlatoBlockchain 데이터 인텔리전스를 사용하여 Amazon SageMaker에 BLOOM-176B 및 OPT-30B를 배포하세요. 수직 검색. 일체 포함.칭란 AWS의 소프트웨어 개발 엔지니어입니다. 그는 고성능 ML 추론 솔루션 및 고성능 로깅 시스템을 포함하여 Amazon에서 여러 도전적인 제품을 작업해 왔습니다. Qing의 팀은 요구되는 매우 짧은 지연 시간으로 Amazon Advertising에서 첫 번째 XNUMX억 매개변수 모델을 성공적으로 출시했습니다. Qing은 인프라 최적화 및 딥 러닝 가속화에 대한 심층 지식을 보유하고 있습니다.

대규모 모델 추론 딥 러닝 컨테이너 및 DeepSpeed ​​PlatoBlockchain 데이터 인텔리전스를 사용하여 Amazon SageMaker에 BLOOM-176B 및 OPT-30B를 배포하세요. 수직 검색. 일체 포함.칭 웨이 리 Amazon Web Services의 기계 학습 전문가입니다. 그는 박사 학위를 받았습니다. 그는 고문의 연구 보조금 계좌를 깨고 그가 약속 한 노벨상을 전달하지 못한 후 Operations Research에서 현재 그는 금융 서비스 및 보험 업계의 고객이 AWS에서 기계 학습 솔루션을 구축하도록 돕습니다. 여가 시간에는 읽기와 가르치기를 좋아합니다.

대규모 모델 추론 딥 러닝 컨테이너 및 DeepSpeed ​​PlatoBlockchain 데이터 인텔리전스를 사용하여 Amazon SageMaker에 BLOOM-176B 및 OPT-30B를 배포하세요. 수직 검색. 일체 포함.로버트 반 두센 Amazon SageMaker의 수석 제품 관리자입니다. 그는 대규모 모델 추론과 같은 애플리케이션을 위한 딥 러닝 모델 최적화를 이끌고 있습니다.

대규모 모델 추론 딥 러닝 컨테이너 및 DeepSpeed ​​PlatoBlockchain 데이터 인텔리전스를 사용하여 Amazon SageMaker에 BLOOM-176B 및 OPT-30B를 배포하세요. 수직 검색. 일체 포함.싯다르트 벤카테산 AWS Deep Learning의 소프트웨어 엔지니어입니다. 그는 현재 대규모 모델 추론을 위한 솔루션 구축에 집중하고 있습니다. AWS에 합류하기 전에는 Amazon Grocery 조직에서 전 세계 고객을 위한 새로운 결제 기능을 구축하는 일을 했습니다. 일 외에는 스키, 야외 활동, 스포츠 관전을 즐깁니다.

타임 스탬프 :

더보기 AWS 기계 학습