Aujourd'hui, les entreprises explorent de plus en plus les moyens d'exploiter les grands modèles de langage (LLM) pour augmenter la productivité et créer des applications intelligentes. Cependant, la plupart des options LLM disponibles sont des modèles génériques non adaptés aux besoins spécialisés des entreprises, tels que l'analyse des données, le codage et l'automatisation des tâches. Entrer Flocon de neige Arctique – un LLM de pointe spécialement conçu et optimisé pour les cas d’utilisation de base en entreprise.
Développé par l'équipe de recherche en IA de Snowflake, Arctic repousse les limites du possible grâce à une formation efficace, une rentabilité et un niveau d'ouverture inégalé. Ce modèle révolutionnaire excelle dans les références clés de l'entreprise tout en nécessitant beaucoup moins de puissance de calcul par rapport aux LLM existants. Voyons ce qui fait d'Arctic un révolutionnaire pour l'IA d'entreprise.
L'intelligence d'entreprise redéfinie À la base, Arctic se concentre sur la fourniture de performances exceptionnelles sur des mesures qui comptent vraiment pour les entreprises : codage, requêtes SQL, suivi d'instructions complexes et production de résultats fondés et fondés sur des faits. Snowflake a combiné ces capacités critiques dans un roman «intelligence d'entreprise” métrique.
Les résultats parlent d'eux-mêmes. Arctic respecte ou surpasse les modèles tels que LAMA 7B et LAMA 70B sur les critères d'intelligence d'entreprise tout en utilisant moins de la moitié du budget informatique pour la formation. Remarquablement, malgré l'utilisation 17 fois moins de ressources de calcul que le LAMA 70B, Arctic atteint la parité sur les tests spécialisés comme le codage (HumanEval+, MBPP+), la génération SQL (Spider) et le suivi d'instructions (IFEval).
Mais les prouesses d'Arctic vont au-delà du simple fait de répondre aux critères d'entreprise. Il maintient de solides performances en matière de compréhension générale du langage, de raisonnement et d’aptitude mathématique par rapport aux modèles entraînés avec des budgets de calcul exponentiellement plus élevés comme DBRX. Cette capacité globale fait d’Arctic un choix imbattable pour répondre aux divers besoins d’IA d’une entreprise.
L'innovation
Transformateur hybride Dense-MoE Alors, comment l'équipe Snowflake a-t-elle construit un LLM aussi incroyablement performant et efficace ? La réponse réside dans l'architecture de pointe du transformateur hybride à mélange dense d'experts (MoE) d'Arctic.
Les modèles de transformateurs denses traditionnels deviennent de plus en plus coûteux à former à mesure que leur taille augmente, les exigences de calcul augmentant de manière linéaire. La conception du MoE permet de contourner ce problème en utilisant plusieurs réseaux de rétroaction parallèles (experts) et en activant uniquement un sous-ensemble pour chaque jeton d'entrée.
Cependant, le simple fait d'utiliser une architecture MoE ne suffit pas : Arctic combine ingénieusement les atouts des composants denses et MoE. Il associe un codeur à transformateur dense de 10 milliards de paramètres à une couche de perceptron multicouche (MLP) MoE résiduel expert de 128. Ce modèle hybride MoE dense totalise 480 milliards de paramètres, mais seulement 17 milliards sont actifs à un moment donné en utilisant le top 2 du gate.
Les implications sont profondes : Arctic atteint une qualité et une capacité de modèle sans précédent tout en restant remarquablement efficace en termes de calcul pendant la formation et l'inférence. Par exemple, Arctic a 50 % de paramètres actifs en moins que les modèles comme DBRX lors de l'inférence.
Mais l’architecture modèle n’est qu’une partie de l’histoire. L'excellence d'Arctic est le point culminant de plusieurs techniques et connaissances pionnières développées par l'équipe de recherche de Snowflake :
- Programme de formation sur les données axé sur l'entreprise Grâce à une expérimentation approfondie, l'équipe a découvert que les compétences génériques telles que le raisonnement de bon sens doivent être acquises tôt, tandis que les spécialisations plus complexes comme le codage et SQL sont mieux acquises plus tard dans le processus de formation. Le programme d'études sur les données d'Arctic suit une approche en trois étapes imitant les progressions de l'apprentissage humain.
Les premiers teratokens se concentrent sur la construction d’une large base générale. Les prochains 1.5 tératokens se concentrent sur le développement des compétences d'entreprise grâce à des données adaptées pour SQL, des tâches de codage, etc. Les tératokens finaux affinent davantage les spécialisations d'Arctic à l'aide d'ensembles de données raffinés.
- Choix architecturaux optimaux Alors que les MoE promettent une meilleure qualité par calcul, le choix des bonnes configurations est crucial mais mal compris. Grâce à des recherches détaillées, Snowflake a atterri sur une architecture employant 128 experts avec les 2 meilleurs contrôles de chaque couche après avoir évalué les compromis qualité-efficacité.
L'augmentation du nombre d'experts permet d'obtenir davantage de combinaisons, améliorant ainsi la capacité du modèle. Cependant, cela augmente également les coûts de communication, c'est pourquoi Snowflake a atterri sur 128 experts « condensés » soigneusement conçus, activés via le top 2 gating comme équilibre optimal.
- Co-conception du système Mais même une architecture de modèle optimale peut être compromise par des goulots d'étranglement du système. L’équipe Snowflake a donc innové ici également en co-concevant l’architecture du modèle main dans la main avec les systèmes de formation et d’inférence sous-jacents.
Pour une formation efficace, les composants denses et MoE ont été structurés pour permettre le chevauchement de la communication et du calcul, masquant ainsi des frais de communication substantiels. Du côté des inférences, l'équipe a exploité les innovations de NVIDIA pour permettre un déploiement très efficace malgré la taille d'Arctic.
Des techniques telles que la quantification FP8 permettent d'adapter le modèle complet sur un seul nœud GPU pour une inférence interactive. Des lots plus importants exploitent les capacités de parallélisme d'Arctic sur plusieurs nœuds tout en restant d'une efficacité de calcul impressionnante grâce à ses paramètres actifs compacts 17B.
Avec une licence Apache 2.0, les poids et le code d'Arctic sont disponibles sans restriction pour toute utilisation personnelle, de recherche ou commerciale. Mais Snowflake est allé beaucoup plus loin, en rendant open source ses recettes complètes de données, ses implémentations de modèles, ses conseils et les connaissances approfondies de la recherche qui alimentent Arctic.
Le "Livre de recettes arctique» est une base de connaissances complète couvrant tous les aspects de la construction et de l’optimisation d’un modèle MoE à grande échelle comme Arctic. Il distille des enseignements clés en matière d'approvisionnement en données, de conception d'architecture de modèle, de co-conception de systèmes, de schémas de formation/inférence optimisés et bien plus encore.
De l'identification de programmes de données optimaux à l'architecture de MoE tout en co-optimisant les compilateurs, les planificateurs et le matériel, ce vaste ensemble de connaissances démocratise des compétences auparavant confinées aux laboratoires d'IA d'élite. L'Arctic Cookbook accélère les courbes d'apprentissage et permet aux entreprises, aux chercheurs et aux développeurs du monde entier de créer leurs propres LLM rentables et personnalisés pour pratiquement tous les cas d'utilisation.
Premiers pas avec l'Arctique
Pour les entreprises désireuses de tirer parti d’Arctic, Snowflake propose plusieurs voies pour démarrer rapidement :
Inférence sans serveur : les clients de Snowflake peuvent accéder gratuitement au modèle Arctic sur Snowflake Cortex, la plateforme d'IA entièrement gérée de l'entreprise. Au-delà de cela, Arctic est disponible dans tous les principaux catalogues de modèles comme AWS, Microsoft Azure, NVIDIA, etc.
Partir de zéro : les pondérations et les implémentations du modèle open source permettent aux développeurs d'intégrer directement Arctic dans leurs applications et services. Le dépôt Arctic fournit des exemples de code, des didacticiels de déploiement, des recettes de réglage fin et bien plus encore.
Créer des modèles personnalisés : grâce aux guides exhaustifs d'Arctic Cookbook, les développeurs peuvent créer leurs propres modèles MoE personnalisés à partir de zéro, optimisés pour tout cas d'utilisation spécialisé en utilisant les enseignements du développement d'Arctic.
Une nouvelle ère d'entreprise ouverte AI Arctic est bien plus qu'un simple modèle de langage puissant : il annonce une nouvelle ère de capacités d'IA ouvertes, rentables et spécialisées, spécialement conçues pour l'entreprise.
De la révolution de l'analyse des données et de la productivité du codage à l'automatisation des tâches et aux applications plus intelligentes, l'ADN d'entreprise d'Arctic en fait un choix imbattable par rapport aux LLM génériques. Et en open source non seulement le modèle mais l’ensemble du processus de R&D qui le sous-tend, Snowflake favorise une culture de collaboration qui élèvera l’ensemble de l’écosystème de l’IA.
Alors que les entreprises adoptent de plus en plus l’IA générative, Arctic propose un modèle audacieux pour développer des modèles objectivement supérieurs aux charges de travail de production et aux environnements d’entreprise. La confluence d’une recherche de pointe, d’une efficacité inégalée et d’une philosophie d’ouverture inébranlable établit une nouvelle référence dans la démocratisation du potentiel de transformation de l’IA.
Voici une section avec des exemples de code sur la façon d'utiliser le modèle Snowflake Arctic :
Pratique avec l'Arctique
Maintenant que nous avons expliqué ce qui rend Arctic vraiment révolutionnaire, voyons comment les développeurs et les scientifiques des données peuvent commencer à mettre en œuvre ce modèle puissant.
Prêt à l'emploi, Arctic est disponible pré-entraîné et prêt à être déployé via des centres de modèles majeurs tels que Hugging Face et des plateformes d'IA partenaires. Mais sa véritable puissance apparaît lors de sa personnalisation et de son ajustement pour vos cas d'utilisation spécifiques.
La licence Apache 2.0 d'Arctic offre une liberté totale pour l'intégrer dans vos applications, services ou flux de travail d'IA personnalisés. Passons en revue quelques exemples de code utilisant la bibliothèque Transformers pour vous aider à démarrer :
Inférence de base avec Arctic
Pour des cas d'utilisation de génération de texte rapide, nous pouvons charger Arctic et exécuter une inférence de base très facilement :
from transformers import AutoTokenizer, AutoModelForCausalLM
# Load the tokenizer and model
tokenizer = AutoTokenizer.from_pretrained("Snowflake/snowflake-arctic-instruct")
model = AutoModelForCausalLM.from_pretrained("Snowflake/snowflake-arctic-instruct")
# Create a simple input and generate text
input_text = "Here is a basic question: What is the capital of France?"
input_ids = tokenizer.encode(input_text, return_tensors="pt")
# Generate response with Arctic
output = model.generate(input_ids, max_length=150, do_sample=True, top_k=50, top_p=0.95, num_return_sequences=1)
generated_text = tokenizer.decode(output[0], skip_special_tokens=True)
print(generated_text)
Cela devrait produire quelque chose comme :
« La capitale de la France est Paris. Paris est la plus grande ville de France et le centre économique, politique et culturel du pays. Il abrite des monuments célèbres comme la Tour Eiffel, le musée du Louvre et la cathédrale Notre-Dame.
Comme vous pouvez le constater, Arctic comprend parfaitement la requête et fournit une réponse détaillée et fondée en tirant parti de ses solides capacités de compréhension du langage.
Ajustement pour les tâches spécialisées
Bien qu'impressionnant dès le départ, Arctic brille vraiment lorsqu'il est personnalisé et affiné sur vos données exclusives pour des tâches spécialisées. Snowflake a fourni des recettes détaillées couvrant :
- Organiser des données de formation de haute qualité adaptées à votre cas d'utilisation
- Mise en œuvre de programmes de formation personnalisés en plusieurs étapes
- Tirer parti des approches efficaces de réglage fin LoRA, P-Tuning ou FactorizedFusion
- Optimisations pour discerner SQL, le codage ou d'autres compétences clés de l'entreprise
Voici un exemple de la façon d'affiner Arctic sur vos propres ensembles de données de codage à l'aide des recettes de LoRA et Snowflake :
from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import LoraConfig, get_peft_model, prepare_model_for_int8_training
# Load base Arctic model
tokenizer = AutoTokenizer.from_pretrained("Snowflake/snowflake-arctic-instruct")
model = AutoModelForCausalLM.from_pretrained("Snowflake/snowflake-arctic-instruct", load_in_8bit=True)
# Initialize LoRA configs
lora_config = LoraConfig(
r=8,
lora_alpha=16,
target_modules=["query_key_value"],
lora_dropout=0.05,
bias="none",
task_type="CAUSAL_LM"
)
# Prepare model for LoRA finetuning
model = prepare_model_for_int8_training(model)
model = get_peft_model(model, lora_config)
# Your coding datasets
data = load_coding_datasets()
# Fine-tune with Snowflake's recipes
train(model, data, ...)
Ce code illustre comment vous pouvez charger sans effort Arctic, initialiser une configuration LoRA adaptée à la génération de code, puis affiner le modèle sur vos ensembles de données de codage propriétaires en tirant parti des conseils de Snowflake.
Personnalisé et optimisé, Arctic devient une centrale privée conçue pour offrir des performances inégalées sur les flux de travail de votre entreprise et les besoins de vos parties prenantes.