Accéder au contenu principal

DCLM-7B d'Apple : configuration, exemple d'utilisation, affinage

Commencez avec le grand modèle de langage DCLM-7B d'Apple et découvrez comment le configurer, l'utiliser et l'affiner pour des tâches spécifiques.
Actualisé 19 sept. 2026  · 9 min lire

Explorer avec l’IA

ChatGPTClaudePerplexity

Apple est depuis longtemps un pionnier de la technologie, fixant en permanence la barre de l'innovation. Récemment, Apple a publié un nouveau grand modèle de langage (LLM) open source, DCLM-7B, à disposition de la communauté.

Il est encourageant de voir un acteur majeur comme Apple proposer son nouveau modèle en open source, un choix qui s'inscrit dans la tendance de fond à démocratiser l'IA et à rendre des outils puissants accessibles au plus grand nombre.

Développer des applications d'IA

Apprenez à créer des applications d'IA à l'aide de l'API OpenAI.
Commencez À Upskiller Gratuitement

DCLM-7B : fonctionnalités et capacités clés

Dernière contribution d'Apple, le modèle de base DCLM-7B (DataComp for Language Models) s'impose comme une référence notable dans le domaine des LLM. Voyons ses principaux atouts.

Transformer à décodeur seul

Le modèle DCLM-7B s'appuie sur une architecture Transformer à décodeur seul : le modèle prédit un jeton à la fois et chaque jeton généré est réinjecté pour produire le suivant.

Cette architecture est optimisée pour générer un texte fluide et pertinent dans son contexte, ce qui la rend idéale pour de nombreuses tâches de traitement du langage naturel. C'est la même architecture que celle des modèles de pointe comme ChatGPT et GPT-4o, preuve de son efficacité pour comprendre et générer un texte proche du langage humain.

Open source

Le modèle DCLM-7B est disponible pour la recherche et le développement sous la licence Apple Sample Code. Cette approche open source favorise l'adoption et la collaboration au sein de la communauté IA.

En rendant ce modèle accessible, Apple soutient la démocratisation de l'IA et permet aux chercheurs et développeurs du monde entier d'expérimenter et de bâtir sur ce modèle de base.

7 milliards de paramètres

Avec 7 milliards de paramètres, DCLM-7B trouve un bon compromis entre performances et efficacité de calcul.

Cette taille autorise l'exécution sur la plupart des configurations hautes RAM/VRAM et sur les plateformes cloud, ce qui le rend polyvalent et accessible pour de nombreux usages. Le grand nombre de paramètres lui permet de capturer des schémas linguistiques complexes et d'élargir l'éventail des tâches qu'il peut mener.

Entraîné sur un jeu de données massif

Le modèle a été entraîné sur un vaste jeu de données de 2,5 billions de jetons, offrant une base solide pour de nombreuses tâches de langage. Cela permet à DCLM-7B de comprendre et de générer du texte avec un haut niveau de précision et de pertinence. Par ailleurs, cela en fait un bon candidat pour un affinage spécifique à une tâche, puisqu'il dispose d'une compréhension robuste de l'anglais.

Fenêtre de contexte

Le modèle de base DCLM-7B dispose d'une fenêtre de contexte de 2 048 jetons, ce qui lui permet de traiter des séquences de texte relativement longues. Même si cela reste modeste au regard des standards actuels, Apple a également publié une variante avec une fenêtre de 8 000 jetons.

Cette fenêtre étendue offre davantage de souplesse pour traiter de longues entrées, ce qui convient aux applications nécessitant l'analyse de textes ou documents volumineux, comme la génération augmentée par la recherche (RAG).

Fonctionnalités et capacités clés

Premiers pas avec DCLM-7B

Apple a rendu le modèle DCLM-7B compatible avec la bibliothèque transformers de Hugging Face, ce qui facilite son accès et son utilisation.

Vous trouverez la page du modèle sur Hugging Face et des informations complémentaires dans le dépôt GitHub. Pour utiliser et accéder au modèle, installez la bibliothèque transformers :

pip install transformers

Nous aurons également besoin d'installer le framework open_lm :

pip install git+https://github.com/mlfoundations/open_lm.git

La version en pleine précision de DCLM-7B est volumineuse, environ 27,5 Go, et nécessite beaucoup de RAM ou de VRAM pour tourner. Vous aurez besoin d'une machine haut de gamme ou d'un environnement cloud. Pour ma part, j'utilise un notebook Google Colab premium avec 50 Go de RAM et un GPU L4.

Une fois les bibliothèques installées, nous pouvons commencer à utiliser le modèle.

DCLM-7B : exemple d'utilisation

Pour l'exemple, j'exécute un cas de base fourni sur la page Hugging Face du modèle. D'abord, importons les bibliothèques nécessaires :

from open_lm.hf import *
from transformers import AutoTokenizer, AutoModelForCausalLM

Ensuite, il faut télécharger et initialiser le tokenizer et le modèle (notez que, pour cet exemple, nous faisons tourner le modèle en pleine précision sur un CPU) :

