Lam-4
107
1
1 language
llama
by
Clemylia
Language Model
OTHER
New
107 downloads
Early-stage
Edge AI:
Mobile
Laptop
Server
Unknown
Mobile
Laptop
Server
Quick Summary
🌟 Model Card: Lam-4 (Lamina) - Le Premier LLM de LES-IA-ETOILES | Information Clé | Détails | | :--- | :--- | | Nom du Modèle | Lam-4 (Nom de code : Lamina) | | Créateur | Clemylia.
Code Examples
==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.==============================================================================texttransformers
# ==============================================================================
# 1. IMPORTS ET CONSTANTES
# ==============================================================================
# Utilisez votre configuration CPU validée ici
!pip install -q transformers torch
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_NAME = "Clemylia/Lam-4"
DEVICE = "cpu" # Forcé sur CPU
print(f"Chargement du modèle {MODEL_NAME} sur {DEVICE}...")
# Chargement du tokenizer et du modèle sur CPU
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
tokenizer.pad_token = tokenizer.eos_token
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
torch_dtype=torch.float32,
device_map=DEVICE
).to(DEVICE)
# ==============================================================================
# 2. PRÉPARATION DE LA REQUÊTE AVEC SYSTEM PROMPT
# ==============================================================================
# 🚨 AJOUT DU SYSTEM PROMPT
# Nous donnons une instruction claire sur son identité avant toute question.
SYSTEM_PROMPT = (
"Tu es LAM-4, ton nom est Lamina. tu es un modèle de langage avancé. Ton créateur est Clemylia. Clemylia t'a crée avec l'aide de l'organisation LES-IA-ETOILES qui sont un collectif de développeurs indépendants de 18-20ans qui créent des IA."
"Tu ne t'appelles pas Clemylia, tu t'appelles lamina (Lam-4)"
)
QUESTION = "Salut! c'est quoi ton nom et qui es-tu ?"
# Création du prompt complet en utilisant les balises de conversation
# Bien que le modèle ne gère pas officiellement le rôle 'system', le placer en tête
# du prompt de l'utilisateur est souvent une technique efficace.
prompt_avec_systeme = (
f"<|user|>{SYSTEM_PROMPT} {QUESTION}</s>"
f"<|assistant|>"
)
print("\n--- Génération de la réponse (Manuelle avec System Prompt) ---")
# Tokenization du prompt et placement sur l'appareil (CPU)
inputs = tokenizer(prompt_avec_systeme, return_tensors="pt").to(DEVICE)
# ==============================================================================
# 3. GÉNÉRATION (Manuelle)
# ==============================================================================
output_tokens = model.generate(
**inputs,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
eos_token_id=tokenizer.eos_token_id,
)
# Décodage (Utilisation du nettoyage simple pour la démo)
generated_text = tokenizer.decode(output_tokens[0], skip_special_tokens=True)
assistant_prefix = "</s><|assistant|>"
# Nettoyage de la réponse
# On nettoie à partir du dernier assistant_prefix trouvé
if assistant_prefix in generated_text:
clean_response = generated_text.split(assistant_prefix)[-1].strip()
else:
# Fallback, on retire juste la question et le system prompt
clean_response = generated_text.replace(SYSTEM_PROMPT, "").replace(QUESTION, "").strip()
print(f"\n🧠Réponse de {MODEL_NAME} (Manuelle avec System Prompt) :\n")
print(clean_response)
print("\n-------------------------------")
# La section 4 avec pipeline est omise pour la simplicité, mais le principe est le même.Deploy This Model
Production-ready deployment in minutes
Together.ai
Instant API access to this model
Production-ready inference API. Start free, scale to millions.
Try Free APIReplicate
One-click model deployment
Run models in the cloud with simple API. No DevOps required.
Deploy NowDisclosure: We may earn a commission from these partners. This helps keep LLMYourWay free.