YAML Metadata Warning:empty or missing yaml metadata in repo card
Check out the documentation for more information.
airtel-2.1m
Modele de langage Gopu entraine depuis le jeu de conversations OpenAssistant OASST1. Le nom indique la taille visee : l'architecture creee compte exactement 2 106 880 parametres.
Architecture
- Vocabulaire BPE de 1 024 tokens, appris sur le corpus anglais/francais.
- 8 couches Transformer, dimension cachee 128, 8 tetes d'attention.
- Contexte maximum de 2 816 tokens, MLP de dimension 512 et 2 tetes de prediction future.
- Poids et configuration exportes dans ce dossier par Rust :
model.safetensors,config.json, fichiers tokenizer et vocabulaire, template de chat et code d'architecture.
Donnees et conversion
Source : OpenAssistant/oasst1, export
2023-04-12_oasst_ready.messages.jsonl.gz, sous licence Apache-2.0. L'export original telecharge,
sa licence et sa fiche Hugging Face sont conserves dans /root/airtel-2.1m-data/.
Le corpus d'apprentissage data/train.txt contient les paires prompt/reponse en anglais (en) et en
francais (fr), en ne gardant que les reponses selectionnees de rang 0 et les messages non supprimes.
Chaque paire est convertie au format du projet :
<|user|>
Question
</|user|>
<|assistant|>
Reponse
</|assistant|>
<|eos|>
Le convertisseur est prepare_oasst.py. Pour regenerer le corpus depuis l'archive :
/root/.venvs/gopu-lm/bin/python prepare_oasst.py \
/root/airtel-2.1m-data/oasst_ready.messages.jsonl.gz data/train.txt
Entrainement
Le paquet gopu-lm est installe dans /root/.venvs/gopu-lm. Pour lancer ou reprendre l'entrainement :
cd /root/airtel-2.1m
/root/.venvs/gopu-lm/bin/python train_model.py
Le script utilise les 3 920 599 tokens d'entrainement, pack_len=256, batch 1 et lr=3e-4, par sessions
d'environ cinq minutes. Rust actualise model.safetensors toutes les 25 etapes, mais conserve le dernier
checkpoint, pas celui ayant la meilleure perte de validation. Les mesures de fin de session sont dans
training_report.json.
Comparaison PyTorch
train_model_torch.py reprend la meme architecture (2 106 880 parametres), le meme tokenizer, le meme
corpus, le meme masque des prompts et les tetes auxiliaires de prediction future. Pour lancer ou reprendre
l'entrainement CPU :
cd /root/airtel-2.1m
/root/.venvs/gopu-lm/bin/python train_model_torch.py
Le dossier airtel-2.1m-pytorch/ contient le meilleur model.safetensors selon la perte de validation,
mis a jour seulement quand celle-ci baisse. training_state.pt conserve les poids courants, l'etat AdamW,
le compteur d'etapes et les graines aleatoires pour reprendre automatiquement. training_report.json
consigne les pertes et l'etape du meilleur checkpoint. Pour repartir de zero, utiliser --fresh.
Charger le modele
/root/.venvs/gopu-lm/bin/python - <<'PY'
from gopu_lm import Model
model = Model.load_model("/root/airtel-2.1m")
print(model.info)
print(model.askInto("Bonjour", temperature=0))
PY
Les poids sont un modele experimental de petite taille ; ils ne sont pas un modele officiel d'Airtel.
- Downloads last month
- -