Skip to content

Commit 63f08fc

Browse files
dmytropolitykadependabot[bot]maximiliansoelchFelixTJDietrich
authored
Upgrade Playground (#284)
Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Maximilian Sölch <[email protected]> Co-authored-by: Felix T.J. Dietrich <[email protected]> Co-authored-by: Felix T.J. Dietrich <[email protected]>
1 parent 4e35ece commit 63f08fc

File tree

40 files changed

+405
-5113
lines changed

40 files changed

+405
-5113
lines changed

assessment_module_manager/Dockerfile

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,10 +26,12 @@ RUN poetry config virtualenvs.create true \
2626
COPY . ./
2727

2828
# Use modules configuration file for docker
29-
RUN mv ./modules.docker.ini ./modules.ini
29+
RUN cp ./modules.docker.ini ./modules.ini
30+
RUN rm ./modules.docker.ini
3031

3132
# Use deployments configuration file for docker
32-
RUN mv ./deployments.docker.ini ./deployments.ini
33+
RUN cp ./deployments.docker.ini ./deployments.ini
34+
RUN rm ./deployments.docker.ini
3335

3436
# poetry scripts don't work here
35-
CMD poetry run python -m assessment_module_manager
37+
CMD poetry run python -m assessment_module_manager

assessment_module_manager/assessment_module_manager/endpoints/health_endpoint.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,9 @@ class HealthResponse(BaseModel):
3737
"url": "http://localhost:5001",
3838
"type": "programming",
3939
"healthy": True,
40-
"supportsEvaluation": True
40+
"supportsEvaluation": True,
41+
"supportsNonGradedFeedbackRequests": True,
42+
"supportsGradedFeedbackRequests": True
4143
}
4244
}
4345
]
@@ -58,7 +60,9 @@ async def get_health() -> HealthResponse:
5860
"url": module.url,
5961
"type": module.type,
6062
"healthy": await is_healthy(module),
61-
"supportsEvaluation": module.supports_evaluation
63+
"supportsEvaluation": module.supports_evaluation,
64+
"supportsNonGradedFeedbackRequests": module.supports_non_graded_feedback_requests,
65+
"supportsGradedFeedbackRequests": module.supports_graded_feedback_requests
6266
}
6367
for module in get_modules()
6468
}

assessment_module_manager/assessment_module_manager/module/list_modules.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@ def list_modules() -> List[Module]:
2121
url=cast(AnyHttpUrl, os.environ.get(f"{module.upper()}_URL", modules_config[module]["url"])),
2222
type=ExerciseType(modules_config[module]["type"]),
2323
supports_evaluation=modules_config[module].getboolean("supports_evaluation"),
24+
supports_non_graded_feedback_requests=modules_config[module].getboolean("supports_non_graded_feedback_requests"),
25+
supports_graded_feedback_requests=modules_config[module].getboolean("supports_graded_feedback_requests")
2426
)
2527
for module in modules_config.sections()
2628
]

assessment_module_manager/assessment_module_manager/module/module.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,3 +9,5 @@ class Module(BaseModel):
99
url: AnyHttpUrl = Field(example="http://localhost:5001")
1010
type: ExerciseType = Field(example=ExerciseType.text)
1111
supports_evaluation: bool = Field(description="Whether the module supports evaluation", example=True)
12+
supports_non_graded_feedback_requests: bool = Field(description="Whether the module supports non-graded feedback requests", example=True),
13+
supports_graded_feedback_requests: bool = Field(description="Whether the module supports graded feedback requests", example=True)
Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,8 @@
11
[schwind]
2-
url = https://ma-schwind.ase.cit.tum.de
2+
url = https://ma-schwind.ase.cit.tum.de
3+
4+
[playground]
5+
url = https://athenetest1-03.ase.cit.tum.de
6+
7+
[localhost]
8+
url = http://localhost:3000
Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
11
# for local development only
22

33
[local]
4-
url = http://localhost:8080
4+
url = http://localhost:8080
5+
6+
[playground]
7+
url = http://localhost:3000

assessment_module_manager/modules.docker.ini

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,33 +2,47 @@
22
url = http://module-example:5001
33
type = programming
44
supports_evaluation = true
5+
supports_non_graded_feedback_requests = false
6+
supports_graded_feedback_requests = false
57

