import os import openai import streamlit as st # Get API key from environment variable api_key = os.environ.get("API_KEY") if api_key is None: raise ValueError("API_KEY environment variable not set") # Set API key for OpenAI openai.api_key = api_key st.title("IEP Assist Premium") # Add a sidebar with instructions st.sidebar.title("Instructions") st.sidebar.write("1. Select the student's grade level.") st.sidebar.write("2. Select the student's qualifying condition(s).") st.sidebar.write("3. Choose a prompt based to communicate with the AI how you want your data analyzed.") st.sidebar.write("4. Enter your student data.") st.sidebar.write("5. Click the 'Analyze Student Data' button to generate a summary of your data.") st.sidebar.write("") st.sidebar.write("") st.sidebar.write("Note: This app uses OpenAI's GPT-3 API to generate the PLAAFP statement. Please enter data that is relevant and appropriate for generating the statement.") # Add a horizontal line for separation st.write("---") # Select the student's grade level st.write("Select the student's grade level:") grade_level = st.selectbox("Grade:", ["Pre-K", "K", "1st", "2nd", "3rd", "4th", "5th", "6th", "7th", "8th", "9th", "10th", "11th", "12th"], key="grade-level") # Select the student's qualifying condition st.write("Select the student's qualifying condition(s):") qualifying_condition = st.multiselect("Qualifying Condition(s):", ["Specific Learning Disability", "Emotional Disturbance", "Autism", "Intellectual Disability", "Speech/Language Impairment", "Other Health Impairment", "Orthopedic Impairment", "Auditory Impairment", "Traumatic Brain Injury", "Deafness", "Blindness", "Developmental Delay"], key="qualifying-condition") # Choose a prompt st.write("Choose a prompt:(This tells the AI how you want your data analyzed)") prompts = [ "Analyze the data provided on the student and provide a summary of their strengths and areas of need in regards to their academic performance.", "Provide a summary of the student's behavior data and suggest possible interventions to try based on their areas of need.", "Summarize the data provided on the student's academic performance, highlighting their strengths and areas of need, and suggesting possible interventions to try.", "Please provide a summary of the student's academic performance, highlighting their strengths and areas of need.", "What is the student's biggest strength and area of need in regards to their academic performance?", "Analyze the data provided on the student and provide a summary of their progress in regards to their IEP goals.", "Based on the student's academic performance data, what recommendations do you have for adjusting their instructional strategies?", "How can the student's strengths be leveraged to help them improve in areas of need?", "What barriers to academic success does the student face, and how can they be addressed?", "Analyze the student's behavior data to identify trends and suggest possible interventions.", "Provide a summary of the student's progress towards their academic and behavioral goals."] selected_prompt = st.selectbox("Prompt:", options=prompts, key="prompt") st.write("Enter student data to be analyzed:") student_data = st.text_area("Paste student data here", height=250, key="student-data") # Add a button to generate the PLAAFP statement if st.button("Analyze Student Data", key="analyze-button"): # Set OpenAI API key openai.api_key = api_key # Call the OpenAI API and generate a response response = openai.Completion.create( engine="text-davinci-003", prompt=f"{selected_prompt} {student_data} {grade_level} {qualifying_condition}", max_tokens=2000, n=1, stop=None, temperature=0.9, ) # Extract the generated statement from the API response statement = response["choices"][0]["text"] # Show the generated statement st.write("Summary of Data entered:", statement)