UI bugfixes with boss
This commit is contained in:
@@ -6,6 +6,7 @@ from typing import Any
|
||||
from .draft_validator import (
|
||||
assert_draft_matches_shape,
|
||||
parse_json_from_llm_text,
|
||||
shuffle_options_in_questions,
|
||||
validate_and_normalize_draft,
|
||||
)
|
||||
from .llm_client import LlmError, chat_completion_text_content, get_llm_config
|
||||
@@ -103,6 +104,7 @@ def generate_full_test_by_shape(test_title: str, test_description: str, shape: l
|
||||
parsed = parse_json_from_llm_text(raw)
|
||||
draft = validate_and_normalize_draft(parsed)
|
||||
assert_draft_matches_shape({'questions': draft['questions']}, shape)
|
||||
shuffle_options_in_questions(draft['questions'])
|
||||
return {
|
||||
'title': draft['title'],
|
||||
'description': draft['description'],
|
||||
@@ -153,6 +155,7 @@ def generate_test_by_title(
|
||||
raw = chat_completion_text_content(cfg, system, user, 0.45)
|
||||
parsed = parse_json_from_llm_text(raw)
|
||||
draft = validate_and_normalize_draft(parsed)
|
||||
shuffle_options_in_questions(draft['questions'])
|
||||
return {
|
||||
'title': draft['title'],
|
||||
'description': draft['description'],
|
||||
@@ -475,9 +478,11 @@ def generate_or_rephrase_question(
|
||||
shape = [{'optionsCount': n, 'hasMultipleAnswers': bool(has_multiple_answers)}]
|
||||
assert_draft_matches_shape({'questions': [parsed]}, shape)
|
||||
draft = validate_and_normalize_draft({'title': 'временно', 'questions': [parsed]})
|
||||
q0 = draft['questions'][0]
|
||||
shuffle_options_in_questions([q0])
|
||||
return {
|
||||
'mode': 'full',
|
||||
'text': draft['questions'][0]['text'],
|
||||
'hasMultipleAnswers': draft['questions'][0]['hasMultipleAnswers'],
|
||||
'options': draft['questions'][0]['options'],
|
||||
'text': q0['text'],
|
||||
'hasMultipleAnswers': q0['hasMultipleAnswers'],
|
||||
'options': q0['options'],
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user