Fix bug with preprocessing ops not handled in --line-by-line mode
This commit is contained in:
parent
9a3a28a813
commit
ad30bb9384
@ -40,6 +40,7 @@ module GEval.Core
|
|||||||
checkMultipleOuts,
|
checkMultipleOuts,
|
||||||
checkMultipleOutsCore,
|
checkMultipleOutsCore,
|
||||||
gesMainMetric,
|
gesMainMetric,
|
||||||
|
gesMainScheme,
|
||||||
gesPreprocess,
|
gesPreprocess,
|
||||||
getDataDecoder,
|
getDataDecoder,
|
||||||
threeLineSource,
|
threeLineSource,
|
||||||
@ -177,6 +178,11 @@ gesMainMetric spec = case gesMetrics spec of
|
|||||||
(scheme:_) -> evaluationSchemeMetric scheme
|
(scheme:_) -> evaluationSchemeMetric scheme
|
||||||
otherwise -> error "no metric given"
|
otherwise -> error "no metric given"
|
||||||
|
|
||||||
|
gesMainScheme :: GEvalSpecification -> EvaluationScheme
|
||||||
|
gesMainScheme spec = case gesMetrics spec of
|
||||||
|
(scheme:_) -> scheme
|
||||||
|
otherwise -> error "no metric given"
|
||||||
|
|
||||||
gesPreprocess :: GEvalSpecification -> (Text -> Text)
|
gesPreprocess :: GEvalSpecification -> (Text -> Text)
|
||||||
gesPreprocess spec = tokenizeTabSeparatedWithSpaces (gesTokenizer spec)
|
gesPreprocess spec = tokenizeTabSeparatedWithSpaces (gesTokenizer spec)
|
||||||
|
|
||||||
|
@ -23,6 +23,7 @@ module GEval.LineByLine
|
|||||||
|
|
||||||
import GEval.Core
|
import GEval.Core
|
||||||
import GEval.Common
|
import GEval.Common
|
||||||
|
import GEval.EvaluationScheme
|
||||||
import Text.Tokenizer
|
import Text.Tokenizer
|
||||||
|
|
||||||
import Data.Conduit.AutoDecompress (doNothing)
|
import Data.Conduit.AutoDecompress (doNothing)
|
||||||
@ -359,8 +360,9 @@ runLineByLineGeneralized ordering spec consum = do
|
|||||||
(inputFilePath, expectedFilePath, outFilePath) <- checkAndGetFilesSingleOut True spec
|
(inputFilePath, expectedFilePath, outFilePath) <- checkAndGetFilesSingleOut True spec
|
||||||
gevalLineByLineCore metric mSelector preprocess inputFilePath expectedFilePath outFilePath (sorter ordering .| consum mReferences)
|
gevalLineByLineCore metric mSelector preprocess inputFilePath expectedFilePath outFilePath (sorter ordering .| consum mReferences)
|
||||||
where metric = gesMainMetric spec
|
where metric = gesMainMetric spec
|
||||||
|
scheme = gesMainScheme spec
|
||||||
mSelector = gesSelector spec
|
mSelector = gesSelector spec
|
||||||
preprocess = gesPreprocess spec
|
preprocess = (gesPreprocess spec) . (applyPreprocessingOperations scheme)
|
||||||
sorter KeepTheOriginalOrder = doNothing
|
sorter KeepTheOriginalOrder = doNothing
|
||||||
sorter ordering = gobbleAndDo $ sortBy (sortOrder ordering (getMetricOrdering metric))
|
sorter ordering = gobbleAndDo $ sortBy (sortOrder ordering (getMetricOrdering metric))
|
||||||
sortOrder FirstTheWorst TheHigherTheBetter = compareScores
|
sortOrder FirstTheWorst TheHigherTheBetter = compareScores
|
||||||
@ -414,7 +416,8 @@ runMultiOutputGeneralized spec consum = do
|
|||||||
runResourceT $ runConduit $
|
runResourceT $ runConduit $
|
||||||
(sequenceSources sources .| consum)
|
(sequenceSources sources .| consum)
|
||||||
where metric = gesMainMetric spec
|
where metric = gesMainMetric spec
|
||||||
preprocess = gesPreprocess spec
|
scheme = gesMainScheme spec
|
||||||
|
preprocess = (gesPreprocess spec) . (applyPreprocessingOperations scheme)
|
||||||
mSelector = gesSelector spec
|
mSelector = gesSelector spec
|
||||||
|
|
||||||
runMostWorseningFeatures :: ResultOrdering -> FilePath -> GEvalSpecification -> BlackBoxDebuggingOptions -> IO ()
|
runMostWorseningFeatures :: ResultOrdering -> FilePath -> GEvalSpecification -> BlackBoxDebuggingOptions -> IO ()
|
||||||
|
Loading…
Reference in New Issue
Block a user