


Tutoriel Mistral 7B: un guide étape par étape pour utiliser et affiner Mistral 7B
Ce tutoriel fournit un guide complet pour utiliser et affiner le modèle de langue Mistral 7B pour les tâches de traitement du langage naturel. Vous apprendrez à tirer parti de Kaggle pour l'accès au modèle, à effectuer une inférence, à appliquer des techniques de quantification, à affiner le modèle, à fusionner les adaptateurs et à se déployer sur le hub étreint.
Accès à Mistral 7B
Mistral 7B est accessible via diverses plates-formes, notamment le visage étreint, le sommet AI, la reproduction, le sagemaker Jumpstart et Baseten. Ce tutoriel se concentre sur l'utilisation de la fonctionnalité "modèles" de Kaggle pour l'accès rationalisé, éliminant le besoin de téléchargements manuels.
Cette section démontre le chargement du modèle de Kaggle et la référence. Les mises à jour essentielles de la bibliothèque sont cruciales pour éviter les erreurs:
<code>!pip install -q -U transformers !pip install -q -U accelerate !pip install -q -U bitsandbytes</code>
La quantification 4 bits avec la configuration de NF4 à l'aide de bitsandbytes améliore la vitesse de chargement et réduit l'utilisation de la mémoire:
<code>from transformers import AutoTokenizer, AutoModelForCausalLM, BitsAndBytesConfig, pipeline import torch bnb_config = BitsAndBytesConfig( load_in_4bit=True, bnb_4bit_quant_type="nf4", bnb_4bit_use_double_quant=True, )</code>
Ajouter le modèle Mistral 7B à votre ordinateur portable Kaggle implique ces étapes:
- Cliquez sur "Ajouter des modèles" dans le panneau de droite.
- Recherchez "Mistral 7B", sélectionnez "7B-V0.1-HF" et ajoutez-le.
- Notez le chemin du répertoire.
Le chargement du modèle et du tokenizer utilise la bibliothèque transformers
:
<code>model_name = "/kaggle/input/mistral/pytorch/7b-v0.1-hf/1" tokenizer = AutoTokenizer.from_pretrained(model_name) model = AutoModelForCausalLM.from_pretrained( model_name, load_in_4bit=True, quantization_config=bnb_config, torch_dtype=torch.bfloat16, device_map="auto", trust_remote_code=True, )</code>
L'inférence est simplifiée à l'aide de la fonction pipeline
:
<code>pipe = pipeline( "text-generation", model=model, tokenizer = tokenizer, torch_dtype=torch.bfloat16, device_map="auto" )</code>
Inciter le modèle et les paramètres de réglage:
<code>prompt = "As a data scientist, can you explain the concept of regularization in machine learning?" sequences = pipe( prompt, do_sample=True, max_new_tokens=100, temperature=0.7, top_k=50, top_p=0.95, num_return_sequences=1, ) print(sequences[0]['generated_text'])</code>
Mistral 7B Fine-Tuning
Cette section vous guide à travers le Mistral 7B de réglage fin sur l'ensemble de données guanaco-llama2-1k
, en utilisant des techniques comme PEFT, la quantification 4 bits et Qlora. Le tutoriel fait également référence à un guide sur le taure fin 2 pour un contexte supplémentaire.
Configuration
Les bibliothèques nécessaires sont installées:
<code>%%capture %pip install -U bitsandbytes %pip install -U transformers %pip install -U peft %pip install -U accelerate %pip install -U trl</code>
Les modules pertinents sont importés:
<code>from transformers import AutoModelForCausalLM, AutoTokenizer, BitsAndBytesConfig,HfArgumentParser,TrainingArguments,pipeline, logging from peft import LoraConfig, PeftModel, prepare_model_for_kbit_training, get_peft_model import os,torch, wandb from datasets import load_dataset from trl import SFTTrainer</code>
Les clés API sont gérées en toute sécurité à l'aide de secrets Kaggle:
<code>from kaggle_secrets import UserSecretsClient user_secrets = UserSecretsClient() secret_hf = user_secrets.get_secret("HUGGINGFACE_TOKEN") secret_wandb = user_secrets.get_secret("wandb")</code>
Face et poids et biais étreintes sont configurés:
<code>!huggingface-cli login --token $secret_hf wandb.login(key = secret_wandb) run = wandb.init( project='Fine tuning mistral 7B', job_type="training", anonymous="allow" )</code>
Le modèle de base, l'ensemble de données et le nouveau nom du modèle sont définis:
<code>base_model = "/kaggle/input/mistral/pytorch/7b-v0.1-hf/1" dataset_name = "mlabonne/guanaco-llama2-1k" new_model = "mistral_7b_guanaco"</code>
Chargement des données
L'ensemble de données est chargé et un échantillon s'affiche:
<code>dataset = load_dataset(dataset_name, split="train") dataset["text"][100]</code>
Chargement Mistral 7B
Le modèle est chargé d'une précision 4 bits:
<code>bnb_config = BitsAndBytesConfig( load_in_4bit= True, bnb_4bit_quant_type= "nf4", bnb_4bit_compute_dtype= torch.bfloat16, bnb_4bit_use_double_quant= False, ) model = AutoModelForCausalLM.from_pretrained( base_model, load_in_4bit=True, quantization_config=bnb_config, torch_dtype=torch.bfloat16, device_map="auto", trust_remote_code=True, ) model.config.use_cache = False model.config.pretraining_tp = 1 model.gradient_checkpointing_enable()</code>
Chargement du tokenizer
Le tokenzer est chargé et configuré:
<code>tokenizer = AutoTokenizer.from_pretrained(base_model, trust_remote_code=True) tokenizer.padding_side = 'right' tokenizer.pad_token = tokenizer.eos_token tokenizer.add_eos_token = True tokenizer.add_bos_token, tokenizer.add_eos_token</code>
ajoutant l'adaptateur
Un adaptateur LORA est ajouté pour un réglage fin efficace:
<code>model = prepare_model_for_kbit_training(model) peft_config = LoraConfig( lora_alpha=16, lora_dropout=0.1, r=64, bias="none", task_type="CAUSAL_LM", target_modules=["q_proj", "k_proj", "v_proj", "o_proj","gate_proj"] ) model = get_peft_model(model, peft_config)</code>
hyperparamètres
Les arguments de formation sont définis:
<code>training_arguments = TrainingArguments( output_, num_train_epochs=1, per_device_train_batch_size=4, gradient_accumulation_steps=1, optim="paged_adamw_32bit", save_steps=25, logging_steps=25, learning_rate=2e-4, weight_decay=0.001, fp16=False, bf16=False, max_grad_norm=0.3, max_steps=-1, warmup_ratio=0.03, group_by_length=True, lr_scheduler_type="constant", report_to="wandb" )</code>
Formation SFT
Le sfttrainer est configuré et la formation est lancée:
<code>!pip install -q -U transformers !pip install -q -U accelerate !pip install -q -U bitsandbytes</code>
Économiser et pousser le modèle
Le modèle affiné est sauvé et poussé vers le moyeu de face étreint:
<code>from transformers import AutoTokenizer, AutoModelForCausalLM, BitsAndBytesConfig, pipeline import torch bnb_config = BitsAndBytesConfig( load_in_4bit=True, bnb_4bit_quant_type="nf4", bnb_4bit_use_double_quant=True, )</code>
Évaluation du modèle
Les performances du modèle sont évaluées à l'aide de poids et de biais. Des exemples d'inférence sont fournis.
fusion de l'adaptateur
L'adaptateur est fusionné avec le modèle de base, et le modèle résultant est poussé vers le visage étreint.
Accès au modèle affiné
Le modèle fusionné est chargé de la face étreinte et l'inférence est démontrée.
Conclusion
Le didacticiel se termine par un résumé des capacités de Mistral 7B et un récapitulatif des étapes liées à l'accès, à l'affinement et au déploiement du modèle. Les ressources et les FAQ sont également incluses. L'accent est mis sur la fourniture d'un guide pratique pour que les utilisateurs travaillent avec ce puissant modèle de langue.
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!

