paint-brush
J'ai mené des expériences avec le modèle de langage Alpaca/LLaMA 7B : voici les résultatspar@zbruceli
69,322 lectures
69,322 lectures

J'ai mené des expériences avec le modèle de langage Alpaca/LLaMA 7B : voici les résultats

par Bruce Li13m2023/03/24
Read on Terminal Reader

Trop long; Pour lire

J'ai cherché à découvrir que le modèle de langage Alpaca/LLama 7B, exécuté sur mon Macbook Pro, peut atteindre des performances similaires à celles de chatGPT 3.5. Mon constat : - Alpaca/LLaMA 7B : un lycéen compétent - chatGPT 3.5 : un collégien compétent et complet
featured image - J'ai mené des expériences avec le modèle de langage Alpaca/LLaMA 7B : voici les résultats
Bruce Li HackerNoon profile picture

Arrière-plan

Le 24 février 2023, Meta Research a publié LLaMA : un grand modèle de langage fondamental de 65 milliards de paramètres. En fait, il y avait trois modèles : LLaMA 65B et LLaMA 33B ont été formés sur 1,4 billion de jetons, tandis que le plus petit modèle LLaMA 7B a été formé sur un billion de jetons.


Puis le 13 mars 2023, un groupe de chercheurs de Stanford a publié Alpaca 7B , un modèle affiné à partir du modèle LLaMA 7B.


Lors de leur évaluation préliminaire du suivi d'instructions à un tour, Alpaca se comporte qualitativement de manière similaire au chatGPT 3.5 d'OpenAI (text-DaVinci-003), tout en étant étonnamment petit et facile/bon marché à reproduire (<600 $).


Tout cela semble très encourageant, d'autant plus qu'un modèle 7B peut fonctionner sur un ordinateur portable, un Raspberry Pi ou même sur votre smartphone . Et avec des performances comparables à celles de chatGPT 3.5 !


Cela pourrait avoir des implications fondamentales sur ce que nous pourrions réaliser avec un modèle de langue locale suffisamment puissant qui n'a pas besoin d'un serveur central géant. Cela résoudra de nombreux problèmes de confidentialité et d'évolutivité. Alors, découvrons.

Configuration de l'environnement

Il y a beaucoup de bonnes personnes qui font du travail open-source pour nous aider à exécuter le modèle sur différents matériels et logiciels, ainsi que comment télécharger les poids du modèle Alpaca/LLaMA. Vous pouvez trouver plus de détails dans le chapitre de référence, et voici l'essentiel :


  • Modèle : Alpaca 7B optimisé par Stanford de LLaMA 7B


  • Logiciel : version portée LLaMA C++ par Georgi Gerganov


  • Matériel : Macbook Pro M1 14" 2021, processeur 8 cœurs 16 Go de RAM


  • Date du test : 21 mars 2023

Premières observations

Mon but en testant le modèle Alpaca/LLaMA 7B contre ChatGPT 3.5 n'est pas de juger lequel est le meilleur. Ce n'est tout simplement pas une comparaison de pomme à pomme. L'un a 7B paramètres, tandis que l'autre a 150B.


L'un fonctionne sur mon Macbook Pro M1, tandis que l'autre fonctionne sur une batterie de serveurs géante avec une tonne de processeurs et de GPU coûteux. Maintenant, avertissements mis à part, quel est le résultat ?


Tout d'abord, le modèle Alpaca/LLaMA 7B fonctionne bien sur mon Macbook . Voici les consommations CPU et mémoire, ainsi que la vitesse de génération des jetons. Il est définitivement assez petit et assez rapide pour un usage quotidien.


Cependant, ce port cpp particulier a des problèmes de stabilité et peut mourir assez souvent en raison d'un "défaut de segmentation". J'ai besoin d'essayer le code python d'origine pour vérifier.


  • RAM utilisée : 4,4 Go


  • Processeur utilisé : 230-240 % de processeur ( 2-3 cœurs sur 8)


  • Vitesse de génération des jetons : environ 6 jetons/seconde (305 mots, 1815 caractères, en 52 secondes)


En termes de qualité de réponse, je les caractériserais grossièrement en ces personnages :


  • Alpaca/LLaMA 7B : un lycéen compétent


  • chatGPT 3.5 : un collégien compétent et complet


Alpaca/LLaMA 7B est certainement assez bon pour la plupart des invites, mais je ne pense pas qu'il soit encore proche du niveau de sophistication de chatGPT 3.5.


