Spaces:
Sleeping
Sleeping
| from transformers import AutoTokenizer, T5ForConditionalGeneration | |
| import torch | |
| import gradio as gr | |
| # Загрузка модели и токенизатора | |
| tokenizer = AutoTokenizer.from_pretrained("cointegrated/rut5-base-multitask") | |
| model = T5ForConditionalGeneration.from_pretrained("cointegrated/rut5-base-multitask") | |
| # Функция генерации мета-тегов | |
| def generate_meta_tags(description): | |
| prompt = f""" | |
| Сгенерируй SEO-заголовок (до 60 знаков) и краткое описание (до 160 знаков) для следующего товара: | |
| {description} | |
| Выведи результат в формате JSON: | |
| {"title": "Пример заголовка", "description": "Пример описания"} | |
| """.strip() | |
| inputs = tokenizer(prompt, return_tensors="pt") | |
| with torch.no_grad(): | |
| outputs = model.generate( | |
| **inputs, | |
| max_new_tokens=128, | |
| pad_token_id=tokenizer.eos_token_id, | |
| eos_token_id=tokenizer.eos_token_id, | |
| do_sample=True, | |
| temperature=0.7 | |
| ) | |
| generated_text = tokenizer.decode(outputs[0], skip_special_tokens=True) | |
| return generated_text | |
| # Интерфейс Gradio | |
| demo = gr.Interface( | |
| fn=generate_meta_tags, | |
| inputs=gr.Textbox(label="Введите описание товара", lines=10), | |
| outputs=gr.Textbox(label="Сгенерированные мета-теги"), | |
| title="SEO Meta Tag Generator", | |
| description="Генерация мета-тегов на основе описания товара" | |
| ) | |
| if __name__ == "__main__": | |
| demo.launch() |