import gradio as gr from transformers import AutoModelForCausalLM, AutoTokenizer import torch # Загрузка модели и токенизатора model_name = "Qwen/Qwen2.5-Coder-7B-Instruct" tokenizer = AutoTokenizer.from_pretrained(model_name, trust_remote_code=True) model = AutoModelForCausalLM.from_pretrained( model_name, device_map="auto", trust_remote_code=True ) def generate_code(prompt, code): # Системный промпт system_prompt = """Ты - опытный веб-разработчик и программист. Твоя задача - помогать с написанием, анализом и оптимизацией кода. Ты специализируешься на веб-разработке, включая HTML, CSS, JavaScript, современные фреймворки и библиотеки.""" # Формируем полный промпт full_prompt = f"{system_prompt}\n\nЗадача: {prompt}\n\nКод:\n{code}" # Генерация ответа inputs = tokenizer(full_prompt, return_tensors="pt").to(model.device) outputs = model.generate( **inputs, max_new_tokens=2000, do_sample=True, temperature=0.7, top_p=0.9, top_k=50 ) response = tokenizer.decode(outputs[0], skip_special_tokens=True) return response # Создаем интерфейс iface = gr.Interface( fn=generate_code, inputs=[ gr.Textbox(label="Промпт", lines=5), gr.Textbox(label="Код", lines=10) ], outputs=gr.Textbox(label="Результат", lines=10), title="AI Code Assistant", description="Введите промпт и код для обработки" ) iface.launch()