68
[module_programming_llm]
79
url = http://module-programming-llm:5002
810
type = programming
911
supports_evaluation = false
12+
supports_non_graded_feedback_requests = true
13+
supports_graded_feedback_requests = true
1014

1115
[module_text_llm]
1216
url = http://module-text-llm:5003
1317
type = text
1418
supports_evaluation = true
19+
supports_non_graded_feedback_requests = false
20+
supports_graded_feedback_requests = true
1521

1622
[module_text_cofee]
1723
url = http://module-text-cofee:5004
1824
type = text
1925
supports_evaluation = false
26+
supports_non_graded_feedback_requests = false
27+
supports_graded_feedback_requests = true
2028

2129
[module_programming_themisml]
2230
url = http://module-programming-themisml:5005
2331
type = programming
2432
supports_evaluation = false
33+
supports_non_graded_feedback_requests = false
34+
supports_graded_feedback_requests = true
2535

2636
[module_programming_apted]
2737
url = http://module-programming-apted:5006
2838
type = programming
2939
supports_evaluation = false
40+
supports_non_graded_feedback_requests = false
41+
supports_graded_feedback_requests = false
3042

3143
[module_modeling_llm]
3244
url = http://module-modeling-llm:5008
3345
type = modeling
3446
supports_evaluation = false
47+
supports_non_graded_feedback_requests = false
48+
supports_graded_feedback_requests = true

assessment_module_manager/modules.ini

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,33 +2,47 @@
22
url = http://localhost:5001
33
type = programming
44
supports_evaluation = true
5+
supports_non_graded_feedback_requests = false
6+
supports_graded_feedback_requests = false
57

68
[module_programming_llm]
79
url = http://localhost:5002
810
type = programming
911
supports_evaluation = false
12+
supports_non_graded_feedback_requests = true
13+
supports_graded_feedback_requests = true
1014

1115
[module_text_llm]
1216
url = http://localhost:5003
1317
type = text
1418
supports_evaluation = true
19+
supports_non_graded_feedback_requests = false
20+
supports_graded_feedback_requests = true
1521

1622
[module_text_cofee]
1723
url = http://localhost:5004
1824
type = text
1925
supports_evaluation = false
26+
supports_non_graded_feedback_requests = false
27+
supports_graded_feedback_requests = true
2028

2129
[module_programming_themisml]
2230
url = http://localhost:5005
2331
type = programming
2432
supports_evaluation = false
33+
supports_non_graded_feedback_requests = false
34+
supports_graded_feedback_requests = true
2535

2636
[module_programming_apted]
2737
url = http://localhost:5006
2838
type = programming
2939
supports_evaluation = false
40+
supports_non_graded_feedback_requests = false
41+
supports_graded_feedback_requests = false
3042

3143
[module_modeling_llm]
3244
url = http://localhost:5008
3345
type = modeling
3446
supports_evaluation = false
47+
supports_non_graded_feedback_requests = false
48+
supports_graded_feedback_requests = true

athena/athena/schemas/feedback.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,8 @@ class Feedback(Schema, ABC):
2929
exercise_id: int = Field(example=1)
3030
submission_id: int = Field(example=1)
3131

32-
def to_model(self, is_suggestion: bool = False, lms_id: Optional[int] = None):
33-
return type(self).get_model_class()(**self.dict(), is_suggestion=is_suggestion, lms_id=lms_id)
32+
def to_model(self, is_suggestion: bool = False, lms_id: Optional[int] = None, lms_url: Optional[str] = None):
33+
return type(self).get_model_class()(**self.dict(), is_suggestion=is_suggestion, lms_id=lms_id, lms_url=lms_url)
3434

3535
class Config:
3636
orm_mode = True

athena/athena/storage/feedback_storage.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ def store_feedback(feedback: Feedback, is_lms_id=False, lms_url: Optional[str] =
5959
lms_url=lms_url).scalar()
6060
feedback.id = internal_id
6161

62-
stored_feedback_model = db.merge(feedback.to_model(lms_id=lms_id))
62+
stored_feedback_model = db.merge(feedback.to_model(lms_id=lms_id, lms_url=lms_url))
6363
db.commit()
6464
return stored_feedback_model.to_schema()
6565

0 commit comments

Comments
 (0)