paint-brush
Une plongée profonde dans LLaMA v2 pour les applications de chatpar@mikeyoung44
1,087 lectures
1,087 lectures

Une plongée profonde dans LLaMA v2 pour les applications de chat

par Mike Young5m2023/07/19
Read on Terminal Reader

Trop long; Pour lire

Implémentation par A16z-infra du nouveau modèle de chat [llama13b-v2-chat] de Meta. Le modèle est hébergé sur Replicate, un service d'hébergement de modèles d'IA qui vous permet d'interagir avec des modèles complexes avec seulement quelques lignes de code ou un simple appel d'API. Avec 13 milliards de paramètres, ce modèle a été considérablement adapté aux applications de chat.
featured image - Une plongée profonde dans LLaMA v2 pour les applications de chat
Mike Young HackerNoon profile picture
0-item
1-item
2-item


Pensez à la complexité de générer des réponses de type humain dans les applications de chat en ligne. Comment rendre l'infrastructure efficace et les réponses réalistes ? La solution réside dans les modèles de langage IA. Dans ce guide, nous nous penchons sur la mise en œuvre par a16z-infra du nouveau LLM llama13b-v2-chat de Meta , un modèle de langage de 13 milliards de paramètres spécialement conçu pour les applications de chat. Ce modèle est hébergé sur Replicate, un service d'hébergement de modèles d'IA qui vous permet d'interagir avec des modèles complexes et puissants avec seulement quelques lignes de code ou un simple appel d'API.


Dans ce guide, nous expliquerons en quoi consiste le modèle llama13b-v2-chat, comment penser à ses entrées et sorties et comment l'utiliser pour créer des complétions de chat. Nous vous expliquerons également comment trouver des modèles similaires pour améliorer vos applications d'IA à l'aide de AIModels.fyi . Passons donc en revue le jargon de l'IA et allons à l'essentiel.


Abonnez-vous ou suivez-moi sur Twitter pour plus de contenu comme celui-ci!

À propos du modèle de chat LLaMA-v2

Le modèle LLaMA13b-v2-chat disponible sur Replicate a été créé par l' équipe a16z-infra et repose sur le nouveau modèle LLaMA v2 de Meta. Meta a créé LLaMA dans le but de mieux comprendre et générer un langage humain, et le modèle de chat que nous examinerons a été encore affiné pour améliorer les interactions entre les utilisateurs humains et les chatbots IA. Avec 13 milliards de paramètres, ce modèle a été considérablement adapté à ce cas d'utilisation spécifique. Vous pouvez trouver plus de détails sur ce modèle et les autres modèles de a16z-infra sur la page du créateur sur AIModels.fyi .


L'implémentation Replicate du modèle llama13b-v2-chat utilise le puissant GPU Nvidia A100 (40 Go) pour les prédictions, avec un temps d'exécution moyen de 7 secondes par prédiction. Son prix est de seulement 0,014 $ par exécution, ce qui le rend largement accessible aux projets ou aux startups à petit budget.

Comprendre les entrées et les sorties du chat LLaMA v2

Comprendre ce qui entre et sort d'un modèle est essentiel pour exploiter efficacement ses capacités. Familiarisons-nous donc avec les entrées et les sorties du modèle.

Contributions

Le modèle accepte les entrées suivantes :


  1. prompt (string) : l'invite à envoyer à Llama v2.


  2. max_length (entier) : nombre maximal de jetons à générer. Gardez à l'esprit qu'un mot est généralement constitué de 2-3 jetons. La valeur par défaut est 500.


  3. temperature (nombre) : Ajuste le caractère aléatoire des sorties. Supérieur à 1 est aléatoire et 0 est déterministe. Une bonne valeur de départ est 0,75.


  4. top_p (nombre) : lors du décodage du texte, il échantillonne à partir du pourcentage supérieur p des jetons les plus probables. Réduisez cette valeur pour ignorer les jetons les moins probables. La valeur par défaut est 1.


  5. repetition_penalty (nombre) : Fournit une pénalité pour les mots répétés dans le texte généré. 1 n'est pas une pénalité. Les valeurs supérieures à 1 découragent la répétition, inférieures à 1 l'encouragent.


  6. debug (booléen) : utilisé pour fournir une sortie de débogage dans les journaux.


Notez que les créateurs du modèle vous recommandent de suivre cette structure lors de la création de votre invite :

 User: <your prompt goes here> Assistant:


Par exemple...

 User: give me tips on things to do in Maine Assistant:

Sorties du modèle

