fonchat-goldfish — petit modèle de conversation en fon (Fongbé), int8 — version 2

Un tout petit modèle (39 millions de paramètres, 44 Mo) qui tient de courts échanges en fon : salutations, nouvelles, remerciements, au revoir, petites questions du quotidien. Il est obtenu par fine-tuning complet de goldfish-models/fon_latn_10mb (architecture GPT-2), puis quantifié en int8 au format CTranslate2. Il tourne sur un simple processeur, hors connexion.

Auteur : AWADEME Ronaldo — Finanfa Tech

🇬🇧 English summary: A tiny (39M parameters, 44 MB, int8 CTranslate2) conversational model (version 2) for Fon (Fongbe, Benin), fully fine-tuned from Goldfish fon_latn_10mb. It handles short everyday exchanges (greetings, thanks, small talk). The core dialogues were proofread and corrected by a native speaker. Research-grade, version 1, non-commercial (CC-BY-NC-4.0). It is not a knowledge assistant: it answers short conversational turns only.

⚠️ À lire avant d'utiliser

  • Version 1, modèle de recherche. Il répond bien aux salutations et aux échanges très courts ; au-delà, il produit souvent du fon fluide mais hors sujet.
  • Ce n'est pas un assistant de connaissances : il ne sait ni répondre à des questions de faits, ni traduire, ni raisonner. Ne l'utilisez pas pour des informations médicales, juridiques ou financières.
  • Écrivez en minuscules : il a été entraîné sur du texte en minuscules et répond en minuscules.
  • Fenêtre courte : 512 jetons ; les tours les plus anciens sont oubliés.
  • Usage non commercial uniquement (CC-BY-NC-4.0).
  • Il est amélioré par versions successives, à mesure que le corpus relu grandit (voir « Versions »).

Exemples (réponses réelles de la version 2)

Message Réponse
kùdo zǎnzǎn kùdo zǎnzǎn! nɛ̌ a ka ɖe gbɔn?
kùdo gbada gbadanu ɖagbe nɔvi ce. nɛ mi ɖe gbɔn gbadanu elɔ?
a ɖò ganji à? ɛɛn, un ɖò ganji, é na cɛ nu we.
fitɛ a xwe? un ɖo aximɛ yi wɛ.
é yi sɔ é yi sɔ, enyi mawu jló.

Les réponses varient d'un essai à l'autre (échantillonnage) et certaines ne répondent pas à la question (exemples observés : « xovɛ sin mi » (j'ai faim) ou « nabi wɛ? » (c'est combien ?) reçoivent souvent une réponse sans rapport).

Utilisation

pip install ctranslate2 tokenizers huggingface_hub
hf download finanfa-tech/fonchat-goldfish-v1 --local-dir fonchat-goldfish-v1   # dernière version
python fonchat-goldfish-v1/chat.py                       # discussion interactive
python fonchat-goldfish-v1/chat.py --prompt "kùdo gbada" # une seule réponse

En Python :

import ctranslate2
from tokenizers import Tokenizer

d = "fonchat-goldfish-v1"
gen = ctranslate2.Generator(d, device="cpu", compute_type="int8")
tok = Tokenizer.from_file(d + "/tokenizer.json")

def repondre(historique):  # [{"role": "user"|"assistant", "content": "..."}], en minuscules
    texte = "[CLS]"
    for m in historique:
        if m["role"] == "user":
            texte += "Utilisateur :\n" + m["content"] + "\n"
        else:
            texte += "Assistant :\n" + m["content"] + "[SEP]\n"
    texte += "Assistant :"
    jetons = tok.encode(texte, add_special_tokens=False).tokens
    r = gen.generate_batch([jetons], max_length=80, include_prompt_in_result=False, end_token="[SEP]",
                           sampling_temperature=0.5, sampling_topp=0.9, sampling_topk=0, repetition_penalty=1.1)[0]
    return tok.decode(r.sequences_ids[0], skip_special_tokens=True).strip()

