Falcon LLM : Le modèle LLM open source le plus puissant à ce jour
Le modèle Falcon LLM, créé par l'Institut d'Innovation Technologique (TII) à Abu Dhabi et publié sous la licence Apache 2.0, a fait une entrée fracassante en se hissant rapidement au sommet du classement des LLM open source. Cette performance étonnante a propulsé Falcon parmi les modèles de base les plus intéressants de l'espace open source.
Aperçu du Falcon LLM
Falcon est une famille de deux modèles de base : le Falcon-40B et son homologue plus petit, le Falcon-7B. Actuellement, le modèle à 40B de paramètres occupe la première position sur le classement Open LLM, tandis que le modèle à 7B excelle dans sa catégorie de poids spécifique.
Pour consulter le classement :
Falcon-40B-Instruct
Le Falcon-40B-Instruct est un modèle de décodeur causal de 40B de paramètres construit par le TII sur la base du Falcon-40B et affiné sur un mélange de Baize. Il est disponible sous la licence Apache 2.0.
Pour une utilisation fluide, notez qu'il vous faudra au moins 85 à 100 Go de mémoire pour faire tourner le Falcon-40B.
Pourquoi utiliser Falcon-40B-Instruct?
Si vous êtes à la recherche d'un modèle de chat ou d'instruction basé sur le Falcon-40B prêt à l'emploi, le Falcon-40B-Instruct est votre meilleur choix. Il surpasse d'autres modèles open source tels que LLaMA, StableLM, RedPajama, MPT, etc. Sa conception est optimisée pour l'inférence, avec la technologie FlashAttention (Dao et al., 2022) et le multiquery (Shazeer et al., 2019).
Néanmoins, ce modèle d'instruction peut ne pas être idéal pour un affinement supplémentaire. Si vous êtes intéressé à construire votre propre modèle de chat ou d'instruction, il est recommandé de partir du Falcon-40B.
Si vous recherchez un modèle plus petit et moins coûteux, le Falcon-7B-Instruct est le petit frère du Falcon-40B-Instruct!
Comment démarrer avec le modèle
Pour commencer à utiliser Falcon, il suffit de suivre les instructions du code ci-dessous :
from transformers import AutoTokenizer, AutoModelForCausalLM
import transformers
import torch
model = "tiiuae/falcon-40b-instruct"
tokenizer = AutoTokenizer.from_pretrained(model)
pipeline = transformers.pipeline(
"text-generation",
model=model,
tokenizer=tokenizer,
torch_dtype=torch.bfloat16,
trust_remote_code=True,
device_map="auto",
)
sequences = pipeline(
"Girafatron is obsessed with giraffes, the most glorious animal on the face of this Earth. Girafatron believes all other animals are irrelevant when compared to the glorious majesty of the giraffe.\nDaniel: Hello, Girafatron!\nGirafatron:",
max_length=200,
do_sample=True,
top_k=10,
num_return_sequences=1,
eos_token_id=tokenizer.eos_token_id,
)
for seq in sequences:
print(f"Result: {seq['generated_text']}")
Détails sur la formation
Le Falcon-40B-Instruct a été affiné sur un jeu de données de chat composé de 150M de tokens de Bai ze mélangé avec 5% de données RefinedWeb. Les données ont été tokenisées avec le tokeniseur Falcon-7B/40B.
Pour plus d'informations sur l'architecture et l'objectif du modèle, consultez le Falcon-40B. Il s'agit d'un modèle de décodeur causal uniquement formé sur une tâche de modélisation du langage causal (c'est-à-dire prévoir le token suivant).
L'architecture est largement adaptée du papier GPT-3 (Brown et al., 2020), avec quelques différences notables :
- Embeddings positionnels : rotary (Su et al., 2021) ;
- Attention : multiquery (Shazeer et al., 2019) et FlashAttention (Dao et al., 2022) ;
- Bloc de décodage : attention/MLP parallèle avec une seule norme de couche.
Pour le multiquery, une variante interne est utilisée qui utilise des clés et des valeurs indépendantes par degré de parallélisme tensoriel.
Un papier avec plus de détails sur l'évaluation et les spécifications techniques du modèle Falcon-40B-Instruct sera disponible prochainement.
Risques et limitations
Le Falcon-40B-Instruct est principalement formé sur des données en anglais et ne généralisera pas correctement à d'autres langues. De plus, comme il est formé sur des corpus à grande échelle représentatifs du web, il transportera les stéréotypes et les préjugés couramment rencontrés en ligne.
Il est recommandé aux utilisateurs du Falcon-40B-Instruct de développer des garde-fous et de prendre les précautions appropriées pour toute utilisation en production.
En résumé
Falcon LLM a su marquer sa présence dans l'espace des modèles de base open source. En proposant deux versions puissantes, le Falcon-40B-Instruct et le Falcon-7B-Instruct, Falcon apporte une contribution significative à l'avancement de l'IA et de la technologie des modèles de langage. Que ce soit pour une utilisation directe ou pour la création de modèles de chat/instruction personnalisés, Falcon offre des solutions de qualité, tout en mettant l'accent sur la nécessité de prendre des précautions lors de l'usage en production.