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}