Qwen2.5droitnumeriquefrancais
Développé et entraîné par Treestan325
Ce modèle est un ajustement fin (fine-tuning) de Qwen2.5-3B-Instruct spécialisé dans le droit numérique français. Il a été entraîné de manière optimisée sur le GPU T4 gratuit de Google Colab à l'aide de la bibliothèque Unsloth.
Le modèle est conçu pour agir en tant qu'expert-conseil en droit du numérique français, en fournissant des réponses structurées et précises fondées sur des sources académiques et juridiques officielles.
⚡ Caractéristiques techniques de l'entraînement
Le modèle a été entraîné selon la configuration optimisée suivante :
- Base de départ : unsloth/Qwen2.5-3B-Instruct (chargé en quantification de précision 4-bit QLoRA pour économiser la mémoire sur T4 GPU).
- Adaptateurs LoRA (Target Modules) : LoRA appliqué sur l'intégralité des modules de projection (
q_proj,k_proj,v_proj,o_proj,gate_proj,up_proj,down_proj) avec un rang $r = 16$ et un $\alpha = 16$. - Longueur de contexte maximale (
max_seq_length) : 1024 tokens (calibré pour optimiser l'utilisation de la VRAM active). - Optimisation de la VRAM : Batch size par périphérique de 1 avec accumulation de gradients de 8 (taille globale de lot de 8) pour un apprentissage stable et sans crash.
- Hyperparamètres :
- Taux d'apprentissage (Learning Rate) :
2e-4 - Ordonnanceur (Scheduler) :
linear - Optimiseur :
adamw_8bit - Étapes de Warmup : 5
- Taux d'apprentissage (Learning Rate) :
🚀 Guide d'utilisation
Option 1 : Utilisation avec Hugging Face transformers
Vous pouvez charger et utiliser le modèle directement en Python avec la bibliothèque transformers :
from transformers import AutoModelForCausalLM, AutoTokenizer
model_name = "Treestan325/Qwen2.5droitnumeriquefrancais"
model = AutoModelForCausalLM.from_pretrained(
model_name,
device_map="auto",
torch_dtype="auto"
)
tokenizer = AutoTokenizer.from_pretrained(model_name)
messages = [
{"role": "system", "content": "Tu es un assistant expert en droit numérique français. Réponds avec précision en te basant sur les cours officiels."},
{"role": "user", "content": "Quelle est la différence fondamentale entre l'exigence d'écrit ad probationem et ad validitatem en droit des contrats électroniques ?"}
]
inputs = tokenizer.apply_chat_template(
messages,
tokenize=True,
add_generation_prompt=True,
return_tensors="pt"
).to("cuda")
outputs = model.generate(inputs, max_new_tokens=512, use_cache=True)
response = tokenizer.decode(outputs[0], skip_special_tokens=True)
print(response)
Option 2 : Si vous utilisez la version quantifiée GGUF (droit-numerique-model-q4)
Si vous compilez ou utilisez le fichier GGUF exporté localement :
Avec Ollama
- Créez un
Modelfile:
FROM ./droit-numerique-model-q4.Q4_K_M.gguf
PARAMETER temperature 0.6
PARAMETER top_p 0.95
PARAMETER num_ctx 1024
SYSTEM "Tu es un assistant expert en droit numérique français. Réponds avec précision en te basant sur les cours officiels."
TEMPLATE """{{ if .System }}<|im_start|>system
{{ .System }}<|im_end|>
{{ end }}{{ if .Prompt }}<|im_start|>user
{{ .Prompt }}<|im_end|>
{{ end }}<|im_start|>assistant
{{ .Response }}<|im_end|>"""
- Chargez-le dans Ollama :
ollama create droit-numerique-model -f Modelfile
ollama run droit-numerique-model
🛠️ Recommandations d'échantillonnage (Sampling)
| Paramètre | Valeur recommandée | Justification |
|---|---|---|
temperature |
0.6 | Maintient un bon équilibre entre cohérence et précision juridique. |
top_p |
0.95 | Concentre la génération sur les tokens les plus qualitatifs. |
max_new_tokens |
512 | Offre une marge suffisante pour des explications juridiques complètes. |
🎯 Domaines d'expertise du modèle
- Droit des Contrats Électroniques : Analyse et rédaction de clauses contractuelles en ligne, signatures électroniques et conditions générales.
- Preuve Électronique : Régime juridique de l'écrit électronique, conditions de validité (ad validitatem) et de preuve (ad probationem).
- Protection des Données : Principes généraux du RGPD, droits des personnes concernées et sécurité des données.
⚠️ Limites et Avertissements
- Contexte limité à 1024 tokens : Pour préserver la qualité de la génération, évitez de lui fournir de trop longs documents d'un seul coup.
- Absence de valeur de conseil juridique officiel : Ce modèle est proposé uniquement à des fins d'expérimentation et d'éducation. Ses réponses ne constituent pas un avis juridique professionnel et ne sauraient engager la responsabilité de son auteur.
📜 Licence et Remerciements
- Licence : Apache-2.0 (héritée de Qwen2.5-3B).
- Modèle de base : Qwen/Qwen2.5-3B-Instruct.
- Entraînement : Accéléré par la bibliothèque Unsloth.