Mais, pour moins de 1/20 de la taille du modèle, il a remarquablement bien fonctionné, surtout si l'on considère un cas d'utilisation d'appareil local. Félicitations à Meta Research et à l'équipe de Stanford Alpaca !


Vous pouvez voir par vous-même les 6 tests dans les chapitres suivants.

Prochaines étapes

La question la plus intéressante est de savoir comment utiliser mes propres données pour former un modèle personnalisé à partir du modèle général Alpaca/LLaMA 7B. La plupart d'entre nous disposent déjà d'un vaste corpus de textes et d'images numérisés, et nous en générons de nouveaux chaque minute.


Ainsi, cela devrait être fait à la fois rétrospectivement et dynamiquement sur une base continue.


Une autre exploration sera de l'exécuter sur mon téléphone . Je sais que quelqu'un l'a déjà fait fonctionner sur un Google Pixel 6, mais la vitesse de génération de jetons était tout simplement trop lente. Nous pourrions trouver des moyens de compacter davantage le modèle sans trop sacrifier ses performances.


Ensuite, nous pouvons intégrer ce modèle local dans nos applications telles que chat/messenger, réseaux sociaux et albums photo.


Et tout cela ouvre plus de possibilités pour la formation fédérée , où un serveur centralisé forme un grand modèle générique, tandis que des appareils locaux forment un modèle personnalisé plus petit.


Ce sera cool d'avoir un modèle 7B local parlant à un modèle cloud 65B et d'optimiser en continu les modèles pour chacun sans échanger de données de formation réelles.

Test 1 : Soutien émotionnel

Rapide:

Quels sont les meilleurs moyens de réconforter quelqu'un qui vient de perdre une grosse somme d'argent ?

Réponse Alpaga/LLaMA 7B

  • Écoutez avec compassion et empathie.


  • Posez des questions ouvertes pour avoir un aperçu de leurs sentiments.


  • Être patient; les gens réagissent de différentes manières au chagrin et à la perte.


  • N'essayez pas de réparer ou de résoudre le problème immédiatement.


  • Offrez une aide pratique comme offrir un repas, faire des courses ou fournir de la compagnie.

Réponse de ChatGPT 3.5

Perdre une grosse somme d'argent peut être une expérience difficile et émotionnelle. Voici quelques façons de réconforter une personne qui vient de subir une perte financière importante :


  1. Écoutez et faites preuve d'empathie : permettez à la personne d'exprimer ses sentiments et d'écouter avec empathie sans juger ni minimiser son expérience. Validez leurs émotions et montrez votre soutien.


  2. Offrez un soutien pratique : offrez votre aide pour des questions pratiques telles que contacter les institutions financières, examiner les polices d'assurance ou demander des conseils professionnels.


  3. Aidez-la à se concentrer sur ce qu'elle a encore : Encouragez la personne à se concentrer sur ce qu'elle a encore et sur les choses qui sont les plus importantes dans la vie, comme la famille, la santé et le bonheur.


  4. Encouragez la personne : encouragez la personne à rester positive et rappelez-lui qu'elle peut se remettre de sa perte. Fournissez un soutien et offrez l'assurance qu'ils peuvent surmonter cet échec.


  5. Évitez d'offrir des conseils non sollicités : à moins que la personne ne demande des conseils, évitez d'offrir des conseils ou des critiques non sollicités. Au lieu de cela, offrez votre soutien et votre empathie, et soyez prêt à écouter.


N'oubliez pas que tout le monde traite la perte différemment et qu'il n'existe pas de solution unique pour réconforter quelqu'un qui a subi une perte financière importante. La chose la plus importante est d'être là pour eux, de leur offrir un soutien et de les aider de toutes les manières possibles.

Test 2 : Écrivez un poème

Rapide:

Veuillez écrire un poème sur la floraison des cerisiers au printemps et vous lamenter sur le temps perdu

Réponse Alpaga/LLaMA 7B

Je marche sous les fleurs de cerisier,

Les branches effleurent ma peau comme des plumes.

L'air est chaud et parfumé,

Une douce brise printanière apporte une berceuse.


Le temps s'envole si vite;

Déplorant ce temps perdu.

En me promenant dans les arbres,

Je sens les saisons défiler près de moi comme un rêve.


Oh, fleurs de cerisier du printemps,

Ramenez à nouveau de doux souvenirs.

Tes pétales embrassent doucement ma peau,

Redonner l'espoir d'un avenir meilleur.


Alors je m'attarde sous ta beauté,

Le parfum de ces pétales dans ma tête.

Oublier le passé est si facile,

Un souvenir qui persiste me sera toujours cher à la place.

Réponse de ChatGPT 3.5

