Maison >Périphériques technologiques >IA >Marco-O1 vs Llama 3.2: Quel est le meilleur?
Le modèle O1 d'OpenAI a généré une excitation considérable dans le domaine des grands modèles de raisonnement (LRM) en raison de ses capacités avancées pour résoudre des problèmes complexes. S'appuyant sur cette fondation, Marco-O1Emerges en tant que nouveau LRM qui non seulement met l'accent sur les disciplines traditionnelles telles que les mathématiques et le codage, mais privilégie également la résolution de problèmes ouverts dans une variété de domaines. Un objectif clé de Marco-O1 est d'explorer dans quelle mesure le modèle O1 peut généraliser ses capacités de raisonnement aux zones qui manquent de normes claires et de récompenses quantifiables. Cette exploration est cruciale pour comprendre les applications potentielles des LRM dans les scénarios du monde réel où les mesures conventionnelles peuvent ne pas s'appliquer, repoussant ainsi les limites de ce que ces modèles peuvent atteindre.
Cet article a été publié dans le cadre du Blogathon de la science des données.
Marco-O1 est un modèle de raisonnement avancé développé par l'équipe Marcopolo d'Alibaba International Digital Commerce, conçu pour lutter contre les tâches de résolution de problèmes ouvertes.
Il est construit sur l'architecture QWEN2 et utilise une combinaison sophistiquée de techniques de recherche (MCT) pour améliorer ses capacités de raisonnement.
En réglant les instructions QWEN2-7B avec une combinaison de l'ensemble de données COT Open-O1 filtré, de l'ensemble de données COT Marco-O1 et de l'ensemble de données d'instructions Marco-O1, Marco-O1 a amélioré sa gestion des tâches complexes.
L'image ci-dessous illustre le processus d'inférence pour Marco-01, détaillant l'utilisation d'ensembles de données comme le COT Open-01 et le COT Marco-01. Le processus consiste à sélectionner des chemins rapides, à effectuer des MCT et à appliquer un réglage fin supervisé pour une meilleure précision. Cela conduit à la génération d'une réponse finale avec des scores de confiance.
Cela se concentre sur des méthodes sophistiquées qui permettent aux modèles d'IA de gérer les tâches complexes, telles que le raisonnement à travers plusieurs étapes, l'optimisation de la prise de décision et l'incertitude pour des prédictions et des réponses plus précises.
MCTS est utilisé pour déterminer la meilleure réponse à une requête utilisateur en explorant toutes les réponses possibles grâce à un échantillonnage aléatoire. Comme le montre la figure ci-dessus, dans MCTS, les nœuds de nœuds différents chemins de raisonnement et la novice jaune sont sélectionnés pour une exploration plus approfondie. Les nœuds verts représentent les réponses finales tandis que des flèches comme «sélectionner» et «sauvegarde» montrent comment le système évalue et affine les choix.
Le système calcule un score de confiance après avoir généré une réponse en utilisant des probabilités (indiquées dans la formule) pour affiner la sortie finale.
Le modèle peut fonctionner à deux niveaux - raisonnement à large niveau (niveau de pas ) et raisonnement multi-pas (mini-niveau).
Différents niveaux de granularité ont été explorés dans la recherche MCTS. Pour étendre l'espace de recherche du modèle et améliorer ses capacités de résolution de problèmes, les étapes ont été divisées en unités plus petites de 64 ou 32 jetons, appelées «mini-étape». Cette granularité plus fine a permis au modèle d'explorer les chemins de raisonnement plus en détail.
Un mécanisme de réflexion est présent dans le modèle en ajoutant la phrase «Attendez! Peut-être que j'ai fait des erreurs! J'ai besoin de repenser à partir de zéro. À la fin de chaque processus de réflexion. Cela invite le modèle à se réflexion et à réévaluer ses étapes de raisonnement. Cette réflexion a donné des améliorations significatives pour le modèle, en particulier sur les problèmes difficiles que le modèle d'origine a initialement résolu de manière incorrecte.
Marco-O1 est particulièrement efficace pour:
Le modèle LLAMA 3.2 comprend 1 milliard (1b) et 3 milliards (3b) de modèles de texte de paramètres qui sont conçus pour les appareils mobiles et de bord, en se concentrant sur des performances efficaces pour des applications telles que le résumé et l'instruction suivante.
LLAMA 3.2 a été pré-entraîné sur jusqu'à 9 billions de jetons disponibles publiquement, incorporant des techniques de distillation de connaissances à partir de modèles plus grands (comme LLAMA 3.1) pour améliorer les performances tout en maintenant une plus petite taille.
LLAMA 3.2 3B a démontré des performances notables dans des domaines spécifiques, en particulier dans les tâches de raisonnement. Dans le défi ARC, il a obtenu un score de 78,6, dépassant 76,7 de Gemma, tout en étant juste derrière Phi-3,5-MinI, qui a marqué 87,4. De même, dans la référence Hellawag, Llama 3.2 3B a marqué 69,8, surpassant Gemma et restant compétitif avec PHI.
Par conséquent, dans la mise en œuvre pratique de Python, nous effectuons une évaluation comparative de la question basée sur le raisonnement sur les deux modèles - Marco-O1 et Llama 3.2 3b. Cette évaluation comparative est principalement effectuée pour vérifier si les sorties de Marco-O1 excellent vraiment dans les questions basées sur le raisonnement.
Olllama est un outil AI avancé qui permet aux utilisateurs de configurer et d'exécuter facilement de grands modèles de langage localement (dans les modes CPU et GPU). Nous explorerons comment exécuter ces modèles sur Google Colab en utilisant Olllama dans les étapes suivantes.
Ci-dessous, nous installerons toutes les bibliothèques nécessaires:
! sudo apt mise à jour ! sudo apt install -y pcitils ! Pip installer Langchain-eLlama ! curl -fssl https://ollama.com/install.sh | shot ! pip install olllama == 0.4.2
Dans cette étape, nous avons configuré le threading pour permettre à Olllama de s'exécuter efficacement sur Google Colab. Le filetage permet une exécution parallèle des tâches, en assurant des performances en douceur et un traitement plus rapide sans retards. Cette configuration est cruciale pour exécuter des opérations à forte intensité de ressources de manière transparente dans l'environnement Colab.
Filation d'importation sous-processus d'importation heure d'importation def run_ollama_serve (): sub-process.popen (["olllama", "servir"]) thread = Threading.thread (cible = run_ollama_serve) thread.start () Temps. Sleep (5)
! olllama tire marco-o1
Nous pouvons utiliser le même code pour tirer le modèle LLAMA3.2 en remplaçant Marco-O1 par LLAMA3.2.
Cette étape consiste à envoyer des requêtes au modèle pour obtenir des réponses ou des informations en fonction de l'entrée. Il aide à interagir avec le modèle de tâches comme la génération de texte ou la réponse aux questions.
de Langchain_core.prompts Importer ChatpromptTemplate de Langchain_ollama.llms Import Ollamallm à partir d'Ipython.Display Import Markdown template = "" "Question: {question}" "" inside = chatPromptTemplate.from_template (modèle) modèle = ollaMallm (modèle = "Marco-O1") chaîne = invite | modèle # Préparer l'entrée pour l'invocation input_data = { "Question": "J'ai 2 pommes, puis j'achète 2 autres. Je fais une tarte avec 2 des pommes. Après avoir mangé la moitié de la tarte, combien de pommes ai-je laissé? '} # Invoquez la chaîne avec des données d'entrée et affichez la réponse au format Markdown réponse = chain.invoke (input_data) Affichage (Markdown (réponse))
Dans cette section, nous comparerons les sorties de Marco-O1 et Llama 3.2, mettant en évidence leurs forces et leurs différences dans la gestion des tâches de raisonnement complexes et des applications en temps réel. En examinant leurs réponses, nous pouvons mieux comprendre comment chaque modèle aborde la résolution de problèmes et s'adapte à différents cas d'utilisation.
«J'ai 2 pommes, puis j'achète 2 autres. Je fais une tarte avec 2 des pommes. Après avoir mangé<br> La moitié de la tarte combien de pommes ai-je laissé?
Les deux modèles fournissent des réponses précises, mais Marco-O1 propose des explications plus détaillées par rapport à LLAMA 3.2.
"Combien de R dans la fraise?"
Comme on peut le voir dans les sorties ci-dessus, la réponse du modèle LLAMA 3.2 est inexacte tandis que la réponse du modèle Marco-O1 est précise.
«Quelle est la zone d'un triangle avec une base de 10 unités et une hauteur de 5 unités?»
Comme le montrent les sorties ci-dessus, les deux modèles donnent des réponses précises, mais la réponse du modèle Marco-O1 est un peu plus expliqué par rapport à LLAMA 3.2.
"Si une voiture coûte 20 000 $ et se déprécie de 1 000 $ chaque année, combien sera-t-il<br> Vaut après trois ans? "
Comme le montrent les sorties ci-dessus, les deux modèles donnent des réponses précises, mais la réponse du modèle Marco-O1 est un peu plus expliqué par rapport à LLAMA 3.2.
«Tous les oiseaux peuvent voler. Les pingouins sont des oiseaux. Les pingouins peuvent-ils voler?
Comme on peut le voir dans les sorties ci-dessus, même si les deux modèles donnent des réponses précises, la réponse du modèle Marco-O1 est beaucoup plus expliquée et élaborée en présentant de nombreux arguments et des doubles chèques pour arriver à la réponse par rapport à Llama 3.2.
«Oliver choisit 44 kiwis vendredi, puis 58 samedi. Dimanche, il choisit ce qu'il a fait vendredi, mais cinq d'entre eux étaient plus petits que la moyenne. Combien de kiwis Oliver a-t-il?
Comme on peut le voir dans les sorties ci-dessus, même si les deux modèles donnent des réponses précises, la réponse de Llama 3.2 est inexacte car elle est confondue avec les informations supplémentaires (mais cinq d'entre elles étaient plus petites que la moyenne) fournies dans la requête et donc soustraits 5 de la réponse réelle. Cependant, la sortie de Marco-O1 est exacte avec une explication détaillée.
«John est allergique aux arachides. Il a mangé un sandwich au beurre d'arachide et se sentait bien. Quoi<br> Pouvons-nous conclure sur l'allergie de John? »
Comme on peut le voir dans la réponse du modèle Marco-O1, il est beaucoup expliqué et élaboré en présentant de nombreux arguments et doubles vérifications pour arriver à la réponse. La réponse de Llama 3.2 ne semble pas être complètement précise car les informations «il avait simplement des maux d'estomac ou une intolérance au beurre d'arachide» est inexact et contradictoire avec les informations fournies dans la requête.
Tâche | Performance Marco-O1 | Performance Llama 3.2 (modèle 3b) | Gagnant |
---|---|---|---|
Tâche 1: raisonnement logique | Précis avec des explications détaillées | Précis mais moins détaillé | Marco-o1 |
Tâche 2: test de fraise | Précis | Inexacte | Marco-o1 |
Tâche 3: raisonnement de géométrie | Précis avec des explications détaillées | Précis mais moins détaillé | Marco-o1 |
Tâche 4: raisonnement étape par étape | Précis avec des explications détaillées | Précis mais moins détaillé | Marco-o1 |
Tâche 5: Syllogisme avec ambiguïté | Précis avec des explications élaborées et des vérifications doubles | Précis mais moins détaillé | Marco-o1 |
Tâche 6: contexte mathématique fragile | Précis avec des explications détaillées | Inexact (confus par des informations supplémentaires) | Marco-o1 |
Tâche 7: Informations contradictoires | Précis avec des explications élaborées et des vérifications doubles | Inexact (fourni des informations contradictoires) | Marco-o1 |
Le modèle MARCO-O1 représente une progression importante de la capacité de l'IA à gérer les tâches de raisonnement complexes, en particulier grâce à son utilisation innovante de la recherche de Monte Carlo et de la chaîne de réglage de la chaîne. Sa polyvalence dans divers domaines tels que les mathématiques, la physique et les tâches multilingues le distinguent des modèles traditionnels. Pendant ce temps, le modèle LLAMA 3.2 offre des performances efficaces pour les appareils Edge, excellant dans des tâches comme la résumé et le suivi des instructions. Les deux modèles présentent l'évolution continue de l'IA, chacun excellant dans son propre domaine, et ensemble, ils mettent en évidence le large potentiel des modèles de langage avancés pour résoudre les défis du monde réel.
A. Marco-O1 ajuste ses stratégies de raisonnement en fonction de la complexité de la tâche à accomplir, en décomposant les défis en étapes gérables et en explorant divers chemins de solution à l'aide de la recherche de Monte Carlo Tree pour trouver l'approche optimale.
Q2. Comment la recherche de Monte Carlo Tree (MCTS) améliore-t-elle les capacités de raisonnement de Marco-O1?A. MCTS permet à Marco-O1 d'explorer plusieurs solutions potentielles pour un problème donné, en sélectionnant les chemins les plus prometteurs grâce à un échantillonnage aléatoire, conduisant à une résolution de problèmes plus précise et plus efficace.
Q3. Quel est le but du mécanisme de réflexion dans Marco-O1?A. Le mécanisme de réflexion permet à Marco-O1 de réévaluer ses étapes de raisonnement à la fin de chaque processus, aidant le modèle à améliorer la précision et à affiner ses réponses, en particulier pour les requêtes très complexes.
Q4. Comment Marco-O1 et Llama 3.2 se comparent-ils en termes de gestion des tâches de raisonnement complexes?A. Marco-O1 est spécialisé pour s'attaquer aux tâches de raisonnement complexes en utilisant des techniques avancées comme le réglage fin de la chaîne de pensées et les MCT. Llama 3.2 excelle dans des applications efficaces et en temps réel sur les appareils mobiles et de bord, avec une manipulation de contexte étendue.
Q5. Quelle est la signification de la conception légère du modèle LLAMA 3.2?A. La conception légère de LLAMA 3.2 le rend idéal pour le déploiement sur les appareils mobiles et bords, offrant des performances efficaces tout en maintenant la capacité de gérer diverses tâches telles que le résumé et les interactions multilingues.
Les médias présentés dans cet article ne sont pas détenus par l'analytique vidhya et sont utilisés à la discrétion de l'auteur.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!