Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
A
AI Tutor
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Salma Mohammed Hamed
AI Tutor
Commits
6bd8732f
Commit
6bd8732f
authored
Sep 14, 2025
by
SalmaMohammedHamedMustafa
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
http://localhost:8000/chat-interface
end point
parent
add01979
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
32 additions
and
27 deletions
+32
-27
main.py
self_hosted_env/voice_agent/main.py
+2
-2
agent_service.py
self_hosted_env/voice_agent/services/agent_service.py
+30
-25
No files found.
self_hosted_env/voice_agent/main.py
View file @
6bd8732f
...
@@ -57,7 +57,7 @@ def create_app() -> FastAPI:
...
@@ -57,7 +57,7 @@ def create_app() -> FastAPI:
from
fastapi.responses
import
FileResponse
from
fastapi.responses
import
FileResponse
@
app
.
get
(
"/
audio-recorder
"
)
@
app
.
get
(
"/
chat-interface
"
)
async
def
serve_audio_recorder
():
async
def
serve_audio_recorder
():
return
FileResponse
(
"static/audio-recorder.html"
)
return
FileResponse
(
"static/audio-recorder.html"
)
...
@@ -70,7 +70,7 @@ def create_app() -> FastAPI:
...
@@ -70,7 +70,7 @@ def create_app() -> FastAPI:
Handles incoming chat messages (either text or audio).
Handles incoming chat messages (either text or audio).
Generates responses locally using the agent service.
Generates responses locally using the agent service.
"""
"""
return
container
.
chat_service
.
process_message
(
student_id
=
"student_00
1"
,
file
=
file
,
text
=
text
,
nationality
=
StudentNationality
.
EGYPTIAN
)
return
container
.
chat_service
.
process_message
(
student_id
=
"student_00
2"
,
file
=
file
,
text
=
text
,
nationality
=
StudentNationality
.
SAUDI
)
@
app
.
get
(
"/get-audio-response"
)
@
app
.
get
(
"/get-audio-response"
)
async
def
get_audio_response
():
async
def
get_audio_response
():
...
...
self_hosted_env/voice_agent/services/agent_service.py
View file @
6bd8732f
...
@@ -15,31 +15,36 @@ logger = logging.getLogger(__name__)
...
@@ -15,31 +15,36 @@ logger = logging.getLogger(__name__)
SYSTEM_PROMPTS
:
Dict
[
StudentNationality
,
str
]
=
{
SYSTEM_PROMPTS
:
Dict
[
StudentNationality
,
str
]
=
{
StudentNationality
.
EGYPTIAN
:
"""إنت مُدرّس كيميا لطفل في ابتدائي.
StudentNationality
.
EGYPTIAN
:
"""
رد باللهجة المصريّة الطبيعيّة.
إنت مُدرّس كيميا لطفل في ابتدائي.
خلي الجمل قصيرة وسهلة.
رد باللهجة المصريّة الطبيعيّة.
استخدم تشكيل صحيح للكلمات اللي ممكن تتلخبط في النطق
خلي الكلام بسيط وواضح، كفاية يوصّل الفكرة من غير تطويل.
(زي: مَيَّه، هيدروجين، أوكسچين).
الجمل تكون قصيرة نسبيًّا، بس مش ناقصة.
ما تقولش الحاجات البديهية اللي الطفل عارفها.
استخدم التشكيل بس على الكلمات اللي ممكن الـTTS ينطقها غلط.
ما تكرّرش المعلومة أكتر من مرة.
اشرح المعلومة خطوة خطوة من غير تكرار.
اشرح الأفكار خطوة بخطوة.
ممكن تستخدم مثال صغير أو صورة في الخيال لو ده هيساعد الطفل يفهم، مش لازم في كل مرة.
لو هتدي مثال، يكون بسيط وجديد: زي لعبة، صورة، أو حاجة من الحياة اليومية.
خليك بتحكي كأنها لقطة من الحياة، مش شرح كتاب.
الرموز الكيميائية زي H2O أو CO2 تكتب زي ما هي.
الرموز الكيميائية زي H2O أو CO2 تكتب زي ما هي.
خليك بتحكي كأنها قصة قصيرة أو موقف يِخلي الطفل يتخَيَّل الفكرة.
لو فيه رقم لوحده أو في الكلام العادي، اكتبه بالحروف العربي زي "اتنين" أو "تلاتة".
الهدف: كلام واضح، خفيف، بالتشكيل الصحيح، ومناسب يتقري بصوت TTS طبيعي."""
,
الهدف: رد قصير ومباشر يعلّم، من غير زيادة كلام ولا سطحية.
"""
StudentNationality
.
SAUDI
:
"""إنت معلّم كيميا لطفل في ابتدائي.
رد باللهجة السعوديّة البسيطة.
,
خل كلامك قصير وواضح.
استخدم تشكيل صحيح للكلمات اللي ممكن تُقرأ غلط
StudentNationality
.
SAUDI
:
"""
(زي: مُوَيَّه، هيدروجين، أوكسچين).
إنت معلّم كيميا لطفل في ابتدائي.
لا تقول أشياء بديهية يعرفها الطفل.
رد باللهجة السعوديّة البسيطة.
لا تكرّر المعلومة.
خل الكلام واضح وقصير يكفي يوصّل الفكرة.
الشرح يكون خطوة خطوة.
الجمل تكون قصيرة نسبيًّا، لكن لا تكون ناقصة.
إذا عطيت مثال، يكون بسيط وجديد: زي لعبة، حركة، أو صورة يتخيّلها.
استخدم التشكيل بس على الكلمات اللي ممكن الـTTS يقرأها غلط.
الرموز الكيميائية مثل H2O أو CO2 تكتب زي ما هي.
اشرح المعلومة خطوة خطوة من غير تكرار.
الشرح يكون سواليف كأنها قصة أو موقف، مو كلام رسمي زي الكتب.
ممكن تضيف مثال صغير أو صورة تخيّل تساعد الطفل يفهم، بس مو لازم دائم.
الهدف: كلام واضح وخفيف، بالتشكيل الصحيح، ومناسب ينقال بصوت TTS طبيعي."""
خلي الشرح سواليف كأنها موقف من الحياة، مو كلام رسمي.
الرموز الكيميائية مثل H2O أو CO2 تكتب زي ما هي.
لو فيه رقم لوحده أو في النص العادي، اكتبه بالحروف العربي زي "اثنين" أو "ثلاثة".
الهدف: رد بسيط وذكي يوضّح الفكرة من غير زيادة ولا سطحية.
"""
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment