Dannyar608 commited on
Commit
445f534
Β·
verified Β·
1 Parent(s): 2d2587f

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +16 -8
app.py CHANGED
@@ -33,6 +33,7 @@ from cryptography.fernet import Fernet
33
  import calendar
34
  from dateutil.relativedelta import relativedelta
35
  import numpy as np
 
36
 
37
  # Enhanced Configuration
38
  PROFILES_DIR = "student_profiles"
@@ -489,7 +490,7 @@ class EnhancedTranscriptParser:
489
  grade = course.get('grade_earned', '').upper()
490
  if grade in grade_points:
491
  weight = 1.0 if any(x in course.get('course_name', '').upper()
492
- for x in ['AP', 'IB', 'DE', 'HONORS']) else 0.0
493
  weighted_grades.append(grade_points[grade] + weight)
494
 
495
  if weighted_grades:
@@ -894,7 +895,7 @@ class AcademicAnalyzer:
894
  {
895
  'code': code,
896
  'description': req.get('description', ''),
897
- 'remaining': float(req.get('required', 0)) - float(req.get('completed', 0)),
898
  'status': req.get('status', '')
899
  }
900
  for code, req in parsed_data.get('requirements', {}).items()
@@ -1386,6 +1387,7 @@ class DataVisualizer:
1386
  textposition='inside',
1387
  textinfo='percent+label',
1388
  marker=dict(line=dict(color='#FFFFFF', width=2))
 
1389
 
1390
  fig.update_layout(
1391
  plot_bgcolor='rgba(0,0,0,0)',
@@ -1504,7 +1506,7 @@ class EnhancedProfileManager:
1504
  study_plan = academic_analyzer.generate_study_plan(
1505
  transcript,
1506
  learning_style_match.group(1)
1507
- )
1508
 
1509
  # Prepare data with encryption for sensitive fields
1510
  data = {
@@ -1774,12 +1776,19 @@ class EnhancedTeachingAssistant:
1774
 
1775
  analysis = academic_analyzer.analyze_gpa(profile['transcript'])
1776
  response = [
1777
- f"Your current weighted GPA is **{gpa}**.",
1778
- analysis['description'],
1779
- analysis['comparison']
 
 
 
 
 
 
 
1780
  ]
1781
 
1782
- if analysis['improvement_tips']:
1783
  response.append("\n**Improvement Tips:**")
1784
  response.extend([f"- {tip}" for tip in analysis['improvement_tips']])
1785
 
@@ -3049,5 +3058,4 @@ app = create_enhanced_interface()
3049
 
3050
  if __name__ == "__main__":
3051
  app.launch(server_name="0.0.0.0", server_port=7860)
3052
-
3053
 
 
33
  import calendar
34
  from dateutil.relativedelta import relativedelta
35
  import numpy as np
36
+ import matplotlib.pyplot as plt
37
 
38
  # Enhanced Configuration
39
  PROFILES_DIR = "student_profiles"
 
490
  grade = course.get('grade_earned', '').upper()
491
  if grade in grade_points:
492
  weight = 1.0 if any(x in course.get('course_name', '').upper()
493
+ for x in ['AP', 'IB', 'DE', 'HONORS']) else 0.0
494
  weighted_grades.append(grade_points[grade] + weight)
495
 
496
  if weighted_grades:
 
895
  {
896
  'code': code,
897
  'description': req.get('description', ''),
898
+ 'remaining': max(0, float(req.get('required', 0)) - float(req.get('completed', 0))),
899
  'status': req.get('status', '')
900
  }
901
  for code, req in parsed_data.get('requirements', {}).items()
 
1387
  textposition='inside',
1388
  textinfo='percent+label',
1389
  marker=dict(line=dict(color='#FFFFFF', width=2))
1390
+ )
1391
 
1392
  fig.update_layout(
1393
  plot_bgcolor='rgba(0,0,0,0)',
 
1506
  study_plan = academic_analyzer.generate_study_plan(
1507
  transcript,
1508
  learning_style_match.group(1)
1509
+ )
1510
 
1511
  # Prepare data with encryption for sensitive fields
1512
  data = {
 
1776
 
1777
  analysis = academic_analyzer.analyze_gpa(profile['transcript'])
1778
  response = [
1779
+ f"## πŸ“Š GPA Analysis",
1780
+ f"**Rating:** {analysis['rating']}",
1781
+ f"{analysis['description']}",
1782
+ f"{analysis['comparison']}",
1783
+ "",
1784
+ f"## πŸŽ“ Graduation Status",
1785
+ analysis['status'],
1786
+ f"**Completion:** {analysis['completion_percentage']:.1f}%",
1787
+ "",
1788
+ f"## 🏫 College Recommendations"
1789
  ]
1790
 
1791
+ if analysis.get('improvement_tips'):
1792
  response.append("\n**Improvement Tips:**")
1793
  response.extend([f"- {tip}" for tip in analysis['improvement_tips']])
1794
 
 
3058
 
3059
  if __name__ == "__main__":
3060
  app.launch(server_name="0.0.0.0", server_port=7860)
 
3061