hh1199 commited on
Commit
7dace81
·
verified ·
1 Parent(s): 37e830f

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +22 -10
app.py CHANGED
@@ -1,26 +1,38 @@
1
  import gradio as gr
2
  from transformers import pipeline
3
 
4
- # Инициализация модели
5
  classifier = pipeline(
6
  "zero-shot-classification",
7
- model="cointegrated/rubert-tiny2"
 
8
  )
9
 
10
  def classify(item: str, categories: str) -> str:
11
- # Основная логика классификации
 
 
12
  categories_list = [c.strip() for c in categories.split(",")]
13
- result = classifier(item, categories_list)
14
- return result['labels'][0]
 
 
 
 
 
 
 
 
15
 
16
- # Интерфейс с минимальными элементами
17
  iface = gr.Interface(
18
  fn=classify,
19
  inputs=[
20
- gr.Textbox(label="Название товара"),
21
- gr.Textbox(label="Категории через запятую")
 
22
  ],
23
- outputs=gr.Textbox(label="Результат")
 
 
24
  )
25
 
26
- iface.launch()
 
1
  import gradio as gr
2
  from transformers import pipeline
3
 
 
4
  classifier = pipeline(
5
  "zero-shot-classification",
6
+ model="cointegrated/rubert-tiny2",
7
+ device=-1 # Используем CPU для стабильности на бесплатных инстансах
8
  )
9
 
10
  def classify(item: str, categories: str) -> str:
11
+ # Формируем гипотезу для классификации
12
+ hypothesis_template = "Этот текст относится к категории {}."
13
+
14
  categories_list = [c.strip() for c in categories.split(",")]
15
+
16
+ result = classifier(
17
+ item,
18
+ candidate_labels=categories_list,
19
+ hypothesis_template=hypothesis_template,
20
+ multi_label=False
21
+ )
22
+
23
+ # Возвращаем категорию с наибольшим скором
24
+ return f"{result['labels'][0]} (уверенность: {result['scores'][0]:.2f})"
25
 
 
26
  iface = gr.Interface(
27
  fn=classify,
28
  inputs=[
29
+ gr.Textbox(label="Название товара", placeholder="Введите наименование товара"),
30
+ gr.Textbox(label="Категории (через запятую)",
31
+ value="Овощи, Инструменты, Техника, Упаковка")
32
  ],
33
+ outputs=gr.Textbox(label="Результат классификации"),
34
+ title="Классификатор товаров",
35
+ description="Введите название товара и список категорий через запятую"
36
  )
37
 
38
+ iface.launch(debug=True)