La crise de la capacité en plein essor sur le lieu de travail, exacerbé par l'intégration rapide de l'IA, exige un changement stratégique au-delà des ajustements progressifs. Ceci est souligné par les conclusions de la WTI: 68% des employés ont du mal avec la charge de travail, ce qui mène à Bur

Argument de la salle chinoise de John Searle: un défi à la compréhension de l'IA L'expérience de pensée de Searle se demande directement si l'intelligence artificielle peut vraiment comprendre la langue ou posséder une véritable conscience. Imaginez une personne, ignorant des chines

Les géants de la technologie chinoise tracent un cours différent dans le développement de l'IA par rapport à leurs homologues occidentaux. Au lieu de se concentrer uniquement sur les références techniques et les intégrations API, ils privilégient les assistants de l'IA "Ai-Ai" - AI T

MCP: Empower les systèmes AI pour accéder aux outils externes Le protocole de contexte du modèle (MCP) permet aux applications d'IA d'interagir avec des outils externes et des sources de données via des interfaces standardisées. Développé par anthropique et soutenu par les principaux fournisseurs d'IA, MCP permet aux modèles de langue et aux agents de découvrir des outils disponibles et de les appeler avec des paramètres appropriés. Cependant, il existe certains défis dans la mise en œuvre des serveurs MCP, y compris les conflits environnementaux, les vulnérabilités de sécurité et le comportement multiplateforme incohérent. L'article de Forbes "Le protocole de contexte du modèle d'Anthropic est une grande étape dans le développement des agents de l'IA", auteur: Janakiram Msvdocker résout ces problèmes par la conteneurisation. Doc construit sur l'infrastructure Docker Hub

