vmshankar86/Python_Code_Generator_Using_LLM_Model
0
1import gradio as gr2from transformers import AutoModelForCausalLM, AutoTokenizer3 4# Select a model5model_name = "Salesforce/codegen-2B-mono" # Ensure this model is available6tokenizer = AutoTokenizer.from_pretrained(model_name)7model = AutoModelForCausalLM.from_pretrained(model_name)8 9# Function to generate code based on a prompt10def generate_code(prompt):11 # Adjust parameters to improve output quality12 inputs = tokenizer(prompt, return_tensors="pt")13 outputs = model.generate(14 **inputs,15 max_new_tokens=100, # Adjust as needed for code length16 temperature=0.3, # Lower temperature for more deterministic output17 top_p=0.9, # Top-p filtering to focus on more likely completions18 repetition_penalty=1.2, # Penalizes repetitive phrases19 do_sample=True # Enables sampling for a creative touch20 )21 generated_code = tokenizer.decode(outputs[0], skip_special_tokens=True)22 return generated_code23 24# Create a Gradio interface25iface = gr.Interface(26 fn=generate_code,27 inputs=gr.Textbox(lines=5, label="Enter your prompt"),28 outputs=gr.Code(language="python", label="Generated Code"),29 title="Python Code Generator",30 description="Enter a description of the Python code you want to generate."31)32 33# Launch the interface34iface.launch()