Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -43,14 +43,27 @@ def generate_summary(text, max_len=130):
|
|
| 43 |
summary += summarizer(chunk, max_length=max_len, min_length=30, do_sample=False)[0]["summary_text"] + " "
|
| 44 |
return summary.strip()
|
| 45 |
|
| 46 |
-
def
|
|
|
|
| 47 |
sentences = sent_tokenize(text)
|
| 48 |
-
|
| 49 |
-
|
| 50 |
-
|
| 51 |
-
|
| 52 |
-
|
| 53 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 54 |
|
| 55 |
def generate_quiz(text, num_questions=5):
|
| 56 |
sentences = sent_tokenize(text)
|
|
|
|
| 43 |
summary += summarizer(chunk, max_length=max_len, min_length=30, do_sample=False)[0]["summary_text"] + " "
|
| 44 |
return summary.strip()
|
| 45 |
|
| 46 |
+
def generate_summary(text, max_len=130, min_len=30):
|
| 47 |
+
summarizer = pipeline("summarization")
|
| 48 |
sentences = sent_tokenize(text)
|
| 49 |
+
chunks = [' '.join(sentences[i:i + 10]) for i in range(0, len(sentences), 10)]
|
| 50 |
+
summary = ""
|
| 51 |
+
|
| 52 |
+
for chunk in chunks:
|
| 53 |
+
input_len = len(chunk.split())
|
| 54 |
+
dynamic_max_len = min(max_len, max(20, input_len // 2))
|
| 55 |
+
dynamic_min_len = min(min_len, dynamic_max_len - 5) # Ensure min_len < max_len
|
| 56 |
+
|
| 57 |
+
result = summarizer(
|
| 58 |
+
chunk,
|
| 59 |
+
max_length=dynamic_max_len,
|
| 60 |
+
min_length=dynamic_min_len,
|
| 61 |
+
do_sample=False
|
| 62 |
+
)[0]["summary_text"]
|
| 63 |
+
|
| 64 |
+
summary += result + " "
|
| 65 |
+
|
| 66 |
+
return summary.strip()
|
| 67 |
|
| 68 |
def generate_quiz(text, num_questions=5):
|
| 69 |
sentences = sent_tokenize(text)
|