diff --git a/evaluation_function/evaluation.py b/evaluation_function/evaluation.py index cd7db60..6bb4864 100755 --- a/evaluation_function/evaluation.py +++ b/evaluation_function/evaluation.py @@ -1,14 +1,14 @@ from typing import Any from lf_toolkit.evaluation import Result as LFResult -from .schemas import FSA +from .schemas import FSA, FSAFrontend from .schemas.result import Result from .correction import analyze_fsa_correction def validate_fsa(value: str | dict) -> FSA: """Parse a FSA from JSON string or dict.""" if isinstance(value, str): - return FSA.model_validate_json(value) - return FSA.model_validate(value) + return FSAFrontend.model_validate_json(value).toFSA() + return FSAFrontend.model_validate(value).toFSA() def evaluation_function( response: Any = None, diff --git a/evaluation_function/schemas/fsaFrontend.py b/evaluation_function/schemas/fsaFrontend.py index 4bfee62..5292b10 100644 --- a/evaluation_function/schemas/fsaFrontend.py +++ b/evaluation_function/schemas/fsaFrontend.py @@ -69,7 +69,7 @@ class Config: } @classmethod - def from_flattened(cls, data: dict) -> FSA: + def toFSA(cls, data: dict) -> FSA: """ Convert frontend FSA payload (with transitions as "from|symbol|to") into the FSABackend model with proper Transition objects.