Maison > Périphériques technologiques > IA > Fine-Tuning Llama 3.1 pour la classification du texte

Fine-Tuning Llama 3.1 pour la classification du texte

William Shakespeare
Libérer: 2025-03-05 11:08:09
original
884 Les gens l'ont consulté

Ce tutoriel démontre le réglage fin du modèle LLAMA 3.1-8B-IT pour l'analyse des sentiments de la santé mentale. Nous personnaliserons le modèle pour prédire l'état de santé mentale du patient à partir des données de texte, fusionner l'adaptateur avec le modèle de base et déployer le modèle complet sur le moyeu de face étreint. Surtout, n'oubliez pas que les considérations éthiques sont primordiales lors de l'utilisation de l'IA dans les soins de santé; Cet exemple est à des fins illustratives uniquement.

Nous couvrirons l'accès aux modèles LLAMA 3.1 via Kaggle, en utilisant la bibliothèque Transformers pour l'inférence et le processus de réglage fin lui-même. Une compréhension préalable de la fin de LLM (voir notre "un guide d'introduction aux LLMS de réglage fin") est bénéfique.

Fine-Tuning Llama 3.1 for Text Classification

Image par auteur

Comprendre lama 3.1

Llama 3.1, Meta AI Multiplengual Language Model (LLM), excelle dans la compréhension et la génération des langues. Disponible en versions 8b, 70b et 405b, il est construit sur une architecture auto-régressive avec des transformateurs optimisés. Formé sur diverses données publiques, il prend en charge huit langues et possède une durée de contexte de 128k. Sa licence commerciale est facilement accessible, et elle surpasse plusieurs concurrents dans divers repères.

Fine-Tuning Llama 3.1 for Text Classification

Source: Llama 3.1 (meta.com)

Accéder et utiliser Llama 3.1 sur Kaggle

Nous tirons parti des GPU / TPU gratuits de Kaggle. Suivez ces étapes:

  1. Inscrivez-vous sur meta.com (en utilisant votre e-mail Kaggle).
  2. Accédez au référentiel LLAMA 3.1 Kaggle et à l'accès au modèle de demande.
  3. Lancez un ordinateur portable Kaggle à l'aide du bouton "Code" fourni.
  4. Sélectionnez votre version préférée du modèle et ajoutez-le au cahier.
  5. Installez les packages nécessaires (%pip install -U transformers accelerate).
  6. Chargez le modèle et le tokenzer:
from transformers import AutoTokenizer, AutoModelForCausalLM, pipeline
import torch

base_model = "/kaggle/input/llama-3.1/transformers/8b-instruct/1"

tokenizer = AutoTokenizer.from_pretrained(base_model)
model = AutoModelForCausalLM.from_pretrained(base_model, return_dict=True, low_cpu_mem_usage=True, torch_dtype=torch.float16, device_map="auto", trust_remote_code=True)
pipe = pipeline("text-generation", model=model, tokenizer=tokenizer, torch_dtype=torch.float16, device_map="auto")
Copier après la connexion
  1. Créer des invites et exécuter l'inférence:
messages = [{"role": "user", "content": "What is the tallest building in the world?"}]
prompt = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
outputs = pipe(prompt, max_new_tokens=120, do_sample=True)
print(outputs[0]["generated_text"])
Copier après la connexion

Fine-Tuning Llama 3.1 for Text Classification

LALAME FIEUX 3.1 pour la classification de la santé mentale

  1. Configuration: Démarrez un nouvel ordinateur portable Kaggle avec Llama 3.1, installez les packages requis (bitsandbytes, transformers, accelerate, peft, trl), et ajoutez le jeu de données "analyse du sentiment pour la santé mentale". Configurer des poids et des biais (en utilisant votre clé API).

  2. Traitement des données: Chargez l'ensemble de données, nettoyez-le (en supprimant les catégories ambiguës: "suicidaire", "stress", "trouble de la personnalité"), shuffle et division en ensembles de formation, d'évaluation et de test (en utilisant 3000 échantillons pour l'efficacité). Créer des invites incorporant des instructions et des étiquettes.

  3. Chargement du modèle: Chargez le modèle LLAMA-3.1-8B-Istruct en utilisant la quantification 4 bits pour l'efficacité de la mémoire. Chargez le jeton et définissez l'ID de jeton de pad.

  4. Évaluation de la pré-fin: Créer des fonctions pour prédire les étiquettes et évaluer les performances du modèle (précision, rapport de classification, matrice de confusion). Évaluez les performances de référence du modèle avant de faire des réglages.

  5. Fonction de fin: Configurer LORA en utilisant les paramètres appropriés. Configurez les arguments de formation (ajustez au besoin pour votre environnement). Former le modèle en utilisant SFTTrainer. Surveiller les progrès en utilisant des poids et des biais.

  6. Évaluation post-fin de la fin: réévaluez les performances du modèle après le réglage fin.

  7. Fusion et économie: Dans un nouveau cahier Kaggle, fusionnez l'adaptateur affiné avec le modèle de base en utilisant PeftModel.from_pretrained() et model.merge_and_unload(). Testez le modèle fusionné. Enregistrez et poussez le modèle final et le tokenizer sur le Hub Hub.

N'oubliez pas de remplacer les espaces réservés comme

par vos chemins de fichier réels. Le code complet et les explications détaillées sont disponibles dans la réponse originale et plus longue. Cette version condensée fournit un aperçu de haut niveau et des extraits de code clés. Prioriser toujours les considérations éthiques lorsque vous travaillez avec des données sensibles. /kaggle/input/...

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal