Spaces:
Sleeping
Sleeping
File size: 6,511 Bytes
5ccab46 24c66bb 5ccab46 62cdfb3 7d6379a 62cdfb3 24c66bb 62cdfb3 7d6379a 24c66bb 7d6379a 24c66bb 7d6379a 24c66bb 7d6379a 24c66bb 7d6379a 24c66bb 7d6379a 24c66bb 7d6379a 8d2fe58 7d6379a 24c66bb 7d6379a 24c66bb 7d6379a 24c66bb 62cdfb3 487a937 5ccab46 24c66bb 5ccab46 487a937 71785fb 487a937 62cdfb3 487a937 1cc4f09 4269672 1cc4f09 71785fb |
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 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 |
import streamlit as st
from transformers import pipeline
################################
####### Generic functions ######
################################
def option_change():
if st.session_state.action_type=="Sentiment Analysis":
sentiment_analysis()
elif st.session_state.action_type=="Zero-shot Classification":
zero_shot_classification()
elif st.session_state.action_type=="Text Generation":
text_generation()
elif st.session_state.action_type=="Mask Filling":
mask_filling()
elif st.session_state.action_type=="Named Entity Recognition":
named_entity_recognition()
elif st.session_state.action_type=="Question & Answering":
qna()
elif st.session_state.action_type=="Summarization":
summarization()
elif st.session_state.action_type=="English to French Translation":
translation_eng2frn()
def button_clicked():
if st.session_state.action_type=="Sentiment Analysis":
sentiment_analysis_btn()
elif st.session_state.action_type=="Zero-shot Classification":
zero_shot_classification_btn()
elif st.session_state.action_type=="Text Generation":
text_generation_btn()
elif st.session_state.action_type=="Mask Filling":
mask_filling_btn()
elif st.session_state.action_type=="Named Entity Recognition":
named_entity_recognition_btn()
elif st.session_state.action_type=="Question & Answering":
qna_btn()
elif st.session_state.action_type=="Summarization":
summarization_btn()
elif st.session_state.action_type=="English to French Translation":
translation_eng2frn_btn()
def sentiment_analysis():
st.session_state.input_text="I've been waiting for a HuggingFace course my whole life."
st.session_state.output_text=""
def sentiment_analysis_btn():
classifier = pipeline("sentiment-analysis")
st.session_state.output_text=classifier(st.session_state.input_text)
def zero_shot_classification():
st.session_state.input_text="This is a course about the transformers library"
st.session_state.output_text=""
def zero_shot_classification_btn():
classifier = pipeline("zero-shot-classification")
st.session_state.output_text=classifier(
st.session_state.input_text,
candidate_labels=["education", "politics", "business"],
)
def text_generation():
st.session_state.input_text="In this course, we will teach you how to"
st.session_state.output_text=""
def text_generation_btn():
generator = pipeline("text-generation")
st.session_state.output_text=generator(st.session_state.input_text)
def mask_filling():
st.session_state.input_text="This course will teach you all about <mask> models."
st.session_state.output_text=""
def mask_filling_btn():
unmasker = pipeline("fill-mask")
st.session_state.output_text=unmasker(st.session_state.input_text, top_k=2)
def named_entity_recognition():
st.session_state.input_text="My name is Sylvain and I work at Hugging Face in Brooklyn."
st.session_state.output_text=""
def named_entity_recognition_btn():
ner = pipeline("ner", grouped_entities=True)
st.session_state.output_text=ner(st.session_state.input_text)
def qna():
st.session_state.input_text="My name is Sylvain and I work at Hugging Face in Brooklyn"
st.session_state.output_text=""
def qna_btn():
question_answerer = pipeline("question-answering")
st.session_state.output_text="Questionn: Where do I work?\n Answer: "
st.session_state.output_text=st.session_state.output_text + question_answerer(
question=st.session_state.input_text,
context="My name is Sylvain and I work at Hugging Face in Brooklyn",
)
def summarization():
st.session_state.input_text= """America has changed dramatically during recent years. Not only has the number of
graduates in traditional engineering disciplines such as mechanical, civil,
electrical, chemical, and aeronautical engineering declined, but in most of
the premier American universities engineering curricula now concentrate on
and encourage largely the study of engineering science. As a result, there
are declining offerings in engineering subjects dealing with infrastructure,
the environment, and related issues, and greater concentration on high
technology subjects, largely supporting increasingly complex scientific
developments. While the latter is important, it should not be at the expense
of more traditional engineering.
Rapidly developing economies such as China and India, as well as other
industrial countries in Europe and Asia, continue to encourage and advance
the teaching of engineering. Both China and India, respectively, graduate
six and eight times as many traditional engineers as does the United States.
Other industrial countries at minimum maintain their output, while America
suffers an increasingly serious decline in the number of engineering graduates
and a lack of well-educated engineers.
"""
st.session_state.output_text=""
def summarization_btn():
summarizer = pipeline("summarization")
st.session_state.output_text=summarizer(st.session_state.input_text)
def translation_eng2frn():
st.session_state.input_text= "This course is produced by Hugging Face."
st.session_state.output_text=""
def translation_eng2frn_btn():
translator = pipeline("translation", model="Helsinki-NLP/opus-mt-en-fr")
st.session_state.output_text=translator(st.session_state.input_text)
################################
####### Display of data ########
################################
st.set_page_config(layout='wide')
# Title
st.title("LLM Basics Demo")
# 3 Column Layout
col1, col2, col3 = st.columns(3)
with col1:
options = ["Sentiment Analysis", "Zero-shot Classification", "Text Generation","Mask Filling","Named Entity Recognition","Question & Answering","Summarization","English to French Translation"]
llm_action_type = st.selectbox("Select LLM Tasktype", options,key="action_type", on_change=option_change)
with col3:
llm_button = st.button("Generate Data",on_click=button_clicked)
# Display Input in single Layout
llm_input_text = st.text_area(label="Enter your message",value="I've been waiting for a HuggingFace course my whole life.",key="input_text", height=400)
# Display Output in single Layout
llm_output_text = st.text_area("Generate Output",key="output_text", height=400) |