Meta AI에서 제공하는 라마2 시작하기(Getting started with Llama2) 가이드 1편: 빠른 설정

안내(Disclaimer): 아래 내용은 Meta AI에서 공개한 Getting started with Llama 2 문서를 번역한 것입니다.
의도하지 않은 오역 또는 오타가 있을 수 있으니, 원문을 함께 참고해주시기를 부탁드립니다.


Llama 시작하기 가이드에 오신 것을 환영합니다!

이 문서에서는 라마2를 설정하는 내용을 포함하여 모델에 접근하거나 호스팅, 사용법 및 통합에 대한 정보와 리소스를 제공합니다. 또한, 라마 모델을 빌드하는데 필요한 추가적인 자료도 제공합니다.

Welcome to the getting started guide for Llama.

This guide provides information and resources to help you set up Llama including how to access the model, hosting, how-to and integration guides. Additionally, you will find supplemental materials to further assist you while building with Llama.

빠른 설정(QUICK SETUP)

준비할 것(Prerequisite)

  1. 운영체제: 우분투(Ubuntu)
  2. 패키지: wget, md5sum
  3. 패키지 관리자: Conda ME

윈도우나 macOS, iOS, Android 및 Python 노트북에서 라마2 모델(Llama2)을 사용하려면 오픈소스 커뮤니티에서 제공하는 다음의 저장소들을 참고하세요:

  1. OS: Ubuntu
  2. Packages: wget, md5sum
  3. Package Manager: Conda ME

If you want to use Llama 2 on Windows, macOS, iOS, Android or in a Python notebook, please refer to the open source community on how they have achieved this. Here are some of the resources from open source that you can read more about: (Repo 1) (Repo 2) (Repo 3).

모델 내려받기(Getting the Models)

  1. 라마 모델 다운로드 양식을 방문하여 라이선스를 읽고, 동의하세요.
  2. 요청이 승인되면 이메일 통해 서명된 URL을 받게 됩니다.
  3. GitHub에서 Llama 2 저장소를 복제(Clone)합니다.
  4. download.sh 스크립트를 실행한 뒤, 이메일로 받은 URL을 입력하여 모델을 받습니다.
    • 전달받은 URL은 24시간이 지나거나 일정 횟수 이상 다운로드를 받으면 만료됩니다.
    • 403: Forbidden 과 같은 오류가 표시되면 언제든지 URL을 다시 요청할 수 있습니다.
  1. Visit the Llama download form and accept our License.
  2. Once your request is approved, you will receive a signed URL over email.
  3. Clone the Llama 2 repository (here).
  4. Run the download.sh script, passing the URL provided when prompted to start the download.
    a. Keep in mind that the links expire after 24 hours and a certain amount of downloads.
    If you start seeing errors such as 403: Forbidden, you can always re-request a link.

라마 모델 호스팅(Hosting)

AWS(Amazon Web Services)

AWS에서는 라마 모델을 호스팅할 수 있는 여러가지 방법들(SageMaker Jumpstart, EC2, Bedrock 등)을 제공하고 있습니다. 이 문서에서는 SageMaker Jumpstart 및 Bedrock을 사용하여 모델을 호스팅하는 단계를 간략히 설명하겠습니다. 다른 방법들에 대해서는 AWS를 방문해보세요.

AWS provides multiple ways to host your Llama models. (SageMaker Jumpstart, EC2, Bedrock etc). In this document we are going to outline the steps to host your models using SageMaker Jumpstart and Bedrock. You can refer to other offerings directly on the AWS site.

베드락(Bedrock)

API를 통해 제공되는 고성능 파운데이션 모델들 중 하나를 선택하여 생성형 AI 애플리케이션을 만들고, 구축할 수 있는 완전 관리형 서비스(fully managed service)로, 개인정보 보호 및 보안을 유지하며 개발 과정을 간소화합니다. 서비스에 대한 더 자세한 내용은 여기에서 읽어볼 수 있으며, Bedrock에서 Llama2 모델을 사용하는 방법은 이 문서를 참고하세요.

A fully managed service that offers a choice of high performing foundation models, available via an API, to build generative AI applications, simplifying development while maintaining privacy and security. You can read more about the product here and follow instructions to use Llama 2 with Bedrock here.

EC2 인스턴스(EC2 Instance)

