Spaces:
Sleeping
Sleeping
File size: 3,384 Bytes
5a61bcf cb3a65b 5a61bcf cb3a65b 5a61bcf cb3a65b 5a61bcf cb3a65b 5a61bcf cb3a65b 5a61bcf cb3a65b 5a61bcf cb3a65b 5a61bcf cb3a65b 5a61bcf cb3a65b 5a61bcf cb3a65b 5a61bcf cb3a65b 5a61bcf cb3a65b 5a61bcf cb3a65b 5a61bcf cb3a65b 5a61bcf cb3a65b 5a61bcf cb3a65b 5a61bcf cb3a65b |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 |
import streamlit as st
from transformers import pipeline
from PIL import Image
import requests
# Define pipelines
pipe = pipeline("summarization", model="google/pegasus-xsum")
agepipe = pipeline("image-classification", model="dima806/facial_age_image_detection")
imgpipe = pipeline("zero-shot-image-classification", model="openai/clip-vit-base-patch32")
emopipe = pipeline("text-classification", model="michellejieli/emotion_text_classifier")
transpipe = pipeline("translation_en_to_fr")
st.title("NLP APP")
option = st.sidebar.selectbox(
"Choose a task",
("Summarization", "Age Detection", "Emotion Detection", "Image Classification", "Translation")
)
if option == "Summarization":
st.title("Text Summarization")
text = st.text_area("Enter text to summarize")
if st.button("Summarize"):
if text:
st.write("Summary:", pipe(text)[0]["summary_text"])
else:
st.write("Please enter text to summarize.")
elif option == "Age Detection":
st.title("Welcome to age detection")
uploaded_files = st.file_uploader("Choose an image file", type="jpg")
if uploaded_files is not None:
image = Image.open(uploaded_files)
st.write("Detected age is ", agepipe(image)[0]["label"])
elif option == "Image Classification":
st.title("Welcome to object detection")
uploaded_file = st.file_uploader("Choose an image file", type=["jpg", "jpeg", "png"])
text = st.text_area("Enter possible class names (comma-separated)")
if st.button("Submit"):
if uploaded_file is not None and text:
candidate_labels = [t.strip() for t in text.split(',')]
image = Image.open(uploaded_file)
st.image(image, caption="Uploaded Image", use_column_width=True)
classification_result = imgpipe(image, candidate_labels=candidate_labels)
for result in classification_result:
st.write(f"Label: {result['label']}, Score: {result['score']}")
else:
st.write("Please upload an image file and enter class names.")
elif option == "Emotion Detection":
st.title("Detect your emotion")
text = st.text_area("Enter your text")
if st.button("Submit"):
if text:
emotion = emopipe(text)[0]["label"]
if emotion == "sadness":
st.write("Emotion : ", emotion, "π’")
elif emotion == "joy":
st.write("Emotion : ", emotion, "π")
elif emotion == "fear":
st.write("Emotion : ", emotion, "π¨")
elif emotion == "anger":
st.write("Emotion : ", emotion, "π‘")
elif emotion == "neutral":
st.write("Emotion : ", emotion, "π")
elif emotion == "disgust":
st.write("Emotion : ", emotion, "π€’")
elif emotion == "surprise":
st.write("Emotion : ", emotion, "π²")
else:
st.write("Please enter text.")
elif option == "Translation":
st.title("Text Translation")
text = st.text_area("Enter text to translate from English to French")
if st.button("Translate"):
if text:
translation = transpipe(text)[0]["translation_text"]
st.write("Translation:", translation)
else:
st.write("Please enter text to translate.")
else:
st.title("None")
|