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}") | |