Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -38,10 +38,33 @@ class ChunkInput(BaseModel):
|
|
| 38 |
def summarize_text(data: SummarizeInput):
|
| 39 |
print("π₯ Received summarize request.")
|
| 40 |
start = time.time()
|
| 41 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 42 |
duration = time.time() - start
|
| 43 |
-
print(f"
|
| 44 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 45 |
|
| 46 |
@app.post("/chunk")
|
| 47 |
def chunk_text(data: ChunkInput):
|
|
|
|
| 38 |
def summarize_text(data: SummarizeInput):
|
| 39 |
print("π₯ Received summarize request.")
|
| 40 |
start = time.time()
|
| 41 |
+
|
| 42 |
+
# Chunk the input text
|
| 43 |
+
chunks = chunk_by_token_limit(data.text, 1024, tokenizer)
|
| 44 |
+
total_chunks = len(chunks)
|
| 45 |
+
print(f"π§© Starting summarization over {total_chunks} chunks...")
|
| 46 |
+
|
| 47 |
+
all_summaries = []
|
| 48 |
+
for idx, chunk in enumerate(chunks):
|
| 49 |
+
try:
|
| 50 |
+
summary = summarizer(chunk, max_length=150, min_length=30, do_sample=False)
|
| 51 |
+
summary_text = summary[0]["summary_text"]
|
| 52 |
+
all_summaries.append(summary_text)
|
| 53 |
+
print(f"β
Summary chunk generated {idx + 1}/{total_chunks}")
|
| 54 |
+
except Exception as e:
|
| 55 |
+
print(f"β Error summarizing chunk {idx + 1}/{total_chunks}: {str(e)}")
|
| 56 |
+
all_summaries.append("[Error summarizing this chunk]")
|
| 57 |
+
|
| 58 |
duration = time.time() - start
|
| 59 |
+
print(f"π All {total_chunks} summaries generated in {duration:.2f}s.")
|
| 60 |
+
|
| 61 |
+
return {
|
| 62 |
+
"summaries": all_summaries,
|
| 63 |
+
"summary_combined": " ".join(all_summaries),
|
| 64 |
+
"chunk_count": total_chunks,
|
| 65 |
+
"time_taken": f"{duration:.2f}s"
|
| 66 |
+
}
|
| 67 |
+
|
| 68 |
|
| 69 |
@app.post("/chunk")
|
| 70 |
def chunk_text(data: ChunkInput):
|