def test_ende(self): os.chdir('models/en-de/') with open('../../en-de/in', 'r', encoding='utf-8') as in_file, \ open('../../en-de/references', 'r', encoding='utf-8') as ref_file, \ open('../../en-de/out_score', 'w', encoding='utf-8') as score_file: settings = ScorerSettings() settings.models = ['model.npz'] settings.minibatch_size = 80 settings.normalization_alpha = 1.0 score(in_file, ref_file, score_file, settings) os.chdir('../..') self.scoreEqual('en-de/ref_score', 'en-de/out_score')
for i, line in enumerate(target_lines): score_str = ' '.join(map(str, [s[i] for s in scores])) if scorer_settings.verbose: output_file.write('{0} '.format(line.strip())) output_file.write('{0}\n'.format(score_str)) def main(source_file, target_file, output_file, scorer_settings): # load model model_options options = [] for model in scorer_settings.models: options.append(load_config(model)) fill_options(options[-1]) options[-1]['reload'] = model options[-1] = argparse.Namespace(**options[-1]) scores = score_model(source_file, target_file, scorer_settings, options) write_scores(source_file, target_file, scores, output_file, scorer_settings) if __name__ == "__main__": scorer_settings = ScorerSettings(from_console_arguments=True) source_file = scorer_settings.source target_file = scorer_settings.target output_file = scorer_settings.output level = logging.DEBUG if scorer_settings.verbose else logging.INFO logging.basicConfig(level=level, format='%(levelname)s: %(message)s') main(source_file, target_file, output_file, scorer_settings)
def get_settings(): scorer_settings = ScorerSettings() scorer_settings.models = ['model.npz'] scorer_settings.minibatch_size = 80 scorer_settings.normalization_alpha = 1.0 return scorer_settings