Skip to main content

🚀 Mimo Language Model

Mimo est un modèle de langage AI pour exceller à la fois en génération de code et en conversations naturelles.
Il est issu d'un mélange de datasets puissants.

Mimo


📑 Table des matières


✨ Points forts de Mimo

  • 🔧 Optimisé pour le code : génération fiable de scripts Python, JS, etc.
  • 💬 Excellente conversation : réponses naturelles et contextualisées.
  • ⚡ Compatibilité multiplateforme : fonctionne sur Mac, PC et VSCode.
  • 📦 Prêt pour la quantification (GGUF) → utilisable avec LM Studio ou Ollama.

📦 Installation

Clonez le dépôt et installez les dépendances dans un environnement virtuel :

# Cloner le dépôt
git clone https://github.com/eurocybersecurite/Mimo-llm.git
cd Mimo-llm

# Créer et activer un environnement virtuel (recommandé)
python3 -m venv .venv
source .venv/bin/activate  # Sur Linux/macOS
# Ou sur Windows : .\.venv\Scripts\activate

# Installer les dépendances
pip install -r requirements.txt

⚠️ Assurez-vous d’avoir git-lfs installé pour gérer les poids du modèle.


🔑 Configuration

Avant toute utilisation, configurez votre Hugging Face Token :

export HF_TOKEN="votre_token_hugging_face"

(Remplacez "votre_token_hugging_face" par votre véritable token.)


🏋️ Fine-tuning

Lancez le fine-tuning avec :

python fine_tune_mimo.py

IMPORTANT : Remplacez example.jsonl par votre propre fichier de dataset avant d'exécuter ce script. Le fichier example.jsonl contient quelques exemples fictifs à des fins de démonstration.

  • Utilise vos données perso (example.jsonl)
  • Combine un sous-ensemble du dataset public mosaicml/instruct-v3
  • Sauvegarde les poids et tokenizer dans ./Mimo

🧑‍💻 Exemples d’utilisation

Génération de code

# Assurez-vous que le modèle et le tokenizer sont chargés correctement
# Exemple d'inférence pour la génération de code
prompt_code = "Écris une fonction Python pour calculer la somme des éléments d'une liste."
inputs_code = tokenizer(prompt_code, return_tensors="pt").to(model.device)

with torch.no_grad():
    outputs_code = model.generate(
        **inputs_code,
        max_new_tokens=100,
        pad_token_id=tokenizer.eos_token_id
    )
generated_code = tokenizer.decode(outputs_code[0], skip_special_tokens=True)
print("--- Génération de Code ---")
print(generated_code)

Conversation

# Exemple d'inférence pour la conversation
prompt_conversation = "Quelle est la meilleure façon d'apprendre une nouvelle langue ?"
inputs_conversation = tokenizer(prompt_conversation, return_tensors="pt").to(model.device)

with torch.no_grad():
    outputs_conversation = model.generate(
        **inputs_conversation,
        max_new_tokens=50,
        pad_token_id=tokenizer.eos_token_id
    )
generated_conversation = tokenizer.decode(outputs_conversation[0], skip_special_tokens=True)
print("\n--- Génération de Conversation ---")
print(generated_conversation)

📊 Performances comparatives

Modèle Code (Python) Conversation Mémoire requise
GPT-Neo 1.3B ⭐⭐ ⭐⭐ ~12 Go
DeepSeek-Qwen-1.5B (base) ⭐⭐⭐ ⭐⭐⭐ ~10 Go
Mimo-1.5B (fine-tuned) ⭐⭐⭐⭐ ⭐⭐⭐⭐ ~8 Go (quantisé)

➡️ Mimo surpasse la version de base sur les benchmarks internes (code + QA).

Mimo Performance


🧠 Visualisations comparatives

Afin d’illustrer les forces de Mimo par rapport aux autres modèles, plusieurs visualisations ont été générées à partir de benchmarks internes (Septembre 2025).

🔹 1. Radar de performance

Radar Performance

Ce diagramme radar compare les capacités globales (Code, Conversation, Mémoire, Raisonnement).
➡️ Mimo domine sur tous les axes, montrant son équilibre entre compréhension et génération.


🔹 2. Entraînement & efficacité

Entraînement

Comparaison des métriques d’entraînement :

  • ⏱ Temps d’entraînement plus court
  • 📉 Perte finale plus faible
  • 💾 Mémoire optimisée

➡️ Mimo apprend plus vite et avec moins de ressources.


🔹 3. Classification & Clustering

Classification & Clustering

Ce graphique montre comment chaque modèle regroupe les données en classes.
➡️ Les clusters prédits par Mimo sont plus nets et bien séparés, preuve de sa meilleure capacité de généralisation.


🔹 4. Précision en classification

Métriques de classification

Comparaison des scores : Accuracy, Recall, F1-score.
➡️ Mimo garde une avance claire sur la précision et la robustesse des prédictions.


🔹 5. Raisonnement avancé

Raisonnement Mimo

Testé sur des tâches de raisonnement logique et contextuel.
➡️ Mimo démontre une supériorité dans la résolution de problèmes complexes.


🔹 6. Conscience artificielle (concept)

Conscience artificielle

Visualisation heatmap sur 5 axes : Perception, Mémoire, Raisonnement, Créativité, Auto-adaptation.
➡️ Mimo émerge comme le modèle le plus “conscient”, avec des scores nettement supérieurs aux autres.


📂 Structure du dépôt

Mimo/
├── README.md
├── assets/mimo.png
├── mohamed.jsonl
├── fine_tune_mimo.py
├── requirements.txt
└── .gitignore

🛠️ Intégration dans VSCode

  1. Clonez le dépôt :
    git clone https://github.com/votre-utilisateur/mimo-llm.git
    cd mimo-llm
    
  2. Installez les dépendances :
    pip install -r requirements.txt
    
  3. Exécutez soit :
    • fine_tune_mimo.py → pour l’entraînement
    • un script d’inférence personnalisé

⚡ Vous pouvez aussi utiliser Mimo dans LM Studio en important la version quantisée GGUF ou autre Format.


📧 Auteur

Metadata

Release files for mimo-llm 0.1.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mimo-llm 0.1.4
File Size Uploaded
mimo_llm-0.1.4.tar.gz 9.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for mimo-llm 0.1.4
File Interpreter ABI Platform
mimo_llm-0.1.4-py3-none-any.whl Python 3 none any Details

Total release size: 17.6 kB

Release files / mimo_llm-0.1.4.tar.gz

Download URL mimo_llm-0.1.4.tar.gz
Size 9.0 kB
Tags Source
SHA-256 checksum
How to use checksums
8509248ac0858eebf08906d9da767c0ca276c1a021049853f9a7a5fc1b6fa424
BLAKE2b-256 checksum
How to use checksums
9f0f4ad33d5ae9d08b67f5070ab29092cd67f37872e0d6fd892270e5d1134621
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.6

Release files / mimo_llm-0.1.4-py3-none-any.whl

Download URL mimo_llm-0.1.4-py3-none-any.whl
Size 8.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
993caa5e359fef910ab7c8706f3b0654f0f7c55973446b47f4cd3c3e9a00ed29
BLAKE2b-256 checksum
How to use checksums
16e41ad3335b7bb3ef160550ded6d9936a0dfd54c551ce637d7513fce4dc07b5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.6

Release history Release notifications | RSS feed

This release

0.1.4 This release

2 release files

0.1.3

2 release files

0.1.2

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page