tokenizer = AutoTokenizer.from_pretrained("apple/DCLM-Baseline-7B")
model = AutoModelForCausalLM.from_pretrained("apple/DCLM-Baseline-7B")

Enfin, exécutons l'invite d'exemple :

inputs = tokenizer(["Machine learning is"], return_tensors="pt")
gen_kwargs = {"max_new_tokens": 50, "top_p": 0.8, "temperature": 0.8, "do_sample": True, "repetition_penalty": 1.1}
output = model.generate(inputs['input_ids'], **gen_kwargs)
output = tokenizer.decode(output[0].tolist(), skip_special_tokens=True)

J'ai obtenu la sortie suivante :

[Machine learning is not the solution to everything, it just enables you to solve a problem that otherwise would have been impossible. The biggest challenge for me as a manager of an AI team was to identify those problems where machine learning can really add value and be successful.]

Utilisation avancée et affinage

L'affinage du modèle DCLM-7B permet de l'adapter à des tâches spécifiques et d'améliorer ses performances dans vos applications. Malheureusement, DCLM-7B n'est pas pris en charge par la bibliothèque peft de Hugging Face ; il faut donc utiliser la bibliothèque transformers pour l'affiner.

Sans des outils comme LoRA, affiner un modèle de cette taille demande d'énormes ressources, quasiment équivalentes à un entraînement complet depuis zéro. Je me contente donc d'esquisser ici le processus d'affinage sans l'exécuter pour en observer les résultats.

Préparer le jeu de données

Pour télécharger et utiliser un jeu de données ouvertement disponible, nous allons utiliser la bibliothèque datasets de Hugging Face. Installez-la avec la commande suivante :

pip install datasets

Une fois installée, importez et utilisez la fonction load_dataset. Pour cet exemple, j'utilise le jeu de données wikitext :

from datasets import load_dataset
dataset = load_dataset('wikitext', 'wikitext-2-raw-v1')

Nous devons maintenant tokenizer le jeu de données :

def tokenize_function(examples):
	return tokenizer(examples['text'], padding='max_length', truncation=True, max_length=512)
tokenized_datasets = dataset.map(tokenize_function, batched=True)

Nous sommes prêts à lancer l'affinage.

Affinage

Pour l'affinage, importez et initialisez les objets TrainingArguments et Trainer, puis exécutez la fonction train().

from transformers import TrainingArguments, Trainer
training_args = TrainingArguments(
	    report_to = "none",
	    output_dir="./results",
	    evaluation_strategy="epoch",
	    learning_rate=2e-5,  # Contrôle l'ampleur de la mise à jour des poids du modèle pendant l'entraînement
	    per_device_train_batch_size=2,  # Nombre d'échantillons par lot et par appareil en entraînement
	    per_device_eval_batch_size=2,  # Nombre d'échantillons par lot et par appareil en évaluation
	    num_train_epochs=3,  # Nombre de passages complets sur le jeu de données d'entraînement
	    weight_decay=0.01,  # Technique de régularisation pour éviter le surapprentissage
	)
trainer = Trainer(
	    model=model,
	    args=training_args,
	    train_dataset=tokenized_datasets['train'],
	    eval_dataset=tokenized_datasets['test'],
	    data_collator=data_collator,
	    tokenizer=tokenizer,
	)
trainer.train()

Conclusion

Dans l'ensemble, DCLM-7B d'Apple constitue une avancée notable dans le paysage des modèles de langage open source, offrant aux chercheurs et développeurs un outil puissant pour diverses tâches de NLP.

En tant que modèle Transformer à décodeur seul, il est optimisé pour la génération de texte, avec des sorties cohérentes et pertinentes. Sa disponibilité sous la licence Apple Academic Software License Agreement encourage encore davantage la collaboration et l'innovation au sein de la communauté IA.

Obtenez une certification de haut niveau en matière d'IA

Démontrez que vous pouvez utiliser l'IA de manière efficace et responsable.

Dimitri Didmanidze's photo
Author
Dimitri Didmanidze
LinkedIn
Je suis Dimitri Didmanidze, un data scientist qui poursuit actuellement un master en mathématiques avec une spécialisation en apprentissage automatique. Mon parcours académique a également inclus des recherches sur les capacités des modèles basés sur les transformateurs et l'enseignement au niveau universitaire, ce qui a enrichi ma compréhension de concepts théoriques complexes. J'ai également travaillé dans le secteur bancaire, où j'ai appliqué ces principes pour relever des défis concrets en matière de données.
Sujets
Intelligence artificielle
Grands modèles linguistiques

Formez-vous à l'IA avec ces cours !

Cours

Développement d'applications LLM avec LangChain

3 h
50.6K
Découvrez comment créer des applications alimentées par l'IA en utilisant des LLM, des invites, des chaînes et des agents dans LangChain.
Afficher les détailsRight Arrow
Commencer Le Cours
Voir plusRight Arrow