Six stratégies employées par des entrepreneurs visionnaires qui ont exploité des technologies de pointe et un sens des affaires astucieux pour créer des entreprises très rentables et évolutives tout en gardant le contrôle. Ce guide est destiné aux aspirants entrepreneurs visant à construire un

Le nouvel outil Ultra HDR de Google Photos: un changeur de jeu pour l'amélioration de l'image Google Photos a introduit un puissant outil de conversion Ultra HDR, transformant des photos standard en images vibrantes et à grande échelle. Cette amélioration profite aux photographes

L'architecture technique résout les défis d'authentification émergents Le centre d'identité agentique aborde un problème que de nombreuses organisations ne découvrent que après avoir commencé à mettre en œuvre l'agent d'IA que les méthodes d'authentification traditionnelles ne sont pas conçues pour la machine.

(Remarque: Google est un client consultatif de mon entreprise, Moor Insights & Strategy.) AI: de l'expérience à la fondation d'entreprise Google Cloud Next 2025 a présenté l'évolution de l'IA de la fonctionnalité expérimentale à un composant central de la technologie d'entreprise, Stream


Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Listes Sec
SecLists est le compagnon ultime du testeur de sécurité. Il s'agit d'une collection de différents types de listes fréquemment utilisées lors des évaluations de sécurité, le tout en un seul endroit. SecLists contribue à rendre les tests de sécurité plus efficaces et productifs en fournissant facilement toutes les listes dont un testeur de sécurité pourrait avoir besoin. Les types de listes incluent les noms d'utilisateur, les mots de passe, les URL, les charges utiles floues, les modèles de données sensibles, les shells Web, etc. Le testeur peut simplement extraire ce référentiel sur une nouvelle machine de test et il aura accès à tous les types de listes dont il a besoin.

SublimeText3 Linux nouvelle version
Dernière version de SublimeText3 Linux

DVWA
Damn Vulnerable Web App (DVWA) est une application Web PHP/MySQL très vulnérable. Ses principaux objectifs sont d'aider les professionnels de la sécurité à tester leurs compétences et leurs outils dans un environnement juridique, d'aider les développeurs Web à mieux comprendre le processus de sécurisation des applications Web et d'aider les enseignants/étudiants à enseigner/apprendre dans un environnement de classe. Application Web sécurité. L'objectif de DVWA est de mettre en pratique certaines des vulnérabilités Web les plus courantes via une interface simple et directe, avec différents degrés de difficulté. Veuillez noter que ce logiciel

ZendStudio 13.5.1 Mac
Puissant environnement de développement intégré PHP

Navigateur d'examen sécurisé
Safe Exam Browser est un environnement de navigation sécurisé permettant de passer des examens en ligne en toute sécurité. Ce logiciel transforme n'importe quel ordinateur en poste de travail sécurisé. Il contrôle l'accès à n'importe quel utilitaire et empêche les étudiants d'utiliser des ressources non autorisées.