print(repondre([{"role": "user", "content": "kùdo gbada"}]))

Le format du prompt doit être respecté exactement (Utilisateur : / Assistant :, fin de réponse [SEP]).

Données d'entraînement

Source Volume Validation
Noyau de mini-dialogues fon, lots 1 et 2 (salutations, politesse, repas, marché, santé, famille, déplacements, travail, météo, sentiments…) 390 dialogues, 1 218 répliques Relu et corrigé ligne par ligne par AWADEME Ronaldo, locuteur natif du fon (584 répliques modifiées)
Noyau, lot 3 (partiel) : 50 dialogues relus et corrigés 50 dialogues, 160 répliques Relu par AWADEME Ronaldo (150 répliques modifiées)
Noyau, lot 3 : 50 dialogues écrits par l'auteur (rituels de salutation, accueil, voisinage, bénédictions) 50 dialogues, 200 répliques Écrits directement en fon par AWADEME Ronaldo
Scènes de dialogue plus longues 1 768 conversations Traduction automatique du français vers le fon, nettoyée automatiquement, relue seulement en petite partie

La partie « noyau » de l'entraînement est répétée 5 fois, soit 490 dialogues et 1 578 répliques au total. 800 répliques supplémentaires du lot 3 attendent encore la relecture et ne sont pas utilisées.

Entraînement

  • Base : goldfish-models/fon_latn_10mb (GPT-2, 4 couches, 512 dimensions, vocabulaire de 50 000 jetons, licence Apache 2.0).
  • Fine-tuning complet, 6 époques, taux d'apprentissage 3e-4 (cosinus), lot de 16, longueur maximale 512 jetons ; perte calculée uniquement sur les réponses de l'assistant ; meilleure époque retenue sur la validation.
  • Texte d'entraînement en minuscules. Quantification int8 après entraînement.

Évaluation

Mesure : bits par caractère de la réponse attendue (plus bas = mieux), avant quantification, sur des dialogues jamais vus à l'entraînement.

Modèle 40 dialogues du noyau (test fixe) 15 dialogues du lot 3
Même base, entraînée sans le noyau relu 2,38 —
Version 1 1,83 2,38
Version 2 1,75 1,89

Cette mesure dit que le modèle prédit mieux les réponses attendues ; elle ne remplace pas un jugement humain. La pertinence des réponses n'a été vérifiée par un locuteur que sur un petit nombre d'échanges.

Versions

  • Version 2 (2026-11-13) : ajout de 100 dialogues du lot 3 (50 relus, 50 écrits par l'auteur). Meilleure sur les salutations du soir et du matin, les rituels de politesse et l'accueil.
  • Version 1 (2026-11-11) : noyaux 1 et 2. Disponible via la révision v1 du dépôt (hf download finanfa-tech/fonchat-goldfish-v1 --revision v1).

Limites connues

  • Hors des thèmes du noyau, et même sur certains thèmes (argent, achats, faim), les réponses sont souvent hors sujet : ces thèmes sont dans la partie du lot 3 pas encore relue.
  • L'orthographe et les tons du fon ne sont pas homogènes dans les données ; le modèle reproduit ces variations.
  • Un seul relecteur : les formes retenues (par exemple « kùdo zǎnzǎn », « kùdo gbada ») sont ses choix.
  • Pas de majuscules, pas de noms propres fiables.

Licence

CC-BY-NC-4.0 (usage non commercial, attribution). Le modèle de base Goldfish est sous licence Apache 2.0.

Citation

AWADEME Ronaldo, Finanfa Tech. fonchat-goldfish : petit modèle de conversation en fon, version 2, 2026. https://huggingface.co/finanfa-tech/fonchat-goldfish-v1

Downloads last month
67
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for finanfa-tech/fonchat-goldfish-v1

Finetuned
(1)
this model

Collection including finanfa-tech/fonchat-goldfish-v1