Spaces:
Sleeping
Sleeping
import google.generativeai as genai | |
import streamlit as st | |
api_key = "AIzaSyDgxo89L20xCUoWUH3JfsH51ZTksest_jE" | |
genai.configure(api_key=api_key) | |
generation_config = { | |
"temperature": 1, | |
"top_p": 0.95, | |
"top_k": 64, | |
"max_output_tokens": 8192, | |
"response_mime_type": "text/plain", | |
} | |
model = genai.GenerativeModel( | |
model_name="gemini-1.5-flash", | |
generation_config=generation_config, | |
) | |
def generate_mcqs(prompt, grade, subject, subtopic, num_questions): | |
input_text = f"Generate {num_questions} multiple-choice questions on {subtopic} for grade {grade} in {subject}." | |
chat_session = model.start_chat(history=[]) | |
response = chat_session.send_message(input_text) | |
return response.text | |
st.title("MCQ Generator with Google Generative AI") | |
st.sidebar.header("Configure the MCQ Generator") | |
grade = st.sidebar.selectbox("Select grade", ("Grade 1", "Grade 2", "Grade 3")) | |
subject = st.sidebar.selectbox("Select subject", ("Math", "Science", "English")) | |
subtopic = st.sidebar.text_input("Enter subtopic", "Fractions") | |
num_questions = st.sidebar.slider("Select number of questions", 1, 5) | |
prompt = st.text_input("Enter additional prompt", "") | |
if st.button("Generate MCQs"): | |
if num_questions < 1 or num_questions > 5: | |
st.error("Please select a number between 1 and 5.") | |
else: | |
try: | |
response = generate_mcqs(prompt, grade, subject, subtopic, num_questions) | |
st.success("Generated MCQs:") | |
st.write(response) | |
except Exception as e: | |
st.error(f"Error: {e}") | |