? Hugging Face 블로그 웹사이트 |
우리는 대규모 언어 모델의 힘을 발휘하고 있습니다. 이제 Llama의 최신 버전을 모든 규모의 개인, 창작자, 연구원 및 기업이 사용할 수 있으므로 책임감 있게 아이디어를 실험하고 혁신하고 확장할 수 있습니다.
이 릴리스에는 8B에서 70B까지의 매개변수 크기를 포함하여 사전 훈련되고 명령 조정된 Llama 3 언어 모델을 위한 모델 가중치와 시작 코드가 포함되어 있습니다.
이 저장소는 Llama 3 모델을 로드하고 추론을 실행하는 최소한의 예시로 만들어졌습니다. 자세한 예는 라마 레시피를 참조하세요.
모델 가중치와 토크나이저를 다운로드하려면 Meta Llama 웹사이트를 방문하여 라이센스 계약에 동의하세요.
요청을 제출하면 이메일을 통해 서명된 URL을 받게 됩니다. 그런 다음 download.sh 스크립트를 실행하고 다운로드를 시작하라는 메시지가 표시되면 제공된 URL을 전달합니다.
전제조건: wget
및 md5sum
설치되어 있는지 확인하십시오. 그런 다음 ./download.sh
스크립트를 실행합니다.
링크는 24시간 및 특정 다운로드 횟수가 지나면 만료된다는 점을 명심하세요. 403: Forbidden
과 같은 오류가 표시되기 시작하면 언제든지 링크를 다시 요청할 수 있습니다.
또한 변환기 및 기본 llama3
형식을 포함하여 Hugging Face에 대한 다운로드도 제공합니다. Hugging Face에서 가중치를 다운로드하려면 다음 단계를 따르세요.
original
폴더의 콘텐츠를 다운로드하세요. pip install huggingface-hub
설치한 경우 명령줄에서 다운로드할 수도 있습니다. huggingface-cli download meta-llama/Meta-Llama-3-8B-Instruct --include " original/* " --local-dir meta-llama/Meta-Llama-3-8B-Instruct
import transformers
import torch
model_id = "meta-llama/Meta-Llama-3-8B-Instruct"
pipeline = transformers . pipeline (
"text-generation" ,
model = "meta-llama/Meta-Llama-3-8B-Instruct" ,
model_kwargs = { "torch_dtype" : torch . bfloat16 },
device = "cuda" ,
)
아래 단계에 따라 Llama 3 모델 사용을 빠르게 시작할 수 있습니다. 이러한 단계를 통해 로컬에서 빠른 추론을 수행할 수 있습니다. 더 많은 예를 보려면 Llama 레시피 저장소를 확인하세요.
PyTorch/CUDA가 설치된 conda 환경에서 이 저장소를 복제하고 다운로드하세요.
최상위 디렉터리에서 실행:
pip install -e .
Meta Llama 웹사이트를 방문하여 등록하고 모델을 다운로드하세요.
등록 후 모델을 다운로드할 수 있는 URL이 포함된 이메일을 받게 됩니다. download.sh 스크립트를 실행할 때 이 URL이 필요합니다.
이메일을 받으면 다운로드한 라마 저장소로 이동하여 download.sh 스크립트를 실행하세요.
필요한 모델을 다운로드한 후 다음 명령을 사용하여 모델을 로컬로 실행할 수 있습니다.
torchrun --nproc_per_node 1 example_chat_completion.py
--ckpt_dir Meta-Llama-3-8B-Instruct/
--tokenizer_path Meta-Llama-3-8B-Instruct/tokenizer.model
--max_seq_len 512 --max_batch_size 6
알아채다
Meta-Llama-3-8B-Instruct/
체크포인트 디렉터리 경로로 바꾸고 Meta-Llama-3-8B-Instruct/tokenizer.model
토크나이저 모델 경로로 바꾸세요.–nproc_per_node
사용 중인 모델의 MP 값으로 설정되어야 합니다.max_seq_len
및 max_batch_size
매개변수를 조정합니다.모델마다 다른 모델 병렬성(MP) 값이 필요합니다.
모델 | 국회의원 |
---|---|
8B | 1 |
70B | 8 |
모든 모델은 최대 8192개 토큰의 시퀀스 길이를 지원하지만 max_seq_len
및 max_batch_size
값을 기반으로 캐시를 사전 할당합니다. 따라서 귀하의 하드웨어에 따라 이러한 값을 설정하십시오.
이러한 모델은 채팅이나 Q&A에 적합하지 않습니다. 예상되는 답변이 프롬프트의 자연스러운 연속이 되도록 프롬프트를 설정해야 합니다.
몇 가지 예는 example_text_completion.py
참조하세요. 설명을 위해 llama-3-8b 모델을 사용하여 실행하려면 아래 명령을 참조하세요( nproc_per_node
MP
값으로 설정해야 함).
torchrun --nproc_per_node 1 example_text_completion.py --ckpt_dir Meta-Llama-3-8B/ --tokenizer_path Meta-Llama-3-8B/tokenizer.model --max_seq_len 128 --max_batch_size 4
미세 조정된 모델은 대화형 애플리케이션을 위해 학습되었습니다. 예상되는 특성과 성능을 얻으려면 ChatFormat
에 정의된 특정 형식을 따라야 합니다. 프롬프트는 특수 토큰 <|begin_of_text|>
로 시작하고 그 뒤에 하나 이상의 메시지가 옵니다. 각 메시지는 <|start_header_id|>
태그로 시작하고 system
, user
또는 assistant
역할을 갖고 <|end_header_id|>
태그로 끝납니다. 이중 개행 nn
다음에는 메시지 내용이 이어집니다. 각 메시지의 끝은 <|eot_id|>
토큰으로 표시됩니다.
안전하지 않은 것으로 간주되는 입력 및 출력을 필터링하기 위해 추가 분류자를 배포할 수도 있습니다. 추론 코드의 입력 및 출력에 안전 검사기를 추가하는 방법에 대한 llama-recipes 저장소의 예를 참조하세요.
llama-3-8b-chat 사용 예:
torchrun --nproc_per_node 1 example_chat_completion.py --ckpt_dir Meta-Llama-3-8B-Instruct/ --tokenizer_path Meta-Llama-3-8B-Instruct/tokenizer.model --max_seq_len 512 --max_batch_size 6
Llama 3은 새로운 기술이므로 잠재적인 위험이 따릅니다. 지금까지 수행된 테스트는 모든 상황을 다루지는 않으며, 다룰 수도 없습니다. 개발자가 이러한 위험을 해결할 수 있도록 책임 있는 사용 지침을 만들었습니다.
다음 방법 중 하나를 통해 모델의 소프트웨어 "버그" 또는 기타 문제를 보고해 주십시오.
MODEL_CARD.md를 참조하세요.
우리의 모델과 가중치는 공개 원칙을 준수하면서 연구원 및 상업 단체에 라이선스가 부여됩니다. 우리의 임무는 발견 환경과 윤리적인 AI 발전을 촉진하는 동시에 이 기회를 통해 개인과 산업에 힘을 실어주는 것입니다.
라이센스 문서와 허용되는 사용 정책을 검토하십시오.
자주 묻는 질문(FAQ)은 여기(https://llama.meta.com/faq)에서 확인할 수 있으며, 새로운 질문이 발생할 때마다 지속적으로 업데이트됩니다.