Spaces:
Runtime error
Runtime error
| import gradio as gr | |
| from sentence_transformers import SentenceTransformer, util | |
| # Загружаем русскоязычную модель | |
| model = SentenceTransformer("ai-forever/sbert_large_nlu_ru") | |
| def embed_text(text): | |
| embedding = model.encode([text])[0] | |
| return str(embedding.tolist()[:10]) + " ...", len(embedding) | |
| def compare_texts(text1, text2): | |
| emb1 = model.encode([text1])[0] | |
| emb2 = model.encode([text2])[0] | |
| similarity = util.cos_sim(emb1, emb2).item() | |
| return similarity | |
| with gr.Blocks() as demo: | |
| gr.Markdown("## 🔎 Russian SBERT Embeddings Demo (ai-forever/sbert_large_nlu_ru)") | |
| with gr.Tab("Эмбеддинг одного текста"): | |
| with gr.Row(): | |
| with gr.Column(): | |
| input_text = gr.Textbox(label="Введите текст", placeholder="Например: Я люблю машинное обучение") | |
| run_btn = gr.Button("Создать эмбеддинг") | |
| with gr.Column(): | |
| output_embed = gr.Textbox(label="Вектор (первые 10 значений)") | |
| output_dim = gr.Number(label="Размерность эмбеддинга") | |
| run_btn.click(embed_text, inputs=[input_text], outputs=[output_embed, output_dim]) | |
| with gr.Tab("Сравнение двух текстов"): | |
| with gr.Row(): | |
| with gr.Column(): | |
| text1 = gr.Textbox(label="Текст 1", placeholder="Например: Я люблю машинное обучение") | |
| text2 = gr.Textbox(label="Текст 2", placeholder="Например: Машинное обучение — моя страсть") | |
| compare_btn = gr.Button("Сравнить тексты") | |
| with gr.Column(): | |
| similarity_score = gr.Number(label="Косинусное сходство") | |
| compare_btn.click(compare_texts, inputs=[text1, text2], outputs=[similarity_score]) | |
| demo.launch() | |