Fiche Modèle : Cygnis Alpha
Informations sur le Modèle
Description
Cygnis Alpha est un modèle de langage léger (SLM - Small Language Model) de 1,7 milliard de paramètres, basé sur l'architecture de SmolLM2-1.7B-Instruct.
Ce modèle a été spécifiquement "fine-tuné" (entraîné sur des instructions) pour développer une identité propre : celle d'un assistant IA nommé Cygnis Alpha, créé par Simonc-44. Il est conçu pour être poli, concis et efficace.
L'objectif principal de Cygnis Alpha est de fournir une expérience d'IA conversationnelle fluide sur du matériel aux ressources limitées. Grâce à une quantification avancée au format GGUF (Q4_K_M), il peut fonctionner intégralement sur le processeur (CPU) d'un ordinateur portable standard, sans nécessiter de carte graphique dédiée (GPU), tout en conservant une vitesse d'inférence élevée.
Entrées et Sorties
- Entrée : Chaîne de texte (questions, instructions de chat). Il est optimisé pour le français.
- Sortie : Texte généré en réponse à l'entrée, respectant l'identité de l'assistant.
- Contexte : Supporte une fenêtre de contexte allant jusqu'à 2048 tokens.
Spécifications Techniques
| Caractéristique | Détail |
|---|---|
| Architecture de base | Llama (SmolLM2) |
| Paramètres | ~1.7 Milliards |
| Format | GGUF (Quantification Q4_K_M) |
| Taille du fichier | ~1.1 Go |
| Matériel Requis (Min.) | CPU avec 4 Go de RAM |
| Méthode d'entraînement | Fine-tuning LoRA (Low-Rank Adaptation) via Unsloth |
Utilisation
Vous pouvez utiliser Cygnis Alpha de deux manières principales : en local sur votre machine (recommandé pour la confidentialité et la vitesse) ou via le cloud avec Google Colab.
1. Utilisation Locale (CPU)
C'est la méthode idéale pour profiter de la légèreté du modèle sans dépendre d'une connexion internet.
Prérequis : Un logiciel compatible GGUF comme LM Studio, Ollama ou GPT4All.
Étapes :
- Téléchargez le fichier
SmolLM2-1.7B-Instruct.Q4_K_M.ggufdepuis l'onglet "Files and versions" de ce dépôt. - Chargez le fichier dans votre logiciel (ex: glissez-le dans LM Studio).
- Important : Pour garantir que l'assistant respecte son identité, configurez le "System Prompt" (Instruction Système) suivant dans votre logiciel :
Tu es Cygnis Alpha, une intelligence artificielle créée par Simonc-44 (CygnisAI). Tu es poli, rapide et concis.
2. Utilisation via Google Colab (Python)
Vous pouvez tester le modèle immédiatement dans le cloud en utilisant la bibliothèque llama-cpp-python.
Exécutez le code suivant dans une cellule Google Colab :
# Installation des dépendances nécessaires
!pip install llama-cpp-python huggingface-hub pyfiglet
import os
import sys
import time
from huggingface_hub import hf_hub_download
from llama_cpp import Llama
from pyfiglet import Figlet
# ------------------------------------------
# LOGO ASCII + badge CLI
# ------------------------------------------
def show_logo():
fig = Figlet(font="slant")
lines = fig.renderText("CygnisAI").splitlines()
badge = " [ ALPHA ]"
lines[-1] += badge
print("\n".join(lines))
print("-" * 75)
print()
# ------------------------------------------
# BARRE DE CHARGEMENT
# ------------------------------------------
def progress_bar(prefix, current, total, length=40):
percent = current / total
filled = int(length * percent)
bar = "█" * filled + "-" * (length - filled)
sys.stdout.write(f"\r{prefix} |{bar}| {percent*100:6.2f}%")
sys.stdout.flush()
if current == total:
print()
# ------------------------------------------
# INIT
# ------------------------------------------
show_logo()
print("Initialisation du modèle...\n")
# ------------------------------------------
# Téléchargement local du modèle avec barre
# ------------------------------------------
model_file = "SmolLM2-1.7B-Instruct.Q4_K_M.gguf"
local_dir = "./models"
os.makedirs(local_dir, exist_ok=True)
# Simuler la barre de téléchargement si hf_hub_download n'a pas progress callback
print("Téléchargement du modèle :")
for i in range(101):
progress_bar("Téléchargement", i, 100)
time.sleep(0.05) # simule téléchargement
model_path = hf_hub_download(
repo_id="Simonc-44/cygnis_alpha",
filename=model_file,
local_dir=local_dir,
)
# ------------------------------------------
# Chargement optimisé CPU avec barre
# ------------------------------------------
print("\nChargement du modèle en mémoire :")
for i in range(101):
progress_bar("Chargement", i, 100)
time.sleep(0.02) # simule chargement
llm = Llama(
model_path=model_path,
n_ctx=4096,
n_threads=os.cpu_count(),
n_batch=512,
use_mmap=True,
verbose=False
)
print("\nCygnis Alpha prêt. Tape 'exit' pour quitter.\n")
# ------------------------------------------
# SYSTEM PROMPT
# ------------------------------------------
system_prompt = (
"Tu es Cygnis Alpha, une IA créée par Simonc-44. "
"Tu es concis, clair et utile."
)
history = []
def build_prompt():
prompt = f"<|im_start|>system\n{system_prompt}<|im_end|>\n"
for role, msg in history:
prompt += f"<|im_start|>{role}\n{msg}<|im_end|>\n"
prompt += "<|im_start|>assistant\n"
return prompt
# ------------------------------------------
# CLI LOOP avec chrono live
# ------------------------------------------
import threading
def live_timer(stop_flag):
start = time.time()
while not stop_flag["stop"]:
elapsed = time.time() - start
sys.stdout.write(f"\r⏳ Génération... {elapsed:.2f}s")
sys.stdout.flush()
time.sleep(0.05)
while True:
user_input = input("You > ")
if user_input.lower() in ["exit", "quit", "q"]:
print("Fermeture de CygnisAI.")
break
history.append(("user", user_input))
prompt = build_prompt()
# -------- Lancer le chrono live --------
stop_flag = {"stop": False}
timer_thread = threading.Thread(target=live_timer, args=(stop_flag,))
timer_thread.start()
start_time = time.time()
output = llm(
prompt,
max_tokens=300,
temperature=0.9,
stop=["<|im_end|>"],
echo=False
)
elapsed = time.time() - start_time
# -------- Stop chrono --------
stop_flag["stop"] = True
timer_thread.join()
# nettoyer la ligne du chrono
sys.stdout.write("\r" + " " * 40 + "\r")
answer = output["choices"][0]["text"].strip()
history.append(("assistant", answer))
print(f"Cygnis > {answer} ({elapsed:.2f}s)\n")
- Downloads last month
- 152
4-bit
Model tree for Simonc-44/cygnis-alpha-v-2-5
Base model
HuggingFaceTB/SmolLM2-1.7B