ENCOA-256: Some more changes to level prompt and added mc to reading
This commit is contained in:
@@ -10,7 +10,7 @@ from app.services.abc import IReadingService, ILLMService
|
||||
from .fill_blanks import FillBlanks
|
||||
from .idea_match import IdeaMatch
|
||||
from .paragraph_match import ParagraphMatch
|
||||
from ..shared import TrueFalse
|
||||
from ..shared import TrueFalse, MultipleChoice
|
||||
from .import_reading import ImportReadingModule
|
||||
from .write_blanks import WriteBlanks
|
||||
|
||||
@@ -24,6 +24,7 @@ class ReadingService(IReadingService):
|
||||
self._paragraph_match = ParagraphMatch(llm)
|
||||
self._true_false = TrueFalse(llm)
|
||||
self._write_blanks = WriteBlanks(llm)
|
||||
self._multiple_choice = MultipleChoice(llm)
|
||||
self._logger = getLogger(__name__)
|
||||
self._import = ImportReadingModule(llm)
|
||||
|
||||
@@ -119,6 +120,12 @@ class ReadingService(IReadingService):
|
||||
question["variant"] = "ideaMatch"
|
||||
self._logger.info(f"Added idea match: {question}")
|
||||
return question
|
||||
elif req_exercise.type == "multipleChoice":
|
||||
question = await self._multiple_choice.gen_multiple_choice(
|
||||
text, req_exercise.quantity, start_id, difficulty, 4
|
||||
)
|
||||
self._logger.info(f"Added multiple choice: {question}")
|
||||
return question
|
||||
|
||||
async def generate_reading_exercises(self, dto: ReadingDTO):
|
||||
exercise_tasks = []
|
||||
|
||||
@@ -98,7 +98,11 @@ class ImportReadingModule:
|
||||
]
|
||||
}
|
||||
],
|
||||
"text": "<numbered questions with format in square brackets: [<question text>{{<question number>}}\\\\n] notice how there is a double backslash before the n -> I want an escaped newline in your output> ",
|
||||
"text": (
|
||||
"<numbered questions with format in square brackets: [<question text>{{<question number>}}\\\\n] "
|
||||
"- notice how there the question number inside {{}} -> the text MUST always contain the question number in that format "
|
||||
"- and notice how there is a double backslash before the n -> I want an escaped newline in your output> "
|
||||
),
|
||||
"type": "writeBlanks",
|
||||
"prompt": "<specific instructions for this exercise section>"
|
||||
}
|
||||
@@ -192,13 +196,14 @@ class ImportReadingModule:
|
||||
+ (
|
||||
"Solutions were not provided - analyze the passage carefully to determine correct answers."
|
||||
if not solutions else
|
||||
"Use the provided solutions to fill in all answer fields accurately."
|
||||
"Use the provided solutions to fill in all answer fields accurately, if word answers have all letters "
|
||||
"uppercase convert them to lowercase before assigning them."
|
||||
)
|
||||
+
|
||||
"Pay extra attention to fillblanks exercises the solution and option wording must match in case!"
|
||||
"There can't be options in lowercase and solutions in uppercase!"
|
||||
"Pay extra attention to fillblanks exercises the solution and option wording must match in case! "
|
||||
"There can't be options in lowercase and solutions in uppercase! "
|
||||
"Also PAY ATTENTION TO SECTIONS, these most likely indicate parts, and in each section/part there "
|
||||
"should be a text, if there isn't a title for it choose a reasonable one based on its contents."
|
||||
"should be a text, if there isn't a title for it choose a reasonable one based on its contents. "
|
||||
)
|
||||
|
||||
return {
|
||||
|
||||
Reference in New Issue
Block a user