? Modèles sur Hugging Face | Blog |
Nous libérons la puissance des grands modèles linguistiques. Notre dernière version de Llama est désormais disponible pour les particuliers, les créateurs, les chercheurs et les entreprises de toutes tailles afin qu'ils puissent expérimenter, innover et faire évoluer leurs idées de manière responsable.
Cette version inclut les poids des modèles et le code de départ pour les modèles de langage Llama 3 pré-entraînés et réglés par les instructions, y compris les tailles de paramètres de 8B à 70B.
Ce référentiel est conçu comme un exemple minimal de chargement d'un modèle Llama 3 et d'exécution d'inférence. Voir les recettes de lama pour des exemples plus détaillés.
Afin de télécharger les poids du modèle et le tokenizer, veuillez visiter le site Web Meta Llama et accepter notre accord de licence.
Après avoir soumis votre demande, vous recevrez une URL signée par e-mail. Exécutez ensuite le script download.sh, en transmettant l'URL fournie lorsque vous êtes invité à démarrer le téléchargement.
Condition préalable : assurez-vous que wget
et md5sum
sont installés. Exécutez ensuite le script : ./download.sh
.
Gardez à l'esprit que le lien expirera après 24 heures et un certain nombre de téléchargements. Si vous commencez à voir des erreurs telles que 403: Forbidden
, vous pouvez toujours demander à nouveau le lien.
Nous proposons également des téléchargements sur Hugging Face, notamment des transformateurs et des formats natifs llama3
. Pour télécharger des poids depuis Hugging Face, suivez ces étapes :
original
. Vous pouvez également les télécharger depuis la ligne de commande si vous avez installé 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" ,
)
Vous pouvez rapidement commencer à utiliser le modèle Llama 3 en suivant les étapes ci-dessous. Ces étapes vous permettront de faire une inférence rapide localement. Pour plus d'exemples, consultez le référentiel de recettes Llama.
Clonez et téléchargez ce référentiel dans un environnement conda avec PyTorch/CUDA installé.
Exécutez dans le répertoire supérieur :
pip install -e .
Visitez le site Web Meta Llama et inscrivez-vous pour télécharger des modèles.
Après votre inscription, vous recevrez un e-mail avec l'URL pour télécharger le modèle. Vous aurez besoin de cette URL lors de l'exécution du script download.sh.
Une fois que vous recevez l'e-mail, accédez au référentiel Lama que vous avez téléchargé et exécutez le script download.sh.
Après avoir téléchargé le modèle requis, vous pouvez exécuter le modèle localement à l'aide de la commande suivante :
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
Avis
Meta-Llama-3-8B-Instruct/
par le chemin de votre répertoire de point de contrôle et Meta-Llama-3-8B-Instruct/tokenizer.model
par le chemin de votre modèle de tokenizer.–nproc_per_node
doit être défini sur la valeur MP du modèle que vous utilisez.max_seq_len
et max_batch_size
selon vos besoins.Différents modèles nécessitent différentes valeurs de parallélisme de modèle (MP) :
Modèle | Député |
---|---|
8B | 1 |
70B | 8 |
Tous les modèles prennent en charge des longueurs de séquence allant jusqu'à 8 192 jetons, mais nous pré-attribuons le cache en fonction des valeurs de max_seq_len
et max_batch_size
. Par conséquent, définissez ces valeurs en fonction de votre matériel.
Ces modèles ne sont pas optimisés pour le chat ou les questions-réponses. Les invites doivent être configurées de manière à ce que la réponse attendue soit une continuation naturelle de l'invite.
Voir example_text_completion.py
pour quelques exemples. Pour illustration, consultez la commande ci-dessous pour l'exécuter à l'aide du modèle llama-3-8b ( nproc_per_node
doit être défini sur 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
Des modèles affinés sont formés pour les applications conversationnelles. Afin d'obtenir les caractéristiques et performances attendues, ils doivent suivre un format spécifique défini dans ChatFormat
: les invites commencent par le jeton spécial <|begin_of_text|>
, suivi d'un ou plusieurs messages. Chaque message commence par la balise <|start_header_id|>
, a le rôle de system
, user
ou assistant
et se termine par la balise <|end_header_id|>
. Après le double saut de ligne nn
contenu du message suit. La fin de chaque message est marquée par le jeton <|eot_id|>
.
Vous pouvez également déployer des classificateurs supplémentaires pour filtrer les entrées et sorties jugées dangereuses. Consultez un exemple dans le référentiel llama-recipes pour savoir comment ajouter des vérificateurs de sécurité à l'entrée et à la sortie de votre code d'inférence.
Exemple utilisant lama-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 est une nouvelle technologie et comporte des risques potentiels. Les tests effectués jusqu’à présent ne couvrent pas – et ne peuvent pas – couvrir toutes les situations. Pour aider les développeurs à faire face à ces risques, nous avons créé des directives d'utilisation responsable.
Veuillez signaler les « bugs » logiciels ou autres problèmes liés au modèle via l'une des méthodes suivantes :
Voir MODEL_CARD.md.
Nos modèles et poids sont concédés sous licence à des chercheurs et à des entités commerciales, dans le respect de principes ouverts. Notre mission est de responsabiliser les individus et les industries grâce à cette opportunité tout en promouvant un environnement de découverte et de progrès éthique de l’IA.
Veuillez consulter le document LICENCE, ainsi que notre politique d'utilisation acceptable.
Pour les questions fréquemment posées, la FAQ peut être trouvée ici https://llama.meta.com/faq, elle sera continuellement mise à jour à mesure que de nouvelles questions se poseront.