Downloads · 30 days
17
25% of all-time downloads
gpnd/llama-falc
llama-falc is a text generation model from gpnd. Use it when you need the model to write or continue text. The card lists the license as llama3.2.
llama-falc est un modèle fine-tuné à partir de Llama 3.2 3B Instruct, entraîné sur des paires de textes administratifs français ↔ versions FALC (Facile À Lire et à Comprendre).
Downloads · 30 days
17
25% of all-time downloads
All-time downloads
68
Public
Parameters
3.2B
12.9 GB on disk
Likes
0
Public
Click a slice to open those files.
.safetensors6.4 GB · 100%
From the Hugging Face model README
llama-falc est un modèle fine-tuné à partir de Llama 3.2 3B Instruct, entraîné sur des paires de textes administratifs français ↔ versions FALC (Facile À Lire et à Comprendre).
⚠️ Note honnête : les résultats de ce modèle sont décevants. Ce repository documente un projet d'apprentissage complet, incluant les échecs et les décisions prises en cours de route. Le détail est dans la section Retour d'expérience.
Le FALC est une méthode normée de simplification du langage, définie par 53 règles européennes (guide Unapei), visant à rendre l'information accessible aux personnes en situation de handicap cognitif, d'illettrisme ou non-francophones. Obligation légale pour le service public français depuis 2005.
from mlx_lm import load, generate
model, tokenizer = load("gpnd/llama-falc")
texte_source = "Dans le cadre de la mise en œuvre des dispositions réglementaires relatives à l'attribution des prestations sociales, il convient de constituer un dossier de demande auprès des services compétents."
prompt = f"[INST] Transforme ce texte administratif en FALC.\n\nTexte :\n{texte_source} [/INST]"
response = generate(model, tokenizer, prompt=prompt, max_tokens=512)
print(response)
L'objectif initial était de constituer un dataset de paires alignées {texte administratif → version FALC} à partir de sites gouvernementaux français.
Un bot de scraping a été construit avec Firecrawl, en utilisant la fonction map pour identifier des sites proposant une version FALC et une version standard en HTML. 22 pages ont été détectées, chacune avec sa contrepartie.
Problème rencontré : 22 pages entières (x2) dépassent la fenêtre de contexte du LLM utilisé pour l'alignement. Le contenu a dû être fractionné en éléments plus petits avant traitement.
Un script Python a été développé pour transformer les 22 pages en paires exploitables pour le fine-tuning. Claude Sonnet 4.5 a été utilisé comme modèle d'alignement.
Problème principal : la qualité des paires générées s'est révélée insuffisante. Les correspondances entre textes sources et versions FALC manquaient de précision — une correspondance thématique n'est pas une correspondance d'alignement. Même après amélioration du code Python pour affiner les paires, la qualité est restée limitée.
Insight clé : la rareté des paires gold strictement alignées sur internet est le vrai verrou du problème. La plupart des pages FALC en ligne sont des adaptations thématiques, pas des traductions directes d'un texte source identifiable.
Plusieurs environnements ont été testés avant de trouver une configuration fonctionnelle :
| Environnement | Résultat |
|---|---|
| AutoTrain HuggingFace | Fonctionnalité supprimée |
| Google Colab (GPU T4) | Échec de configuration |
| VSCode + kernel GPU T4 | Échec de configuration |
| VSCode + MLX (Apple Silicon) | ✅ Fonctionnel |
Le modèle retenu est Llama 3.2 3B Instruct (bf16) — choix guidé par les contraintes matérielles (Apple Silicon, MLX framework) plutôt que par une évaluation comparative.
Les outputs du modèle fine-tuné sont de mauvaise qualité. Le modèle ne produit pas de textes FALC conformes aux règles européennes.
Hypothèses sur les causes d'échec :
Ce projet est documenté tel quel, y compris l'échec, parce que le processus a de la valeur indépendamment du résultat :
Une V2 défendable nécessiterait : 50+ paires gold validées manuellement + filtre qualité automatique (rule checker Python) avant entraînement + modèle de base plus grand (7B minimum).
map)gpnd — PM IA, projet portfolio d'apprentissage du cycle ML complet.