توليد الكود والمساعدة في التطوير باستخدام LLM

توليد الكود والمساعدة في التطوير باستخدام LLM

مقدمة

يمكن استخدام نماذج اللغة لتوليد الكود ومساعدة المطورين في عملهم اليومي. يستعرض هذا الدرس الطرق المختلفة لتنفيذ هذه الوظائف باستخدام LLM.

أنواع المساعدة في التطوير

1. توليد الكود

2. إعادة الهيكلة (Refactoring) والتحسين

3. المساعدة في التصميم

التنفيذ

1. مولّد الكود

from openai import OpenAI
import json
from typing import List, Dict, Any
import numpy as np

class CodeGenerator:
    def __init__(self, api_key: str):
        self.client = OpenAI(api_key=api_key)
    
    def generate_code(self, requirements: Dict[str, Any], 
                     language: str = "python") -> Dict[str, Any]:
        prompt = self._create_generation_prompt(requirements, language)
        
        response = self.client.chat.completions.create(
            model="gpt-3.5-turbo",
            messages=[
                {"role": "system", "content": "Tu es un expert en génération de code."},
                {"role": "user", "content": prompt}
            ],
            temperature=0.3
        )
        
        return json.loads(response.choices[0].message.content)
    
    def _create_generation_prompt(self, requirements: Dict[str, Any], 
                                language: str) -> str:
        return f"""
        Génère du code en {language} selon les exigences suivantes :
        
        Exigences : {json.dumps(requirements, indent=2)}
        
        Fournis :
        1. Le code généré
        2. Les explications
        3. Les tests unitaires
        4. La documentation
        
        Réponds au format JSON.
        """