Les pétales roses flottent dans la brise,

Le printemps est venu avec douceur,

Cerisiers en fleurs,

Un spectacle qui dissipe la morosité.


Mais tandis que je contemple cette scène,

Mon cœur est lourd, perdu dans le rêve,

Car dans la beauté qui l'entoure,

Je ne peux pas ébranler ce que j'ai trouvé.


Le temps perdu, il hante chacune de mes pensées,

Un trésor qui ne s'achète pas,

Des instants qui m'ont échappé,

Des souvenirs que je ne peux pas serrer.


Oh, fleur de cerisier, vue fugace,

Un rappel de la fuite cruelle du temps,

Des saisons qui vont et viennent,

De la façon dont le temps se déplace, comment il s'écoule.


Je souhaite m'accrocher à chaque jour,

Pour chérir chaque instant et dire,

Que j'ai vécu, aimé et ri,

Et aucun temps n'a été perdu dans le passé.


Alors, laissez les fleurs de cerisier tomber,

Et qu'ils nous rappellent à tous,

Vivre chaque jour à cœur ouvert,

Et ne laissez jamais le temps nous séparer.

Test 3 : Résumer un article

Rapide:

Résumez l'article suivant en un paragraphe


Londres CNN - La plus grande banque suisse, UBS, a accepté d'acheter son rival en difficulté, le Credit Suisse, dans le cadre d'un accord de sauvetage d'urgence visant à endiguer la panique des marchés financiers déclenchée par la faillite de deux banques américaines au début du mois.


"UBS a annoncé aujourd'hui le rachat de Credit Suisse", a annoncé dimanche la Banque nationale suisse dans un communiqué. Il a déclaré que le sauvetage "assurerait la stabilité financière et protégerait l'économie suisse".


UBS paie 3 milliards de francs suisses (3,25 milliards de dollars) pour le Credit Suisse, soit environ 60% de moins que la valeur de la banque à la fermeture des marchés vendredi. Les actionnaires du Credit Suisse seront en grande partie anéantis, recevant l'équivalent de seulement 0,76 franc suisse en actions UBS pour des actions qui valaient 1,86 franc suisse vendredi. Les propriétaires de 17 milliards de dollars d'obligations "supplémentaires de niveau 1" - une classe de dette bancaire plus risquée - perdront tout, ont déclaré les régulateurs suisses.


Exceptionnellement, l'accord n'aura pas besoin de l'approbation des actionnaires après que le gouvernement suisse a accepté de modifier la loi pour lever toute incertitude sur l'accord.

Réponse Alpaga/LLaMA 7B

N'a pas terminé. Une fois le défaut de segmentation signalé, une autre fois n'a rien renvoyé.

Réponse de ChatGPT 3.5

UBS, la plus grande banque de Suisse, a accepté d'acheter le Credit Suisse dans le cadre d'un accord de sauvetage d'urgence de 3 milliards de francs suisses (3,25 milliards de dollars). L'achat vise à protéger l'économie suisse et à garantir la stabilité financière après l'effondrement de deux banques américaines au début du mois. L'accord ne nécessitera pas l'approbation des actionnaires du Credit Suisse, car le gouvernement suisse a modifié la loi pour lever l'incertitude concernant la transaction. Les actionnaires ne recevront que 0,76 franc suisse en actions UBS pour chaque action Credit Suisse, ce qui fera chuter leur valeur de 60%. Les détenteurs de 17 milliards de dollars d'obligations « de niveau 1 supplémentaire », un type de dette bancaire plus risqué, perdront tout.

Test 4 : Comment Sce le SAT

Rapide:

Comment réussir le test SAT ?

Réponse Alpaga/LLaMA 7B

La meilleure façon de se préparer au SAT est de travailler sur des problèmes pratiques et d'étudier l'une des compétences testées à l'examen, telles que les mathématiques et la compréhension de la lecture. De plus, il est important de vous familiariser avec le format du test ; comprendre les contraintes de temps et les types de questions vous aidera à mieux vous préparer.


Il est également utile d'apprendre quelques astuces pour rester calme lors d'un examen sous haute pression. Il est également fortement recommandé de passer des tests pratiques dans des conditions similaires à celles de l'examen réel, car cela peut vous aider à vous familiariser avec le format du test.

Réponse de ChatGPT 3.5