Le modèle produit la sortie suivante :


  1. Un schéma JSON brut, cataloguant la structure de sortie - un tableau de chaînes à utiliser pour un calcul ultérieur ou une interface utilisateur. Voici un exemple de schéma de sortie :
 { "type": "array", "items": { "type": "string" }, "title": "Output", "x-cog-array-type": "iterator", "x-cog-array-display": "concatenate" }


Passons maintenant au détail de l'utilisation de ce modèle.

Utilisation du chat LLaMA v2 pour générer des complétions de chat naturelles

Que vous soyez un novice qui s'essaye au code ou que vous soyez un vétéran chevronné, l'utilisation du modèle llama13b-v2-chat pour créer des complétions de chat réalistes peut être très amusante.


Utilisez ce lien de démonstration pour interagir avec l'interface du modèle et comprendre son fonctionnement si vous ne faites que jouer et que vous voulez avoir une idée de son fonctionnement. Une fois que vous êtes prêt à l'implémenter dans votre projet, suivez les étapes ci-dessous.


Tout d'abord, vous devrez configurer votre environnement en installant le client Node.js :

 npm install Replicate


Ensuite, authentifiez votre jeton d'API et définissez-le en tant que variable d'environnement. Ce jeton est personnel et doit donc rester confidentiel :

 export REPLICATE_API_TOKEN=r8_******


Ensuite, vous pouvez exécuter le modèle avec le script suivant :

 import Replicate from "replicate"; const replicate = new Replicate({ auth: process.env.REPLICATE_API_TOKEN, }); const output = await replicate.run( "a16z-infra/llama13b-v2-chat:df7690f1994d94e96ad9d568eac121aecf50684a0b0963b25a41cc40061269e5", { input: { prompt: "..." } } );


Vous pouvez également définir un webhook à appeler lorsque votre prédiction est terminée. Cela pourrait être bénéfique pour la maintenance des journaux ou la configuration d'alertes automatiques.

 const prediction = await replicate.predictions.create({ version: "df7690f1994d94e96ad9d568eac121aecf50684a0b0963b25a41cc40061269e5", input: { prompt: "..." }, webhook: "https://example.com/your-webhook", webhook_events_filter: ["completed"] });

Pour plus de détails, vous pouvez toujours vous référer à la documentation sur Replicate .

Aller plus loin : trouver d'autres modèles de texte à texte avec AIModels.fyi

Vous souhaitez découvrir d'autres chatbots pour votre application ? Trouver des modèles similaires à llama13b-v2-chat est facile lorsque vous utilisez AIModels.fyi .


Voici un guide étape par étape pour vous aider à trouver d'autres modèles d'IA qui répondent à vos besoins spécifiques :

Étape 1 : Visitez AIModels.fyi

Rendez-vous sur AIModels.fyi pour commencer votre exploration.

Étape 2 : Utilisez la barre de recherche

Tapez des phrases clés telles que "text-to-text", "language models", etc. Le moteur de recherche fournira une liste de modèles correspondant à votre requête.

Étape 3 : filtrer les résultats

Des filtres pour affiner votre recherche se trouvent sur votre page de résultats de recherche. Vous pouvez filtrer et trier les modèles par type, coût, popularité ou même par créateurs spécifiques. Par exemple, si vous recherchez un modèle de texte à texte économique, vous pouvez trier les modèles par prix pour trouver l'option la moins chère.

Conclusion

Dans ce guide, nous avons exploré le potentiel de LLaMA v2, un modèle de langage riche en fonctionnalités et rentable. C'est l'épine dorsale potentielle de votre prochaine application de chat, alimentant une conversation nuancée et réaliste. Vous savez maintenant comment implémenter ce modèle, comprendre ses entrées/sorties et générer efficacement des complétions de chat pertinentes.


Ces autres guides pourraient vous être utiles pour continuer à approfondir vos connaissances :


En prenant votre imagination et en la soudant à ces outils d'IA, vous vous lancez dans le vaste univers de l'intelligence artificielle, en créant de nouveaux projets passionnants. Nous sommes ravis de voir où vous irez ensuite. N'oubliez pas de vous abonner pour plus de tutoriels, pour vous tenir au courant des nouveaux modèles d'IA améliorés et nourrir votre créativité pour votre prochain projet d'IA. D'ici là, bonne aventure avec l'IA et n'oubliez pas de dire bonjour sur mon twitter .


Abonnez-vous ou suivez-moi sur Twitter pour plus de contenu comme celui-ci!