from transformers import AutoTokenizer, AutoModelForSeq2SeqLM import gradio as gr # CodeT5 modelini yükle model_name = "Salesforce/codet5-base" tokenizer = AutoTokenizer.from_pretrained(model_name) model = AutoModelForSeq2SeqLM.from_pretrained(model_name) # Kod üretme fonksiyonu def generate_java_code(prompt): # Girdi metnini tokenize et inputs = tokenizer(prompt, return_tensors="pt", max_length=512, truncation=True) # Modelden kod üret outputs = model.generate( inputs["input_ids"], max_length=300, # Çıktının uzunluğunu artır num_beams=5, # Daha kaliteli sonuçlar için beam search early_stopping=True ) # Tokenize edilmiş çıktıyı kod olarak döndür code = tokenizer.decode(outputs[0], skip_special_tokens=True) # Post-processing: Eksik yapıları düzelt if "public static void main" not in code: code = f"public class Main {{\n{code}\n}}" return code # Gradio UI tasarımı with gr.Blocks() as demo: gr.Markdown("