EC2 인스턴스에 모델을 배포하기 위해서는 먼저 라마 모델 다운로드 양식을 제출하시거나, Hugging Face 또는 Kaggle에서 모델 사용을 요청해야 합니다. 모델을 받으신 뒤에는 파이토치(PyTorch) 및 CUDA가 설치된 딥러닝 AMI 이미지에 배포하거나 GPU와 필요한 의존성이 설치된 자체 EC2 인스턴스에 배포할 수 있습니다. 딥러닝 AMI 이미지를 사용한 자세한 설정 방법은 여기를, 자체 EC2 인스턴스를 직접 설정하는 방법은 여기를 참고하세요.

To deploy models on EC2 instances, you must first request access to the model from our Llama download form, Hugging Face or Kaggle. Once you have this model you can either deploy it on a Deep Learning AMI image that has both PyTorch and Cuda installed or create your own EC2 instance with GPUs and install all the required dependencies. For detailed instructions on how to set up your Deep Learning AMI image you can refer here or to set up your own EC2 instance here.

세이지메이커 점프스타트(SageMaker JumpStart)

아마존 세이지메이커(SageMaker)를 사용하면 ML 실무자는 완전히 관리되는 인프라, 도구 및 워크플로우를 통해 머신러닝 모델을 구축하거나 학습, 배포를 할 수 있습니다. ML 실무자는 SageMaker JumpStart를 통해 공개적으로 사용 가능한 다양한 파운데이션 모델들 중 하나를 선택하여 SageMaker 인스턴스에서 배포한 뒤, 모델을 학습하거나 배포할 수 있습니다. 자세한 내용은 여기에서 읽어보세요.

Amazon SageMaker enables ML practitioners to build, train and deploy machine learning models for any use case with fully managed infrastructure, tools and workflows. With SageMaker JumpStart, ML practitioners can choose from a broad selection of publicly available foundational models and deploy them on SageMaker Instances for model training and deployments. You can read more about it here.

클라우드플레어(Cloudflare)

워커 AI (Workers AI)

워커 AI(Workers AI)는 Cloudflare의 전세계 네트워크에서 실행되는 GPU 기반, 서버리스(serverless) 추론 서비스 플랫폼입니다. 개발자는 워커 AI를 사용하여 몇 줄의 코드만으로 AI 모델을 실행할 수 있습니다. 워커 AI에 대한 자세한 내용은 여기에서, 그리고 라마2 모델을 사용하기 위해서는 여기를 참조해주세요. (:fire::kr:추가: Cloudflare, GPU 기반의 서버리스 추론 서비스 Workers AI 출시)

Is a serverless GPU-powered inference on Cloudflare’s global network. It’s an AI inference as a service platform, empowering developers to run AI models with just a few lines of code. Learn more about Workers AI here and look at the documentation here to get started to use Llama 2 models here.

구글 클라우드 플랫폼(GP) - 모델 정원 (Google Cloud Platform (GCP) - Model Garden)

GCP는 가상 자원(VM)뿐만 아니라 컴퓨팅 자원을 제공하는 클라우드 컴퓨팅 서비스 제품군(suite)입니다. GCP 서비스를 기반으로 구축한 Vertex AI 기반의 모델 정원(Model Graden)은 한 곳에서 다양한 모델들을 검색하고, 커스터마이징하고, 배포하여 ML 프로젝트를 시작할 수 있는 인프라를 제공합니다. 100여종 이상의 파운데이션 모델들이 사용 가능하며, 몇 번의 클릭만으로 AI 모델의 배포 및 Google Colab의 노트북에서의 미세 조정(파인튜닝; finetuning) 작업을 실행할 수 있습니다.

GCP is a suite of cloud computing services that provides computing resources as well as virtual machines. Building on top of GCP services, Model Garden on Vertex AI offers infrastructure to jumpstart your ML project with a single place to discover, customize, and deploy a wide range of models. With more than 100 foundation models available to developers, you can deploy AI models with a few clicks as well as running fine-tuning tasks in Notebook in Google Colab.

버텍스 AI(Vertex AI)

Meta AI는 Google Cloud의 Vertex AI와 협업하여 완전히 통합된, 다양한 크기의, 사전학습 버전과 채팅 버전의 라마2(Llama2) 모델과 코드라마(CodeLlama) 모델들을 제공하고 있습니다. 여기에서 시작할 수 있으며, 필요 시 GPU 컴퓨팅 자원에 대한 할당량(quota)를 먼저 신청해야 할 수 있습니다.