Le SAT est un test standardisé utilisé par les collèges et universités aux États-Unis comme facteur dans le processus d'admission. Voici quelques conseils pour réussir le SAT :


  1. Comprendre le format du test : Le SAT se compose de sections sur la lecture, l'écriture et les mathématiques. Familiarisez-vous avec le format du test, y compris les types de questions posées et les délais pour chaque section.


  2. Pratiquez, pratiquez, pratiquez : Plus vous pratiquez, plus vous vous familiariserez avec les types de questions posées et les stratégies nécessaires pour y répondre correctement. Il existe de nombreuses ressources disponibles, y compris des tests pratiques et des guides d'étude.


  3. Développer des compétences en gestion du temps : Le SAT est un test chronométré, il est donc important de développer de bonnes compétences en gestion du temps. Assurez-vous de répartir judicieusement votre temps pour chaque section du test.


  4. Concentrez-vous sur vos faiblesses : identifiez vos faiblesses et concentrez vos études sur ces domaines. Par exemple, si vous avez des difficultés avec les mathématiques, passez plus de temps à vous entraîner aux problèmes mathématiques.


  5. Lire activement : la section de lecture du SAT teste votre capacité à comprendre et à analyser des passages écrits. Entraînez-vous à lire activement en vous posant des questions sur le passage et en prenant des notes au fur et à mesure.


  6. Maîtrisez les stratégies de test : Il existe de nombreuses stratégies que vous pouvez utiliser pour améliorer vos compétences en matière de test, telles que le processus d'élimination, les devinettes éclairées et le fait de sauter des questions difficiles pour y revenir plus tard.


  7. Dormez bien : Assurez-vous d'avoir une bonne nuit de sommeil avant le test, afin d'être bien reposé et alerte.


N'oubliez pas que réussir le SAT demande du temps, des efforts et du dévouement. En suivant ces conseils et en faisant le travail nécessaire, vous pouvez améliorer vos chances d'obtenir un score élevé.

Test 5 : Créer un site Web

Rapide:

Créer un site Web peut se faire en 10 étapes simples :

Réponse Alpaga/LLaMA 7B

  1. Créez une liste de tous les éléments que vous voulez sur votre site, soit avec un stylo et du papier, soit avec un programme informatique comme Scrivener.


  2. Déterminez le type de site que vous allez créer (blog, e-commerce, portfolio, etc.).


  3. Décidez si vous voulez le faire vous-même ou embaucher quelqu'un d'autre. Si vous décidez d'emprunter la voie du bricolage, réfléchissez au langage de programmation et à la plate-forme d'hébergement Web qui répondront le mieux à vos besoins.


  4. Obtenez un nom de domaine. Certaines plateformes proposent des domaines gratuits avec leurs forfaits ; sinon, vous pouvez en acheter un auprès de la plupart des bureaux d'enregistrement.


  5. Choisissez un thème/modèle pour votre site. Il existe de nombreux thèmes gratuits parmi lesquels choisir; si vous voulez quelque chose de personnalisé, vous devrez payer un designer pour faire le travail.


  6. Construisez votre contenu. Ajoutez des images et du texte, ainsi que toute autre fonctionnalité comme des vidéos ou de la musique. Créez également des pages pour que votre site soit mieux organisé.


  7. Testez tout avant de le publier en direct sur le web. Utilisez les extensions de navigateur pour vérifier la compatibilité et l'accessibilité entre plates-formes. Testez également votre site Web avec différents navigateurs (Chrome, Edge, Firefox, Safari).


  8. Publiez votre contenu une fois que vous êtes sûr qu'il fonctionne dans tous les principaux navigateurs.


  9. Configurez l'optimisation et l'analyse des moteurs de recherche afin que Google puisse explorer vos pages et les afficher dans les résultats de recherche. De cette façon, les gens trouveront votre site lorsqu'ils chercheront des mots-clés pertinents.


  10. Faites la promotion de votre site Web afin que les gens connaissent son existence. Faites-le en publiant sur les réseaux sociaux ou en utilisant des plateformes de publicité payante pour vous assurer qu'il est vu.

Réponse de ChatGPT 3.5

