L'IA générative pratique avec les transformateurs et les modèles de diffusion
by Omar Sanseviero, Pedro Cuenca, Apolinário Passos, Jonathan Whitaker
Annexe B. Exigences en matière de mémoire du LLM
Les modèles existent dans toutes les tailles ! Le lama 3.1, par exemple, a été publié avec des variantes 8B, 70B et 405B. Pour charger et utiliser un LLM, tu as besoin de suffisamment de mémoire pour stocker le modèle. Le nombre de paramètres et leur précision, entre autres facteurs, influencent les besoins en mémoire d'un LLM.
Que peux-tu faire si tu n'as pas assez de mémoire ? Essaie les options suivantes :
-
Réduis la précision du modèle que tu utilises. Plutôt que d'utiliser
float16, tu peux utiliserint8. -
Utilise un modèle plus petit. Il existe de nombreux petits modèles de grande qualité.
-
Décharge les parties du modèle que tu n'utilises pas. Cela peut se faire à l'aide de CPU RAM offloading, une technique courante pour réduire les besoins en mémoire d'un modèle au prix d'une vitesse d'inférence plus lente. Que se passe-t-il s'il n'y a pas assez de mémoire ? Nous pouvons alors stocker les parties restantes du modèle sur le disque et les charger au besoin. Heureusement pour nous, la bibliothèque accelerate s'occupe de cela via
device_map="auto", qui déchargera automatiquement les parties du modèle au fur et à mesure des besoins.
Exigences en matière de mémoire d'inférence
Tu peux estimer grossièrement les besoins en mémoire comme suit :
Le nombre d'octets par paramètre dépend de la précision utilisée. Sans entrer dans les détails, le tableau ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access