broadfield-dev commited on
Commit
1f5e987
·
verified ·
1 Parent(s): 70f46fb

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +16 -7
app.py CHANGED
@@ -1,6 +1,6 @@
1
  import os
2
- from flask import Flask, render_template, request
3
- from rss_processor import fetch_rss_feeds, process_and_store_articles, vector_db
4
  import logging
5
 
6
  app = Flask(__name__)
@@ -14,24 +14,24 @@ def index():
14
  logger.info("Starting to fetch RSS feeds")
15
  articles = fetch_rss_feeds()
16
  logger.info(f"Fetched {len(articles)} articles")
17
- process_and_store_articles(articles)
18
  logger.info("Articles processed and stored")
19
  stored_docs = vector_db.similarity_search("news", k=len(articles))
20
  enriched_articles = [
21
  {
22
  "title": doc.metadata["title"],
23
  "link": doc.metadata["link"],
24
- "summary": doc.page_content,
25
  "category": doc.metadata["category"],
26
  "sentiment": doc.metadata["sentiment"],
27
  "published": doc.metadata["published"],
28
- "image": doc.metadata.get("image", "svg"), # Use "svg" as a flag for default
29
  }
30
  for doc in stored_docs
31
  ]
32
  logger.info(f"Enriched {len(enriched_articles)} articles for display")
33
 
34
- if request.method == 'POST':
35
  query = request.form.get('search')
36
  if query:
37
  logger.info(f"Processing search query: {query}")
@@ -40,7 +40,7 @@ def index():
40
  {
41
  "title": doc.metadata["title"],
42
  "link": doc.metadata["link"],
43
- "summary": doc.page_content,
44
  "category": doc.metadata["category"],
45
  "sentiment": doc.metadata["sentiment"],
46
  "published": doc.metadata["published"],
@@ -59,5 +59,14 @@ def index():
59
 
60
  return render_template("index.html", categorized_articles=categorized_articles)
61
 
 
 
 
 
 
 
 
 
 
62
  if __name__ == "__main__":
63
  app.run(host="0.0.0.0", port=7860)
 
1
  import os
2
+ from flask import Flask, render_template, request, jsonify
3
+ from rss_processor import fetch_rss_feeds, process_and_store_articles, vector_db, summarize_article
4
  import logging
5
 
6
  app = Flask(__name__)
 
14
  logger.info("Starting to fetch RSS feeds")
15
  articles = fetch_rss_feeds()
16
  logger.info(f"Fetched {len(articles)} articles")
17
+ process_and_store_articles(articles, summarize=False) # Skip summarization initially
18
  logger.info("Articles processed and stored")
19
  stored_docs = vector_db.similarity_search("news", k=len(articles))
20
  enriched_articles = [
21
  {
22
  "title": doc.metadata["title"],
23
  "link": doc.metadata["link"],
24
+ "summary": doc.page_content or doc.metadata["original_description"], # Use description if no summary
25
  "category": doc.metadata["category"],
26
  "sentiment": doc.metadata["sentiment"],
27
  "published": doc.metadata["published"],
28
+ "image": doc.metadata.get("image", "svg"),
29
  }
30
  for doc in stored_docs
31
  ]
32
  logger.info(f"Enriched {len(enriched_articles)} articles for display")
33
 
34
+ if request.method == 'POST' and 'search' in request.form:
35
  query = request.form.get('search')
36
  if query:
37
  logger.info(f"Processing search query: {query}")
 
40
  {
41
  "title": doc.metadata["title"],
42
  "link": doc.metadata["link"],
43
+ "summary": doc.page_content or doc.metadata["original_description"],
44
  "category": doc.metadata["category"],
45
  "sentiment": doc.metadata["sentiment"],
46
  "published": doc.metadata["published"],
 
59
 
60
  return render_template("index.html", categorized_articles=categorized_articles)
61
 
62
+ @app.route('/summarize', methods=['POST'])
63
+ def summarize():
64
+ data = request.get_json()
65
+ text = data.get('text')
66
+ logger.info(f"Received summarize request for text: {text[:50]}...")
67
+ summary = summarize_article(text)
68
+ logger.info(f"Generated summary: {summary}")
69
+ return jsonify({"summary": summary})
70
+
71
  if __name__ == "__main__":
72
  app.run(host="0.0.0.0", port=7860)