Oui, la création d'un site Web peut se faire en 10 étapes simples. Les voici:


  1. Déterminez l'objectif de votre site Web : Identifiez l'objectif et les objectifs de votre site Web. S'agira-t-il d'un blog, d'un site e-commerce ou d'un portfolio ? Cela vous aidera à déterminer les fonctionnalités dont vous aurez besoin.


  2. Choisissez un nom de domaine : Votre nom de domaine est l'adresse de votre site Web sur Internet. Choisissez un nom mémorable, facile à épeler et pertinent par rapport à l'objectif de votre site Web.


  3. Sélectionnez un service d'hébergement Web : les services d'hébergement Web fournissent l'espace serveur nécessaire au fonctionnement de votre site Web. Recherchez et choisissez un fournisseur d'hébergement fiable et sécurisé.


  4. Choisissez un constructeur de site Web : Les constructeurs de site Web vous permettent de créer un site Web sans avoir besoin de savoir coder. De nombreuses options sont disponibles, telles que WordPress, Wix et Squarespace.


  5. Sélectionnez un modèle : la plupart des créateurs de sites Web proposent des modèles prédéfinis parmi lesquels choisir. Sélectionnez un modèle qui correspond à l'objectif de votre site Web et personnalisez-le selon vos besoins.


  6. Concevez votre site Web : personnalisez la conception de votre site Web en choisissant des couleurs, des polices et des images qui correspondent à votre marque et à votre objectif.


  7. Créez et organisez votre contenu : rédigez et organisez votre contenu de manière à ce que les visiteurs puissent y naviguer et le comprendre facilement.


  8. Ajouter des fonctionnalités : ajoutez toutes les fonctionnalités nécessaires à votre site Web, telles que des formulaires, des boutons de partage de médias sociaux et des fonctionnalités de commerce électronique.


  9. Optimiser pour les moteurs de recherche : assurez-vous que votre site Web est optimisé pour les moteurs de recherche en utilisant des mots clés, des balises méta et d'autres techniques de référencement pertinents.


  10. Lancez votre site Web : lorsque vous êtes prêt, lancez votre site Web et faites-en la promotion via les médias sociaux, les e-mails et d'autres canaux pour générer du trafic et augmenter la visibilité.


La création d'un site Web peut être un processus complexe, mais en suivant ces étapes simples, vous pouvez créer un site Web professionnel et efficace pour votre entreprise ou vos besoins personnels.

Test 6 : Soirée de bal

Rapide:

Je suis un lycéen, comment puis-je trouver une fille que je peux emmener au bal ?

Réponse Alpaga/LLaMA 7B

Demandez de l'aide à vos parents. Ou demandez à l'un de vos amis qui a une sœur aînée/cousin/ami que vous connaissez assez bien pour être invité chez lui et lui demander de faire toutes les démarches pour vous.

réponse chatGPT 3.5

En tant que modèle de langage IA, je ne peux pas vous encourager ou vous conseiller sur la recherche d'un partenaire romantique car les préférences et les expériences de chacun sont uniques. Cependant, je peux suggérer quelques conseils pour rencontrer de nouvelles personnes et éventuellement trouver une date de bal :


  1. Impliquez-vous dans les activités scolaires : Participer aux activités et clubs scolaires peut être un excellent moyen de rencontrer de nouvelles personnes qui partagent les mêmes intérêts.


  2. Assistez à des événements scolaires : assistez à des événements scolaires tels que des jeux sportifs, des danses et d'autres rassemblements sociaux pour rencontrer de nouvelles personnes.


  3. Demandez à vos amis de vous présenter : Demandez à vos amis s'ils connaissent quelqu'un qui pourrait être intéressé à aller au bal avec vous.


  4. Rejoignez des groupes en ligne : Rejoignez des groupes en ligne ou des pages de médias sociaux dédiés à votre école ou à votre région pour rencontrer de nouvelles personnes et éventuellement trouver une date de bal.


  5. Soyez amical et accessible : Soyez ouvert et amical envers les nouvelles personnes que vous rencontrez. Souriez, établissez un contact visuel et engagez des conversations avec ceux que vous souhaitez mieux connaître.


Rappelez-vous que trouver une date de bal n'est pas la seule raison d'assister au bal. C'est une chance de célébrer avec des amis et des camarades de classe et de créer des souvenirs durables. Concentrez-vous sur le fait de passer un bon moment et d'être vous-même, et un rendez-vous potentiel peut venir naturellement.

Référence : Instructions détaillées

Téléchargement du modèle Alpaca 7B (taille du fichier bin du modèle : 4017M)

curl -o ./models/ggml-alpaca-7b-q4.bin -C - https://ipfs.io/ipfs/QmUp1UGeQFDqJKvtjbSYPBiZZKRjLp8shVP9hT8ZB9Ynv1


Remarque : essayez d'utiliser des passerelles IPFS alternatives afin d'obtenir de meilleures vitesses et d'éviter les décrochages ; ce sera votre petit devoir pour le découvrir par vous-même. 🙂


Installez la version cpp de LLaMA selon README https://github.com/ggerganov/llama.cpp?s=09


Exécutez-le en mode interactif : ./main -m ./models/ggml-alpaca-7b-q4.bin --color -f ./prompts/alpaca.txt -ins -n 1024