We have collaborated with Vertex AI from Google Cloud to fully integrate Llama 2, offering pre-trained, chat and CodeLlama in various sizes. Getting started from here, note that you may need to request proper GPU computing quota as a prerequisite.

허깅페이스(Hugging Face)

먼저 허깅페이스 계정과 동일한 이메일 주소를 사용하여 다운로드를 요청해야 합니다. 그 다음, (허깅페이스에서) 접근 권한을 요청하면 1~2일 이내에 허깅페이스의 모든 모델에 대한 접근 권한이 계정에 부여됩니다.

You must first request a download using the same email address as your Hugging Face account. After doing so, you can request access to any of the models on Hugging Face and within 1-2 days your account will be granted access to all versions.

캐글(Kaggle)

캐글은 데이터 사이언티스트와 머신러닝 엔지니어들이 모여있는 온라인 커뮤니티입니다. 사용자는 이 커뮤니티에서 AI 모델 구축을 위한 데이터셋을 찾을 수 있을뿐만 아니라, 바로 배포할 수 있는 수백개의 미리 학습된 머신러닝 모델들을 찾아볼 수도 있습니다. 또한, 커뮤니티 회원은 노트북에서 이러한 모델을 사용하여 노트북에서 작업한 혁신적인 작업들을 공개할 수도 있습니다. 노트북은 컴퓨팅 자원과 가상머신을 제공하는 Google Cloud AI 플랫폼의 지원을 받고 있습니다.

Kaggle is an online community of data scientists and machine learning engineers. It not only allows users to find datasets for building their AI models, but also allows users to search and discover hundreds of trained, ready-to-deploy machine learning models in one place. Moreover, community members can also publish their innovative works with these models as in Notebooks, backed by Google Cloud AI platform for computing resources and virtual machines.

Meta AI는 캐글(Kaggle)과 협업하여 완전히 통합된, 다양한 크기의, 사전학습 버전과 채팅 버전의 라마2(Llama2) 모델과 코드라마(CodeLlama) 모델들을 제공하고 있습니다. 캐글에서 라마2 모델 아티팩트를 다운로드하려면 먼저 캐글 계정과 동일한 이메일 주소를 사용하여 다운로드를 요청해야 합니다. 그 다음, (캐글에서) 라마2코드라마 모델에 대한 접근을 요청할 수 있습니다. 요청이 승낙된 후 다운로드할 수 있습니다.

We have collaborated with Kaggle to fully integrate Llama 2, offering pre-trained, chat and CodeLlama in various sizes. To download Llama 2 model artifacts from Kaggle, you must first request a download using the same email address as your Kaggle account. After doing so, you can request access to Llama 2 and Code Lama models. You get access to downloads once your request is processed.

마이크로소프트 애저 및 윈도우(Microsoft Azure & Windows)

마이크로소프트 애저에서 제공하는 2가지 방법 중 하나로 라마2 모델을 사용할 수 있습니다. 하나는 라마2 모델을 다운로드한 뒤 가상 머신에 배포하는 것이고, 다른 방법은 애저 모델 카탈로그(Azure Model Catalog)를 사용하는 것입니다.

With Microsoft Azure you can access Llama 2 in one of two ways, either by downloading the Llama 2 model and deploying it on a virtual machine or using Azure Model Catalog.

애저 가상 머신(Azure Virtual Machine)

Azure VM으로 라마 모델을 실행하려면 자체 VM을 설정하거나 PyTorch, CUDA, NVIDIA 시스템 관리 및 기타 ML 도구들이 이미 설치된 애저의 데이터 사이언스 VM(Data Science VM)을 사용할 수 있습니다. 데이터 사이언스 VM을 사용하려면 이 문서를 참고하여 설정하세요. 이 때 VM은 GPU가 활성화된 이미지를 설정해야 합니다. 직접 VM을 설정하려면 마이크로소프트 사이트의 빠른 시작 문서를 여기에서 참고하세요. '가상 머신에 연결(Connect to virtual machine)' 단계에서 멈출 수 있습니다. VM을 설정한 뒤, VM에 접근하여 모델을 로컬에서 접근하기 위해서는 이 문서 앞쪽의 모델 내려받기(Getting the Models) 섹션을 참고하세요.

