12 points par GN⁺ 2025-01-29 | 4 commentaires | Partager sur WhatsApp
  • Une PR a été publiée dans le projet llama.cpp pour « doubler la vitesse de WASM »
    • Optimisation des fonctions de produit scalaire (dot product) qX_K_q8_K et qX_0_q8_0 à l’aide d’instructions SIMD
    • La majeure partie du code (99 %) a été générée automatiquement par « DeepSeek-R1 »
    • DeepSeek-R1 met 3 à 5 minutes pour traiter le prompt

Performances de génération de code de DeepSeek-R1

  • L’auteur de la PR a utilisé DeepSeek-R1 pour générer et améliorer le code d’optimisation, et n’a rédigé lui-même que les tests et les prompts
  • Les prompts utilisés sont disponibles ici
  • DeepSeek-R1 a montré une excellente chaîne de raisonnement lors de l’optimisation de llm_groq.py

Comparaison des performances : DeepSeek-R1 vs OpenAI o1

  • La même tâche a aussi été exécutée avec OpenAI o1, mais le résultat de DeepSeek-R1 est supérieur
  • Processus de réflexion sur l’optimisation de model_map dans l’exemple de code :
    • Il a d’abord jugé que model_map était nécessaire
    • Puis il a envisagé de le construire dynamiquement à partir de la réponse de l’API
    • Il a finalement conclu que supprimer model_map était la meilleure solution

Conclusion

  • DeepSeek-R1 montre d’excellentes performances en génération et optimisation automatiques de code
  • L’optimisation de llama.cpp via SIMD dans WASM améliore fortement les performances
  • Si la PR est intégrée, la vitesse d’exécution des applications basées sur WebAssembly devrait nettement progresser

4 commentaires

 
bungker 2025-01-29

J’ai fait tourner deepseek r1 14b, 30b et 70b avec ollama ; le raisonnement global est bon, mais il y a pas mal de petites erreurs. R1 est vraiment excellent.

 
yangeok 2025-01-29

J’ai essayé la version distillée 8b, mais les performances en coréen étaient en baisse.

 
yangeok 2025-01-29

On dirait que cela produit des résultats significatifs pour la génération de code.

 
GN⁺ 2025-01-29
Avis Hacker News
  • DeepSeek-R1 a écrit 99 % du code d’une PR de llama.cpp. C’est un exemple qui montre que l’IA peut apporter une contribution majeure au développement

    • Aider écrit environ 70 % du nouveau code à chaque release, et la part de code généré par l’IA est passée au-dessus de 50 % depuis Sonnet
    • Ces derniers mois, la part de nouveau code écrite par Aider est de 70 %, avec un record à 82 %
    • Le basculement du codage de Sonnet vers DeepSeek V3 s’accélère progressivement, et des essais sont en cours avec R1, même si de récentes interruptions d’API compliquent les choses
  • DeepSeek-R1-Distill-Qwen-32B tourne sur un laptop via Ollama, avec environ 20 Go de RAM nécessaires

    • C’est utile pour le refactoring de code et pour repérer des erreurs dans le code
  • Le fait que DeepSeek-R1 ait écrit 99 % du code de la PR llama.cpp constitue une étape marquante

  • Il a été demandé à DeepSeek de convertir du code ARM SIMD en code WASM, ce qui aide à l’optimisation du code

    • Manipuler des instructions SIMD est une tâche plus difficile que l’optimisation avancée de code
  • L’affirmation selon laquelle les LLM ne sont pas utiles pour coder est erronée

    • L’idée que l’IA puisse remplacer des développeurs n’est pas complètement exagérée
    • S’il n’y a pas de demande pour davantage d’applications, le nombre d’emplois pourrait diminuer
  • Des tests e2e ont été écrits avec o1 Pro et Deepseek R1, et Deepseek a produit de meilleurs tests

    • Les tests n’ont pas réussi
  • En plus de convertir ARM NEON en SIMD, Xuan-Son a demandé de développer une nouvelle approche

    • Il essayait d’optimiser wllama comme projet du week-end, et a réussi à mener le travail à bien avec un LLM
  • Le plugin llm_groq.py a été réécrit avec DeepSeek R1, en utilisant deepseek-r1-distill-llama-70b, un modèle affiné à partir de Llama

  • Il est possible que l’AGI arrive dans quelques mois, et l’entraînement se déroulera en trois étapes

    • Il est important d’entraîner différents modèles afin d’assurer une diversité favorable à la survie à long terme