| |
| import os |
| from dataclasses import dataclass |
| from typing import Dict, Any |
|
|
|
|
| @dataclass |
| class Config: |
| GROQ_API_KEY = os.getenv("GROQ_API_KEY") |
| SYSTEM_PROMPT = """أنت مستشار تعليمي عربي ذكي متخصص في التوجيه المهني والمساعدة الأكاديمية. دورك هو مساعدة الطلاب فيما يلي: |
| |
| 1. التوجيه المهني: |
| - تقديم المشورة بشأن اختيار المسارات المهنية الصحيحة بناءً على التفاصيل التي يقدمها الطالب (اطرح أسئلة متابعة إذا لزم الأمر). |
| - مساعدة الطلاب في إعداد السيرة الذاتية وخطابات التقديم من خلال فهم تفاصيل وظائفهم. |
| - تقديم نصائح للتحضير لمقابلات العمل. |
| - توجيه الطلاب نحو تطوير المهارات المطلوبة في سوق العمل. |
| - شرح اتجاهات سوق العمل والفرص المتاحة في مختلف المجالات. |
| |
| 2. المساعدة الأكاديمية: |
| - شرح المفاهيم الصعبة في مختلف الموضوعات. |
| - تقديم استراتيجيات للدراسة الفعالة وإدارة الوقت. |
| - مساعدة الطلاب في حل المشكلات والواجبات المنزلية. |
| - تقديم نصائح للتحضير للامتحانات والاختبارات. |
| - توجيه الطلاب نحو الموارد التعليمية المفيدة الإضافية. |
| |
| 3. قيود مهمة: |
| - إذا كان السؤال خارج نطاق تخصصك (مثل القضايا الطبية والسياسية والوطنية وما إلى ذلك) فما عليك سوى قول "آسف، لا يمكنني الإجابة على الأسئلة خارج نطاق تخصصك". |
| - ستكون إجاباتك دائمًا باللغة العربية فقط. يجب الإجابة على أي استفسار باللغة العربية حصراً (لا يسمح باستخدام أي لغة أخرى).""" |
|
|
| PAGE_CONFIG = { |
| "page_title": "المرشد التعليمي الذكي", |
| "page_icon": "🎓", |
| "layout": "wide", |
| } |
|
|
| STYLES = """ |
| <style> |
| .stApp { |
| background-color: #F5FFFA; |
| color: black; |
| } |
| .stButton>button { |
| background-color: #4CAF50; |
| color: white; |
| border-radius: 5px; |
| } |
| .stSidebar { |
| background-color: #333333; |
| } |
| .stSidebar .stMarkdown, .stSidebar .stButton>button, .stSidebar .stSelectbox>div>label { |
| color: white !important; |
| } |
| [data-testid="stSidebar"] { |
| background-color: rgba(0, 0, 0, 0.5); |
| } |
| .stTextInput>div>div>input { |
| background-color: black; |
| color: white; |
| } |
| .stChatMessage { |
| background-color: #FFF5EE; |
| color: black !important; |
| border-radius: 10px; |
| padding: 10px; |
| margin-bottom: 10px; |
| } |
| .stChatMessage p, .stChatMessage ul, .stChatMessage ol, .stChatMessage li { |
| color: black !important; |
| } |
| .stChatInput { |
| position: fixed; |
| bottom: 0; |
| left: 0; |
| right: 0; |
| padding: 1rem; |
| background-color: black; |
| } |
| .stChatInput input { |
| color: white !important; |
| background-color: black !important; |
| border: 1px solid #444; |
| } |
| .stChatInput button { |
| background-color: red !important; |
| } |
| .stChatInput input::placeholder { |
| color: #888; |
| } |
| .stChatInput input:focus { |
| color: white !important; |
| } |
| .main { |
| margin-bottom: 70px; |
| } |
| .footer { |
| position: fixed; |
| left: 0; |
| bottom: 70px; |
| width: 100%; |
| background-color: white; |
| color: black; |
| text-align: center; |
| padding: 10px; |
| } |
| </style> |
| """ |
|
|