Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
math_tutor_dev
public_math_tutor
Commits
e25c508d
Commit
e25c508d
authored
May 19, 2026
by
Kantz
Browse files
Merge branch 'dev' of
ssh://gitlab.rz.hft-stuttgart.de:54321/kantz/tutor_react
into dev
parents
4a45a7b2
805667e2
Changes
3
Hide whitespace changes
Inline
Side-by-side
math-tutor/backend/.env-example
View file @
e25c508d
...
...
@@ -9,6 +9,7 @@ FRONTEND_URL="http://frontend:3000"
ORCHESTRATOR="task" # "tutor", "task" or "qa"
RETRIEVAL_IMPL="child" # "child" or "subsection"
TASK_FOLDER="tasks"
LLM_PROVIDER="gwdg" # "openai", "gwdg", "mistral", or "ollama"
EMBEDDING_PROVIDER="sentence-transformer" # "sentence-transformer", "openai", or "gwdg"
...
...
math-tutor/backend/app/config.py
View file @
e25c508d
import
os
from
dataclasses
import
dataclass
from
pathlib
import
Path
from
dotenv
import
load_dotenv
from
pydantic
import
BaseModel
...
...
@@ -7,6 +8,9 @@ from typing import Optional
load_dotenv
()
BACKEND_ROOT
=
Path
(
__file__
).
resolve
().
parents
[
1
]
SOURCES_ROOT
=
BACKEND_ROOT
/
"sources"
SUPPORTED_LLM_PROVIDERS
=
{
"openai"
,
"gwdg"
,
"mistral"
,
"ollama"
}
SUPPORTED_EMBEDDING_PROVIDERS
=
{
"sentence-transformer"
,
"openai"
,
"gwdg"
}
...
...
@@ -30,6 +34,17 @@ def get_retrieval_impl() -> str:
return
"child"
def
get_task_folder
()
->
Path
:
value
=
os
.
getenv
(
"TASK_FOLDER"
,
"tasks"
).
strip
()
if
not
value
:
value
=
"tasks"
folder
=
Path
(
value
)
if
folder
.
is_absolute
():
return
folder
return
SOURCES_ROOT
/
folder
def
get_llm_provider
()
->
str
:
value
=
os
.
getenv
(
"LLM_PROVIDER"
)
if
value
is
None
or
not
value
.
strip
():
...
...
math-tutor/backend/app/deterministic_services/task_catalog.py
View file @
e25c508d
...
...
@@ -9,10 +9,11 @@ from urllib.parse import quote
import
yaml
from
app
import
config
from
app.deterministic_services
import
context_store
from
app.deterministic_services.vector_store
import
parse_markdown_with_frontmatter
TASKS_DIR
=
Path
(
__file__
).
resolve
().
parents
[
2
]
/
"sources"
/
"tasks"
TASKS_DIR
=
config
.
get_task_folder
()
TASK_IMAGES_DIR
=
TASKS_DIR
/
"images"
SOURCES_DIR
=
Path
(
__file__
).
resolve
().
parents
[
2
]
/
"sources"
SUBSECTION_MAP_PATH
=
TASKS_DIR
/
"_subsection_map.yaml"
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new 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