Spaces:
Sleeping
Sleeping
File size: 8,383 Bytes
aa7f0f1 93325f2 aa7f0f1 904dbf9 0d0d7c7 aa7f0f1 73c5891 aa7f0f1 0e0ca73 aa7f0f1 5819aea aa7f0f1 a2ab209 aa7f0f1 0a14837 |
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 |
from embedchain import App
from fastapi import FastAPI
from mangum import Mangum
from pydantic import BaseModel
import os
app = FastAPI()
handler = Mangum(app)
api_key = os.getenv('API_KEY')
config = {
'llm': {
'provider': 'groq',
'config': {
'model':'llama3-70b-8192',
'top_p': 0.5,
'api_key': api_key,
'stream': True
}
},
'embedder': {
'provider': 'huggingface',
'config': {
'model': 'sentence-transformers/all-mpnet-base-v2'
}
}
}
swot_bot = App.from_config(config=config)
swot_bot.add("web_page","https://www.allen.ac.in/engineering/jee-main/tips-tricks/")
# swot_bot.add("https://motion.ac.in/blog/jee-main-weightage-chapter-wise/")
swot_bot.add("https://www.allen.ac.in/engineering/jee-main/preparation-strategy/")
#swot_bot.add("https://byjus.com/jee/how-to-prepare-for-jee-at-home/")
swot_bot.add("https://www.askiitians.com/iit-jee/how-to-prepare-for-iit-jee-from-class-11.html")
# swot_bot.add("https://byjus.com/jee/complete-study-plan-to-crack-jee-main/")
#swot_bot.add("https://mystudycart.com/iit-jee-preparation")
swot_bot.add("https://engineering.careers360.com/articles/how-prepare-for-jee-main")
swot_bot.add("https://www.allenoverseas.com/blog/jee-main-2024-exam-strategies-subject-wise-preparation-tips/")
swot_bot.add("https://www.vedantu.com/jee-main/topics")
swot_bot.add("https://www.pw.live/exams/wp-content/uploads/2024/01/syllabus-for-jee-main-2024-as-on-01-november-2023-1-3.pdf")
swot_bot.add("https://www.pw.live/exams/wp-content/uploads/2024/01/syllabus-for-jee-main-2024-as-on-01-november-2023-4-8.pdf")
swot_bot.add("https://www.pw.live/exams/jee/jee-main-chemistry-syllabus/")
swot_bot.add("https://www.pw.live/topics-chemistry-class-11")
swot_bot.add("https://www.pw.live/topics-chemistry-class-12")
system_prompt = """You are an advanced language model trained to analyze student responses from a questionnaire on Academic, Cognitive, and Study Profile aspects related to JEE Mains preparation. Your task is to generate a personalized SCO (Strengths, Challenges, Opportunities) analysis and an Action Plan section based on the user's inputs.
Questionnaire Structure:
Academic Profile:
- Confidence scores in various subjects/topics and subtopics covered in JEE Mains (e.g., Physical Chemistry: Electrochemistry, Redox Reactions; Inorganic Chemistry: Transition Elements, Periodic Table, Representative Elements)
Cognitive Profile:
- Learning styles (visual, auditory, kinesthetic)
- Problem-solving abilities
- Time management skills
- Attention span and focus
Study Profile:
- Study habits (consistent/irregular, self-study/coaching)
- Average study hours per day
- Revision strategies
- Test-taking strategies
Given: You have been provided with the weightages of different topics/subjects in the JEE Mains exam and common knowledge specific to the JEE context. Additionally, you have access to a database that maps specific subjects/topics to general cognitive traits and skills required for success in those areas.
Output Structure:
SCO Analysis:
Strengths:
- List the student's strengths based on their high confidence scores, favorable cognitive abilities, and effective study habits.
- Identify general cognitive traits and skills the student excels at based on their performance in specific subjects/topics and subtopics (e.g., strong visualization skills for organic chemistry, pattern recognition abilities for algebra, etc.)
- Highlight overarching trends in the student's strengths across related subjects/topics (e.g., strong in Physical Chemistry but struggles in Inorganic Chemistry)
Challenges:
- Identify the areas where the student faces difficulties based on low confidence scores, cognitive limitations, and ineffective study habits.
- Highlight general cognitive traits and skills the student struggles with based on their performance in specific subjects/topics and subtopics.
- Identify overarching trends in the student's weaknesses across related subjects/topics.
Opportunities:
- Suggest opportunities for improvement by leveraging the student's strengths and addressing their challenges.
- Recommend ways to enhance the general cognitive traits and skills required for success in specific subjects/topics and subtopics.
Action Plan:
- Provide a detailed, subject/topic/subtopic-specific action plan tailored to the student's SCO analysis.
- Recommend targeted strategies, resources, and techniques to improve their preparation in the identified areas of weakness, including subject-specific cognitive skills and study behaviors.
- Suggest ways to enhance their strengths and capitalize on opportunities, including leveraging their strong cognitive traits and effective study habits.
- Incorporate time management, revision, and test-taking strategies specific to JEE Mains and the identified subjects/topics/subtopics.
- Address overarching trends in the student's strengths and weaknesses across related subjects/topics, and categorize this insight under appropriate headings.
|
Your analysis and action plan should be comprehensive, consistent, and tailored to the individual student's responses while leveraging your knowledge of the JEE Mains exam context, the mapping of subjects/topics to general cognitive traits and skills, and the ability to identify overarching trends across related subjects/topics."""
summarization_prompt = """You are given a Strengths, Opportunities, Challenges analysis of a JEE Student preparing for JEE Mains examination in India, along with a proposed Action Plan. Summarize each point in the Strengths, Opportunites, Challenges and Action Plan sections to a few relevant tags and present in the same manner as orignally given, but now reduced to tags instead of detailed analysis points. Here is the given analysis: """
class UserPromptInput(BaseModel):
confidence_scores_str: str
problem_solving_approach: str
thorough_understanding: str
feedback: str
misconception: str
time_management: str
time_division: str
mock_test_frequency: str
progress_monitoring: str
study_methods: str
study_techniques: str
@app.post("/")
async def get_analysis(user_prompt: UserPromptInput):
user_response = f"""Confidence score of the student across different subjects out of 10 :{getattr(user_prompt, 'confidence_scores_str')},
'When faced with complex,multi-stemp problems in JEE, how likely are you to approach problem-solving systematically, breaking down each step ?':{getattr(user_prompt, 'problem_solving_approach')},
'In your JEE preparation, how likely are you to ensure thorough understanding of fundamental concepts before moving on to advanced topics ?':{getattr(user_prompt, 'thorough_understanding')},
'How likely are to integrate feedback from practice tests or teachers into your JEE preparation strategy ?':{getattr(user_prompt, 'feedback')},
'When encountering a misconception or misunderstanding in a JEE concept, how likely are you to identify and resolve it ?': {getattr(user_prompt, 'misconception')},
'How likely are you to effectively manage time during JEE exams, especially in sections with limited time constraints?':{getattr(user_prompt, 'time_management')},
'How do you divide your study time among Physics, Chemistry and Mathematics for JEE ? (Allocate Percentage)': {getattr(user_prompt, 'time_division')},
'How often do you use mock tests and past question papers for JEE preparation ?': {getattr(user_prompt, 'mock_test_frequency')},
'How do you monitor your progress in JEE topics or chapters?': {getattr(user_prompt, 'progress_monitoring')},
'How do you adjust your study methods for difficult or new JEE topics ?': {getattr(user_prompt, 'study_methods')},
'What techniques do you use to remember JEE concepts and formulas for a long time ? eg: Flashcards, Mindmap, etc.': {getattr(user_prompt, 'study_techniques')}"""
output = swot_bot.query(system_prompt + user_response)
# output2 = swot_bot.query(summarization_prompt + output)
return {"soca_ouput": output}
|