Yermek68 commited on
Commit
81f4a18
·
verified ·
1 Parent(s): 4d0947f

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +14 -6
app.py CHANGED
@@ -47,9 +47,13 @@ def detect_language(text):
47
 
48
  def summarize_text(text):
49
  if not text or len(text) < 50:
50
- return "⚠️ Недостаточно текста для суммаризации."
51
  lang = detect_language(text)
52
  model = summarizers.get(lang, summarizers["en"])
 
 
 
 
53
  chunk_size = 2500
54
  overlap = 200
55
  summaries = []
@@ -60,7 +64,9 @@ def summarize_text(text):
60
  summaries.append(result[0]['summary_text'])
61
  except Exception as e:
62
  summaries.append(f"[Ошибка в части {len(summaries)+1}: {str(e)}]")
63
- return "\n\n".join(summaries).strip()
 
 
64
 
65
  def save_summary_as_docx(summary_text):
66
  path = "summary.docx"
@@ -92,24 +98,26 @@ def save_summary_as_pdf(summary_text):
92
  def summarize_file(file):
93
  text = read_file(file)
94
  if text.startswith("Ошибка"):
95
- return text, None, None, None
96
- summary = summarize_text(text)
97
  txt_path = save_summary_as_txt(summary)
98
  docx_path = save_summary_as_docx(summary)
99
  pdf_path = save_summary_as_pdf(summary)
100
- return summary, txt_path, docx_path, pdf_path
101
 
102
  demo = gr.Interface(
103
  fn=summarize_file,
104
  inputs=gr.File(label="Загрузите документ (.pdf, .docx или .txt)"),
105
  outputs=[
106
  gr.Textbox(label="Краткое резюме"),
 
 
107
  gr.File(label="📄 Скачать TXT"),
108
  gr.File(label="📘 Скачать DOCX"),
109
  gr.File(label="📕 Скачать PDF")
110
  ],
111
  title="🧠 Eroha Summarizer",
112
- description="Автоматически определяет язык документа (RU / EN / KZ) и создаёт краткое резюме."
113
  )
114
 
115
  demo.launch(server_name="0.0.0.0", server_port=7860)
 
47
 
48
  def summarize_text(text):
49
  if not text or len(text) < 50:
50
+ return "⚠️ Недостаточно текста для суммаризации.", "не определён", "нет модели"
51
  lang = detect_language(text)
52
  model = summarizers.get(lang, summarizers["en"])
53
+
54
+ lang_label = {"ru": "Русский", "en": "English", "kz": "Қазақ тілі"}.get(lang, "Unknown")
55
+ model_label = model.model.name_or_path if hasattr(model.model, "name_or_path") else "Custom"
56
+
57
  chunk_size = 2500
58
  overlap = 200
59
  summaries = []
 
64
  summaries.append(result[0]['summary_text'])
65
  except Exception as e:
66
  summaries.append(f"[Ошибка в части {len(summaries)+1}: {str(e)}]")
67
+
68
+ summary_text = "\n\n".join(summaries).strip()
69
+ return summary_text, lang_label, model_label
70
 
71
  def save_summary_as_docx(summary_text):
72
  path = "summary.docx"
 
98
  def summarize_file(file):
99
  text = read_file(file)
100
  if text.startswith("Ошибка"):
101
+ return text, "ошибка", "ошибка", None, None, None
102
+ summary, lang_label, model_label = summarize_text(text)
103
  txt_path = save_summary_as_txt(summary)
104
  docx_path = save_summary_as_docx(summary)
105
  pdf_path = save_summary_as_pdf(summary)
106
+ return summary, lang_label, model_label, txt_path, docx_path, pdf_path
107
 
108
  demo = gr.Interface(
109
  fn=summarize_file,
110
  inputs=gr.File(label="Загрузите документ (.pdf, .docx или .txt)"),
111
  outputs=[
112
  gr.Textbox(label="Краткое резюме"),
113
+ gr.Textbox(label="🌍 Определённый язык"),
114
+ gr.Textbox(label="🧠 Используемая модель"),
115
  gr.File(label="📄 Скачать TXT"),
116
  gr.File(label="📘 Скачать DOCX"),
117
  gr.File(label="📕 Скачать PDF")
118
  ],
119
  title="🧠 Eroha Summarizer",
120
+ description="Определяет язык (RU / EN / KZ) и создаёт краткое резюме с выбором модели под язык."
121
  )
122
 
123
  demo.launch(server_name="0.0.0.0", server_port=7860)