Kimi-Dev - Modèle de code source ouvert de la face cachée de la lune

Qu'est-ce que Kimi-Dev ?

Kimi-Dev est un modèle de code open source de Moonshot AI conçu pour l'ingénierie logicielle avec 72B paramètres. Le modèle est doté d'une puissante fonction BugFixer, qui permet de localiser et de corriger automatiquement les erreurs de code, et d'une fonction TestWriter, qui génère des tests unitaires de haute qualité pour le code existant afin d'en garantir la qualité. Basé sur l'apprentissage par renforcement et le mécanisme d'auto-jeu, Kimi-Dev atteint une performance de 60,4% sur l'ensemble de données vérifiées du SWE-bench, surpassant les autres modèles open source et devenant le SOTA actuel. Kimi-Dev a été largement utilisé dans l'enseignement de la programmation et la maintenance des projets open source, aidant les débutants à apprendre rapidement la programmation, et aidant les projets open source à améliorer la qualité et la stabilité. Kimi-Dev est largement utilisé dans l'enseignement de la programmation et la maintenance des projets open source pour aider les débutants à apprendre rapidement la programmation et aider les projets open source à améliorer la qualité et la stabilité.

Kimi-Dev - 月之暗面开源的代码模型

Principales fonctions de Kimi-Dev

  • Correction de code (BugFixer)Les logiciels d'aide à la décision : Détecter automatiquement les vulnérabilités et les erreurs dans le code, générer des correctifs et résoudre rapidement les problèmes au cours du développement.
  • Génération du code de test (TestWriter)Les tests unitaires : Générer automatiquement un code de test unitaire pour le code existant afin d'assurer une fonctionnalité correcte et stable du code.
  • Automatisation du processus de développementL'introduction de mécanismes d'apprentissage par renforcement et d'auto-jeu pour coordonner efficacement les capacités de correction et de test du code et améliorer l'efficacité globale du développement.
  • Intégration des outils de développementDans l'avenir, nous prévoyons de travailler de manière transparente avec les principaux IDE, les systèmes de contrôle de version et les pipelines CI/CD afin de nous intégrer en profondeur dans le flux de travail de développement.

La performance de Kimi-Dev

  • Dans l'ensemble de données SWE-bench Verified: :
    • Par rapport au modèle open source, le modèle atteint une performance de 60,4%, surpassant tous les autres modèles open source et devenant le SOTA (State of the Art) des modèles open source actuels.
    • Par rapport aux modèles à source fermée, Kimi-Dev s'est rapproché de certains modèles à source fermée, voire les a dépassés sur certains aspects, ce qui témoigne d'une forte compétitivité.
Kimi-Dev - 月之暗面开源的代码模型

Adresse du site officiel de Kimi-Dev

Comment utiliser Kimi-Dev

  • Télécharger les poids et codes des modèles: :
    • Téléchargez le code du modèle et les scripts associés depuis le dépôt GitHub.
    • Télécharger les poids des modèles de la bibliothèque de modèles Hugging Face.
  • Installation des dépendancesLe dépôt de code Kimi-Dev fournit un fichier requirements.txt pour installer les dépendances en se basant sur les commandes suivantes :
pip install -r requirements.txt
  • Environnement de configurationPour ce faire, vous devez vous assurer que Python est installé sur votre système (version 3.8 ou supérieure recommandée). Mettez en place un environnement virtuel (optionnel) :
python -m venv kimi-dev-env
source kimi-dev-env/bin/activate  # Linux/Mac
kimi-dev-env\Scripts\activate     # Windows
    • Installation de cadres d'apprentissage profondInstaller le cadre correspondant en fonction des exigences du modèle.
  • Modèles de chargementLe modèle de charge est basé sur l'exemple de code fourni. Exemple :
from transformers import AutoModelForSeq2SeqLM, AutoTokenizer

model_name = "moonshotai/Kimi-Dev-72B"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForSeq2SeqLM.from_pretrained(model_name)
  • Utilisation de la fonction modèle: :
    • Correction de code (BugFixer)Le modèle génère automatiquement le code réparé. Exemple de code :
buggy_code = "def add(a, b): return a - b"  # 错误的代码
inputs = tokenizer(buggy_code, return_tensors="pt")
outputs = model.generate(**inputs)
fixed_code = tokenizer.decode(outputs[0], skip_special_tokens=True)
print("Fixed Code:", fixed_code)
    • Génération du code de test (TestWriter)Le modèle génère automatiquement le code de test unitaire correspondant.
code_to_test = "def add(a, b): return a + b"
inputs = tokenizer(code_to_test, return_tensors="pt")
outputs = model.generate(**inputs)
test_code = tokenizer.decode(outputs[0], skip_special_tokens=True)
print("Test Code:", test_code)

Les points forts de Kimi-Dev

  • une performance puissanteAvec 72B paramètres, Kimi-Dev atteint une performance de 60.41 TP3T sur l'ensemble de données SWE-bench Verified, surpassant d'autres modèles open source comme l'actuel SOTA.
  • Correction efficace du codeKimi-Dev est capable de localiser et de corriger automatiquement les erreurs de code en s'appuyant sur des mécanismes d'apprentissage par renforcement et d'auto-jeu, ce qui améliore considérablement l'efficacité des réparations.
  • Génération du code de testGénérer un code de test unitaire de haute qualité pour le code existant, améliorer la couverture des tests et réduire la charge de travail des développeurs dans l'écriture du code de test.
  • Source ouverte et flexibilitéLes logiciels libres : Basé sur le protocole MIT open source, les utilisateurs sont libres d'utiliser, de modifier et de distribuer, convenant à une variété de besoins de développement.
  • Intégration des outils de développementDans l'avenir, il s'intégrera de manière transparente aux IDE classiques, aux systèmes de contrôle de version et aux pipelines CI/CD afin d'améliorer l'efficacité du développement.

À qui s'adresse Kimi-Dev

  • Ingénieur en développement de logicielsLes logiciels d'aide à la décision : Besoin de corriger rapidement les bogues du code, de générer du code de test et d'améliorer l'efficacité de la mise au point.
  • Programmation pour débutantsLes logiciels de programmation sont basés sur la génération de code d'exemple et de code de test pour aider à l'apprentissage et à la maîtrise rapide des compétences de programmation.
  • Mainteneurs de projets open sourceLes services d'aide à la décision : ils aident les utilisateurs à corriger rapidement les bogues, à optimiser le code et à améliorer la qualité et la stabilité des projets.
  • Équipe de développement des entreprisesLes projets de développement au niveau de l'entreprise permettent de réduire les coûts de développement et d'améliorer l'efficacité globale du développement.
  • Chercheurs techniquesLa recherche et l'extension basées sur son code source ouvert et ses modèles afin d'explorer de nouvelles directions technologiques.
  • éducateurLes tests d'évaluation : utilisés dans l'enseignement de la programmation pour aider les étudiants à mieux comprendre et pratiquer le développement et les tests de code.
© déclaration de droits d'auteur

Articles connexes

Pas de commentaires

Vous devez être connecté pour participer aux commentaires !
S'inscrire maintenant
aucun
Pas de commentaires...