From 977798fbf428c5efc5cc5d99afb377af5d9de005 Mon Sep 17 00:00:00 2001 From: Pedro Fonseca Date: Mon, 26 Jun 2023 20:52:02 +0100 Subject: [PATCH] blank spaces playground file (wip) --- bs_playground.py | 80 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 bs_playground.py diff --git a/bs_playground.py b/bs_playground.py new file mode 100644 index 0000000..1737eb0 --- /dev/null +++ b/bs_playground.py @@ -0,0 +1,80 @@ +import streamlit as st +import openai +import os +from dotenv import load_dotenv + +load_dotenv() +openai.api_key = os.getenv("OPENAI_API_KEY") + + +def generate_summarizer( + temperature, + question_type, + content +): + res = openai.ChatCompletion.create( + model="gpt-3.5-turbo", + temperature=float(temperature), + messages=[ + { + "role": "system", + "content": "You are a IELTS exam question generation program.", + }, + { + "role": "system", + "content": f"Generate a simple {question_type} for the following text: {content}", + }, + { + "role": "system", + "content": "Please provide a JSON object response with the overall grade and breakdown grades, " + "formatted as follows: {'overall': 7.0, 'task_response': {'Task Achievement': 8.0, " + "'Coherence and Cohesion': 6.5, 'Lexical Resource': 7.5, 'Grammatical Range and Accuracy': " + "6.0}}", + }, + ], + ) + return res["choices"][0]["message"]["content"] + + +# Set the application title +st.title("GPT-3.5 IELTS Question Generation Program") + +# qt_col, q_col = st.columns(2) + +# Selection box to select the question type +# with qt_col: +question_type = st.selectbox( + "What is the question type?", + ( + "Writing Task 2", + ), +) + +# Provide the input area for question to be answered +# with q_col: +content = st.text_area("Enter the content:", height=100) + +# Initiate two columns for section to be side-by-side +# col1, col2 = st.columns(2) + +# Slider to control the model hyperparameter +# with col1: +# token = st.slider("Token", min_value=0.0, +# max_value=2000.0, value=1000.0, step=1.0) +temp = st.slider("Temperature", min_value=0.0, + max_value=1.0, value=0.7, step=0.01) +# top_p = st.slider("Top_p", min_value=0.0, max_value=1.0, value=0.9, step=0.01) +# f_pen = st.slider("Frequency Penalty", min_value=-1.0, +# max_value=1.0, value=0.5, step=0.01) + +# Showing the current parameter used for the model +# with col2: +with st.expander("Current Parameter"): + # st.write("Current Token :", token) + st.write("Current Temperature :", temp) +# st.write("Current Nucleus Sampling :", top_p) +# st.write("Current Frequency Penalty :", f_pen) + +# Creating button for execute the text summarization +if st.button("Grade"): + st.write(generate_summarizer(temp, question_type, content))