BrandSight / src /streamlit_app.py
akashjayampu's picture
Update src/streamlit_app.py
840561e verified
raw
history blame
1.27 kB
import streamlit as st
import os
from google_search import google_search
from mistral_llm import analyze_text
from utils import get_embeddings, build_index, search_similar
st.set_page_config(page_title="Brand Insight Companion", layout="wide")
st.title("πŸ” Real-Time Brand Insight Companion")
query = st.text_input("Enter a brand or keyword (e.g., 'Nvidia')")
if query:
with st.spinner("πŸ”Ž Searching Reddit-related content..."):
posts = google_search(f"site:reddit.com {query}", num=5)
if not posts:
st.warning("❌ No posts found.")
else:
st.success(f"βœ… Fetched {len(posts)} posts.")
summaries = [analyze_text(p[:1024]) for p in posts]
for i, summary in enumerate(summaries):
st.subheader(f"Post {i+1}")
st.markdown(summary)
st.markdown("---")
sim_query = st.text_input("Find similar posts to this topic")
if sim_query:
embeddings = get_embeddings(posts)
index = build_index(embeddings)
query_embedding = get_embeddings([sim_query])
dists, idxs = search_similar(index, query_embedding)
st.subheader("πŸ” Similar Posts")
for i in idxs[0]:
st.markdown(f"- {posts[i]}")