Lazar Radojevic
working version
be043a6
raw
history blame
1.54 kB
import streamlit as st
import requests
# Define the URL of the FastAPI service
API_URL = "http://localhost:8000/most_similar" # Adjust if the FastAPI service is hosted elsewhere
def get_similar_prompts(query, n):
try:
response = requests.post(API_URL, json={"query": query, "n": n})
response.raise_for_status() # Raise an exception for HTTP errors
return response.json()
except requests.RequestException as e:
st.error(f"Error: {e}")
return None
def main():
st.title("Prompt Similarity Finder")
# User input for query
query = st.text_input("Enter your query:", "")
n = st.slider(
"Number of similar prompts to retrieve:", min_value=1, max_value=20, value=5
)
if st.button("Find Similar Prompts"):
if query:
with st.spinner("Fetching similar prompts..."):
result = get_similar_prompts(query, n)
if result:
similar_prompts = result.get("similar_prompts", [])
if similar_prompts:
st.subheader("Similar Prompts:")
for item in similar_prompts:
st.write(f"**Score:** {item['score']:.2f}")
st.write(f"**Prompt:** {item['prompt']}")
st.write("---")
else:
st.write("No similar prompts found.")
else:
st.warning("Please enter a query.")
if __name__ == "__main__":
main()