To run Llama with an Azure VM, you can set up your own VM or use Azure’s Data Science VM which comes with Pytorch, CUDA, NVIDIA System Management and other ML tools already installed. To use the Data Science VM, follow the instructions here to set one up. Make sure to set this VM up with a GPU enabled image. However, if you would like to set up your own VM, you can follow the quickstart instructions on the Microsoft site here. You can stop at the “Connect to virtual machine” step. Once you have a VM set up, you can follow the instructions here to access the models locally on the VM.

애저 모델 카탈로그(Azure Model Catalog)

애저 모델 카탈로그는 파운데이션 모델 모음을 탐색하기 위한 장소(hub)입니다. 애저 ML(Azure ML) 플랫폼 위에서 빌드된 모델 카탈로그에서는 몇 번의 클릭만으로 미세 조정(파인튜닝; finetuning) 및 평가(evaluation)과 같은 ML 작업들을 실행할 수 있는 옵션을 제공합니다. 일반적으로 초급 개발자들이 선호하는 모델들을 직접 사용해 볼 수 있는 좋은 시작점이며, 고급 개발자들 또한 프로덕션용 AI 애플리케이션을 만들 수 있도록 강력한 도구들과도 통합되어 있습니다.

Azure Model Catalog is a hub for exploring collections of foundation models. Built on top of Azure ML platform, Model Catalog provides options to run ML tasks such as fine-tuning and evaluation with just a few clicks. In general, it is a good starting point for beginner developers to try out their favorite models and also integrated with powerful tools for senior developers to build AI applications for production.

Meta AI는 애저(Azure)와 협업하여 완전히 통합된, 다양한 크기의, 사전학습 버전과 채팅 버전의 라마2(Llama2) 모델과 코드라마(CodeLlama) 모델들을 제공하고 있습니다. 시작하려면 이 문서를 참고하세요.

We have worked with Azure to fully integrate Llama 2 with Model Catalog, offering both pre-trained chat and CodeLlama models in various sizes. Please follow the instructions here to get started with.

Windows용 ONNX(ONNX for Windows)

ONNX는 머신러닝을 모델을 표현(represent)하기 위해 만들어진 개방형 포맷(open format)입니다. ONNX를 사용하여 AI 개발자가 다양한 프레임워크와 도구, 런타임 및 컴파일러에서 모델을 사용할 수 있도록 하는 공통의 연산자 집합과 공통의 파일 형식을 정의합니다. ONNX 사용의 주요 장점 중 하나는 텐서플로우(Tensorflow)와 같은 하나의 프레임워크에서 모델을 쉽게 내보내서 파이토치(PyTorch)와 같은 다른 프레임워크로 가져올 수 있다는 것입니다.

ONNX is an open format built to represent machine learning models. It defines a common set of operators and a common file format to enable AI developers to use models with a variety of frameworks, tools, runtimes and compilers. One of the main advantages of using ONNX is that it allows models to be easily exported from one framework, such as TensorFlow, and imported into another framework, such as PyTorch.

ONNX 런타임(runtime)과 함께 사용하면 하드웨어별 라이브러리를 통합하는 유연한 인터페이스로 개발 단계를 빠르게 진행할 수 있으며, 기본적으로 윈도우즈(Windows)와 같은 서로 다른 플랫폼들에서 추론 등의 ML 작업들을 쉽게 실행할 수 있게 됩니다.

Pairing with ONNX runtime, it would accelerate your development with a flexible interface to integrate hardware-specific libraries and essentially allows you to run ML tasks including inferencing on different platforms such as Windows easily.

공식 ONNX 라마2 저장소(여기)와 ONNX 런타임(runtime)(여기)을 사용하여 Windows/PC용 애플리케이션을 개발할 수 있습니다. ONNX 라마2 저장소를 사용하기 전, 하위 저장소에 있는 모델 아티팩트에 대한 다운로드 요청을 먼저 진행해야 합니다. 요청하신 내용은 마이크로소프트 ONNX 팀에서 검토합니다.

Get started developing applications for Windows/PC with the official ONNX Llama 2 repo here and ONNX runtime here. Note that, to use the ONNX Llama 2 repo you will need to submit a request to download model artifacts from sub-repos. This request will be reviewed by the Microsoft ONNX team.