Unbabel/OpenKiwi

View on GitHub
kiwi/cli/models/predictor_estimator.py

Summary

Maintainability
F
3 days
Test Coverage
B
86%

File predictor_estimator.py has 478 lines of code (exceeds 250 allowed). Consider refactoring.
Open

#  OpenKiwi: Open-Source Machine Translation Quality Estimation
#  Copyright (C) 2019 Unbabel <openkiwi@unbabel.com>
#
#  This program is free software: you can redistribute it and/or modify
#  it under the terms of the GNU Affero General Public License as published
Severity: Minor
Found in kiwi/cli/models/predictor_estimator.py - About 7 hrs to fix

    Similar blocks of code found in 4 locations. Consider refactoring.
    Open

    def parser_for_pipeline(pipeline):
        if pipeline == 'train':
            return ModelParser(
                'estimator',
                'train',
    Severity: Major
    Found in kiwi/cli/models/predictor_estimator.py and 3 other locations - About 3 hrs to fix
    kiwi/cli/models/linear.py on lines 302..320
    kiwi/cli/models/nuqe.py on lines 120..138
    kiwi/cli/models/quetch.py on lines 360..378

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 69.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    Similar blocks of code found in 30 locations. Consider refactoring.
    Open

        group.add_argument(
            '--binary-level',
            type=lambda x: bool(strtobool(x)),
    Severity: Major
    Found in kiwi/cli/models/predictor_estimator.py and 29 other locations - About 1 hr to fix
    kiwi/cli/models/nuqe.py on lines 59..61
    kiwi/cli/models/predictor_estimator.py on lines 144..146
    kiwi/cli/models/predictor_estimator.py on lines 276..278
    kiwi/cli/models/predictor_estimator.py on lines 285..287
    kiwi/cli/models/predictor_estimator.py on lines 322..324
    kiwi/cli/models/predictor_estimator.py on lines 330..332
    kiwi/cli/models/predictor_estimator.py on lines 339..341
    kiwi/cli/models/predictor_estimator.py on lines 348..350
    kiwi/cli/models/predictor_estimator.py on lines 382..384
    kiwi/cli/models/predictor_estimator.py on lines 391..393
    kiwi/cli/models/predictor_estimator.py on lines 400..402
    kiwi/cli/models/predictor_estimator.py on lines 415..417
    kiwi/cli/models/predictor_estimator.py on lines 428..430
    kiwi/cli/models/predictor_estimator.py on lines 446..448
    kiwi/cli/models/predictor_estimator.py on lines 484..486
    kiwi/cli/models/predictor_estimator.py on lines 493..495
    kiwi/cli/models/predictor_estimator.py on lines 501..503
    kiwi/cli/models/predictor_estimator.py on lines 512..514
    kiwi/cli/models/quetch.py on lines 129..131
    kiwi/cli/models/quetch.py on lines 137..139
    kiwi/cli/models/quetch.py on lines 145..147
    kiwi/cli/models/quetch.py on lines 153..155
    kiwi/cli/models/quetch.py on lines 217..219
    kiwi/cli/models/quetch.py on lines 226..228
    kiwi/cli/models/quetch.py on lines 244..246
    kiwi/cli/models/quetch.py on lines 295..297
    kiwi/cli/opts.py on lines 126..128
    kiwi/cli/pipelines/train.py on lines 86..88
    kiwi/cli/pipelines/train.py on lines 109..111

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 39.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    Similar blocks of code found in 30 locations. Consider refactoring.
    Open

        group.add_argument(
            '--sentence-level',
            type=lambda x: bool(strtobool(x)),
    Severity: Major
    Found in kiwi/cli/models/predictor_estimator.py and 29 other locations - About 1 hr to fix
    kiwi/cli/models/nuqe.py on lines 59..61
    kiwi/cli/models/predictor_estimator.py on lines 144..146
    kiwi/cli/models/predictor_estimator.py on lines 276..278
    kiwi/cli/models/predictor_estimator.py on lines 285..287
    kiwi/cli/models/predictor_estimator.py on lines 322..324
    kiwi/cli/models/predictor_estimator.py on lines 330..332
    kiwi/cli/models/predictor_estimator.py on lines 339..341
    kiwi/cli/models/predictor_estimator.py on lines 348..350
    kiwi/cli/models/predictor_estimator.py on lines 382..384
    kiwi/cli/models/predictor_estimator.py on lines 391..393
    kiwi/cli/models/predictor_estimator.py on lines 400..402
    kiwi/cli/models/predictor_estimator.py on lines 415..417
    kiwi/cli/models/predictor_estimator.py on lines 428..430
    kiwi/cli/models/predictor_estimator.py on lines 437..439
    kiwi/cli/models/predictor_estimator.py on lines 446..448
    kiwi/cli/models/predictor_estimator.py on lines 484..486
    kiwi/cli/models/predictor_estimator.py on lines 501..503
    kiwi/cli/models/predictor_estimator.py on lines 512..514
    kiwi/cli/models/quetch.py on lines 129..131
    kiwi/cli/models/quetch.py on lines 137..139
    kiwi/cli/models/quetch.py on lines 145..147
    kiwi/cli/models/quetch.py on lines 153..155
    kiwi/cli/models/quetch.py on lines 217..219
    kiwi/cli/models/quetch.py on lines 226..228
    kiwi/cli/models/quetch.py on lines 244..246
    kiwi/cli/models/quetch.py on lines 295..297
    kiwi/cli/opts.py on lines 126..128
    kiwi/cli/pipelines/train.py on lines 86..88
    kiwi/cli/pipelines/train.py on lines 109..111

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 39.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    Similar blocks of code found in 30 locations. Consider refactoring.
    Open

        group.add_argument(
            '--sentence-level',
            type=lambda x: bool(strtobool(x)),
    Severity: Major
    Found in kiwi/cli/models/predictor_estimator.py and 29 other locations - About 1 hr to fix
    kiwi/cli/models/nuqe.py on lines 59..61
    kiwi/cli/models/predictor_estimator.py on lines 144..146
    kiwi/cli/models/predictor_estimator.py on lines 276..278
    kiwi/cli/models/predictor_estimator.py on lines 285..287
    kiwi/cli/models/predictor_estimator.py on lines 322..324
    kiwi/cli/models/predictor_estimator.py on lines 330..332
    kiwi/cli/models/predictor_estimator.py on lines 339..341
    kiwi/cli/models/predictor_estimator.py on lines 348..350
    kiwi/cli/models/predictor_estimator.py on lines 382..384
    kiwi/cli/models/predictor_estimator.py on lines 400..402
    kiwi/cli/models/predictor_estimator.py on lines 415..417
    kiwi/cli/models/predictor_estimator.py on lines 428..430
    kiwi/cli/models/predictor_estimator.py on lines 437..439
    kiwi/cli/models/predictor_estimator.py on lines 446..448
    kiwi/cli/models/predictor_estimator.py on lines 484..486
    kiwi/cli/models/predictor_estimator.py on lines 493..495
    kiwi/cli/models/predictor_estimator.py on lines 501..503
    kiwi/cli/models/predictor_estimator.py on lines 512..514
    kiwi/cli/models/quetch.py on lines 129..131
    kiwi/cli/models/quetch.py on lines 137..139
    kiwi/cli/models/quetch.py on lines 145..147
    kiwi/cli/models/quetch.py on lines 153..155
    kiwi/cli/models/quetch.py on lines 217..219
    kiwi/cli/models/quetch.py on lines 226..228
    kiwi/cli/models/quetch.py on lines 244..246
    kiwi/cli/models/quetch.py on lines 295..297
    kiwi/cli/opts.py on lines 126..128
    kiwi/cli/pipelines/train.py on lines 86..88
    kiwi/cli/pipelines/train.py on lines 109..111

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 39.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    Similar blocks of code found in 30 locations. Consider refactoring.
    Open

        group.add_argument(
            '--binary-level',
            type=lambda x: bool(strtobool(x)),
    Severity: Major
    Found in kiwi/cli/models/predictor_estimator.py and 29 other locations - About 1 hr to fix
    kiwi/cli/models/nuqe.py on lines 59..61
    kiwi/cli/models/predictor_estimator.py on lines 144..146
    kiwi/cli/models/predictor_estimator.py on lines 276..278
    kiwi/cli/models/predictor_estimator.py on lines 285..287
    kiwi/cli/models/predictor_estimator.py on lines 322..324
    kiwi/cli/models/predictor_estimator.py on lines 330..332
    kiwi/cli/models/predictor_estimator.py on lines 339..341
    kiwi/cli/models/predictor_estimator.py on lines 348..350
    kiwi/cli/models/predictor_estimator.py on lines 382..384
    kiwi/cli/models/predictor_estimator.py on lines 391..393
    kiwi/cli/models/predictor_estimator.py on lines 400..402
    kiwi/cli/models/predictor_estimator.py on lines 415..417
    kiwi/cli/models/predictor_estimator.py on lines 428..430
    kiwi/cli/models/predictor_estimator.py on lines 437..439
    kiwi/cli/models/predictor_estimator.py on lines 446..448
    kiwi/cli/models/predictor_estimator.py on lines 484..486
    kiwi/cli/models/predictor_estimator.py on lines 493..495
    kiwi/cli/models/predictor_estimator.py on lines 512..514
    kiwi/cli/models/quetch.py on lines 129..131
    kiwi/cli/models/quetch.py on lines 137..139
    kiwi/cli/models/quetch.py on lines 145..147
    kiwi/cli/models/quetch.py on lines 153..155
    kiwi/cli/models/quetch.py on lines 217..219
    kiwi/cli/models/quetch.py on lines 226..228
    kiwi/cli/models/quetch.py on lines 244..246
    kiwi/cli/models/quetch.py on lines 295..297
    kiwi/cli/opts.py on lines 126..128
    kiwi/cli/pipelines/train.py on lines 86..88
    kiwi/cli/pipelines/train.py on lines 109..111

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 39.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    Similar blocks of code found in 30 locations. Consider refactoring.
    Open

        group.add_argument(
            '--predict-inverse',
            type=lambda x: bool(strtobool(x)),
    Severity: Major
    Found in kiwi/cli/models/predictor_estimator.py and 29 other locations - About 1 hr to fix
    kiwi/cli/models/nuqe.py on lines 59..61
    kiwi/cli/models/predictor_estimator.py on lines 144..146
    kiwi/cli/models/predictor_estimator.py on lines 276..278
    kiwi/cli/models/predictor_estimator.py on lines 322..324
    kiwi/cli/models/predictor_estimator.py on lines 330..332
    kiwi/cli/models/predictor_estimator.py on lines 339..341
    kiwi/cli/models/predictor_estimator.py on lines 348..350
    kiwi/cli/models/predictor_estimator.py on lines 382..384
    kiwi/cli/models/predictor_estimator.py on lines 391..393
    kiwi/cli/models/predictor_estimator.py on lines 400..402
    kiwi/cli/models/predictor_estimator.py on lines 415..417
    kiwi/cli/models/predictor_estimator.py on lines 428..430
    kiwi/cli/models/predictor_estimator.py on lines 437..439
    kiwi/cli/models/predictor_estimator.py on lines 446..448
    kiwi/cli/models/predictor_estimator.py on lines 484..486
    kiwi/cli/models/predictor_estimator.py on lines 493..495
    kiwi/cli/models/predictor_estimator.py on lines 501..503
    kiwi/cli/models/predictor_estimator.py on lines 512..514
    kiwi/cli/models/quetch.py on lines 129..131
    kiwi/cli/models/quetch.py on lines 137..139
    kiwi/cli/models/quetch.py on lines 145..147
    kiwi/cli/models/quetch.py on lines 153..155
    kiwi/cli/models/quetch.py on lines 217..219
    kiwi/cli/models/quetch.py on lines 226..228
    kiwi/cli/models/quetch.py on lines 244..246
    kiwi/cli/models/quetch.py on lines 295..297
    kiwi/cli/opts.py on lines 126..128
    kiwi/cli/pipelines/train.py on lines 86..88
    kiwi/cli/pipelines/train.py on lines 109..111

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 39.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    Similar blocks of code found in 30 locations. Consider refactoring.
    Open

        group.add_argument(
            '--predict-target',
            type=lambda x: bool(strtobool(x)),
    Severity: Major
    Found in kiwi/cli/models/predictor_estimator.py and 29 other locations - About 1 hr to fix
    kiwi/cli/models/nuqe.py on lines 59..61
    kiwi/cli/models/predictor_estimator.py on lines 144..146
    kiwi/cli/models/predictor_estimator.py on lines 276..278
    kiwi/cli/models/predictor_estimator.py on lines 285..287
    kiwi/cli/models/predictor_estimator.py on lines 322..324
    kiwi/cli/models/predictor_estimator.py on lines 330..332
    kiwi/cli/models/predictor_estimator.py on lines 348..350
    kiwi/cli/models/predictor_estimator.py on lines 382..384
    kiwi/cli/models/predictor_estimator.py on lines 391..393
    kiwi/cli/models/predictor_estimator.py on lines 400..402
    kiwi/cli/models/predictor_estimator.py on lines 415..417
    kiwi/cli/models/predictor_estimator.py on lines 428..430
    kiwi/cli/models/predictor_estimator.py on lines 437..439
    kiwi/cli/models/predictor_estimator.py on lines 446..448
    kiwi/cli/models/predictor_estimator.py on lines 484..486
    kiwi/cli/models/predictor_estimator.py on lines 493..495
    kiwi/cli/models/predictor_estimator.py on lines 501..503
    kiwi/cli/models/predictor_estimator.py on lines 512..514
    kiwi/cli/models/quetch.py on lines 129..131
    kiwi/cli/models/quetch.py on lines 137..139
    kiwi/cli/models/quetch.py on lines 145..147
    kiwi/cli/models/quetch.py on lines 153..155
    kiwi/cli/models/quetch.py on lines 217..219
    kiwi/cli/models/quetch.py on lines 226..228
    kiwi/cli/models/quetch.py on lines 244..246
    kiwi/cli/models/quetch.py on lines 295..297
    kiwi/cli/opts.py on lines 126..128
    kiwi/cli/pipelines/train.py on lines 86..88
    kiwi/cli/pipelines/train.py on lines 109..111

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 39.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    Similar blocks of code found in 30 locations. Consider refactoring.
    Open

        group.add_argument(
            '--predict-inverse',
            type=lambda x: bool(strtobool(x)),
    Severity: Major
    Found in kiwi/cli/models/predictor_estimator.py and 29 other locations - About 1 hr to fix
    kiwi/cli/models/nuqe.py on lines 59..61
    kiwi/cli/models/predictor_estimator.py on lines 144..146
    kiwi/cli/models/predictor_estimator.py on lines 276..278
    kiwi/cli/models/predictor_estimator.py on lines 285..287
    kiwi/cli/models/predictor_estimator.py on lines 322..324
    kiwi/cli/models/predictor_estimator.py on lines 330..332
    kiwi/cli/models/predictor_estimator.py on lines 339..341
    kiwi/cli/models/predictor_estimator.py on lines 348..350
    kiwi/cli/models/predictor_estimator.py on lines 382..384
    kiwi/cli/models/predictor_estimator.py on lines 391..393
    kiwi/cli/models/predictor_estimator.py on lines 400..402
    kiwi/cli/models/predictor_estimator.py on lines 415..417
    kiwi/cli/models/predictor_estimator.py on lines 428..430
    kiwi/cli/models/predictor_estimator.py on lines 437..439
    kiwi/cli/models/predictor_estimator.py on lines 446..448
    kiwi/cli/models/predictor_estimator.py on lines 484..486
    kiwi/cli/models/predictor_estimator.py on lines 493..495
    kiwi/cli/models/predictor_estimator.py on lines 501..503
    kiwi/cli/models/quetch.py on lines 129..131
    kiwi/cli/models/quetch.py on lines 137..139
    kiwi/cli/models/quetch.py on lines 145..147
    kiwi/cli/models/quetch.py on lines 153..155
    kiwi/cli/models/quetch.py on lines 217..219
    kiwi/cli/models/quetch.py on lines 226..228
    kiwi/cli/models/quetch.py on lines 244..246
    kiwi/cli/models/quetch.py on lines 295..297
    kiwi/cli/opts.py on lines 126..128
    kiwi/cli/pipelines/train.py on lines 86..88
    kiwi/cli/pipelines/train.py on lines 109..111

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 39.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    Similar blocks of code found in 30 locations. Consider refactoring.
    Open

        group.add_argument(
            '--use-probs',
            type=lambda x: bool(strtobool(x)),
    Severity: Major
    Found in kiwi/cli/models/predictor_estimator.py and 29 other locations - About 1 hr to fix
    kiwi/cli/models/nuqe.py on lines 59..61
    kiwi/cli/models/predictor_estimator.py on lines 144..146
    kiwi/cli/models/predictor_estimator.py on lines 276..278
    kiwi/cli/models/predictor_estimator.py on lines 285..287
    kiwi/cli/models/predictor_estimator.py on lines 322..324
    kiwi/cli/models/predictor_estimator.py on lines 330..332
    kiwi/cli/models/predictor_estimator.py on lines 339..341
    kiwi/cli/models/predictor_estimator.py on lines 348..350
    kiwi/cli/models/predictor_estimator.py on lines 382..384
    kiwi/cli/models/predictor_estimator.py on lines 391..393
    kiwi/cli/models/predictor_estimator.py on lines 400..402
    kiwi/cli/models/predictor_estimator.py on lines 415..417
    kiwi/cli/models/predictor_estimator.py on lines 437..439
    kiwi/cli/models/predictor_estimator.py on lines 446..448
    kiwi/cli/models/predictor_estimator.py on lines 484..486
    kiwi/cli/models/predictor_estimator.py on lines 493..495
    kiwi/cli/models/predictor_estimator.py on lines 501..503
    kiwi/cli/models/predictor_estimator.py on lines 512..514
    kiwi/cli/models/quetch.py on lines 129..131
    kiwi/cli/models/quetch.py on lines 137..139
    kiwi/cli/models/quetch.py on lines 145..147
    kiwi/cli/models/quetch.py on lines 153..155
    kiwi/cli/models/quetch.py on lines 217..219
    kiwi/cli/models/quetch.py on lines 226..228
    kiwi/cli/models/quetch.py on lines 244..246
    kiwi/cli/models/quetch.py on lines 295..297
    kiwi/cli/opts.py on lines 126..128
    kiwi/cli/pipelines/train.py on lines 86..88
    kiwi/cli/pipelines/train.py on lines 109..111

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 39.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    Similar blocks of code found in 30 locations. Consider refactoring.
    Open

        group.add_argument(
            '--predict-gaps',
            type=lambda x: bool(strtobool(x)),
    Severity: Major
    Found in kiwi/cli/models/predictor_estimator.py and 29 other locations - About 1 hr to fix
    kiwi/cli/models/nuqe.py on lines 59..61
    kiwi/cli/models/predictor_estimator.py on lines 144..146
    kiwi/cli/models/predictor_estimator.py on lines 276..278
    kiwi/cli/models/predictor_estimator.py on lines 285..287
    kiwi/cli/models/predictor_estimator.py on lines 322..324
    kiwi/cli/models/predictor_estimator.py on lines 339..341
    kiwi/cli/models/predictor_estimator.py on lines 348..350
    kiwi/cli/models/predictor_estimator.py on lines 382..384
    kiwi/cli/models/predictor_estimator.py on lines 391..393
    kiwi/cli/models/predictor_estimator.py on lines 400..402
    kiwi/cli/models/predictor_estimator.py on lines 415..417
    kiwi/cli/models/predictor_estimator.py on lines 428..430
    kiwi/cli/models/predictor_estimator.py on lines 437..439
    kiwi/cli/models/predictor_estimator.py on lines 446..448
    kiwi/cli/models/predictor_estimator.py on lines 484..486
    kiwi/cli/models/predictor_estimator.py on lines 493..495
    kiwi/cli/models/predictor_estimator.py on lines 501..503
    kiwi/cli/models/predictor_estimator.py on lines 512..514
    kiwi/cli/models/quetch.py on lines 129..131
    kiwi/cli/models/quetch.py on lines 137..139
    kiwi/cli/models/quetch.py on lines 145..147
    kiwi/cli/models/quetch.py on lines 153..155
    kiwi/cli/models/quetch.py on lines 217..219
    kiwi/cli/models/quetch.py on lines 226..228
    kiwi/cli/models/quetch.py on lines 244..246
    kiwi/cli/models/quetch.py on lines 295..297
    kiwi/cli/opts.py on lines 126..128
    kiwi/cli/pipelines/train.py on lines 86..88
    kiwi/cli/pipelines/train.py on lines 109..111

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 39.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    Similar blocks of code found in 30 locations. Consider refactoring.
    Open

        group.add_argument(
            '--start-stop',
            type=lambda x: bool(strtobool(x)),
    Severity: Major
    Found in kiwi/cli/models/predictor_estimator.py and 29 other locations - About 1 hr to fix
    kiwi/cli/models/nuqe.py on lines 59..61
    kiwi/cli/models/predictor_estimator.py on lines 144..146
    kiwi/cli/models/predictor_estimator.py on lines 276..278
    kiwi/cli/models/predictor_estimator.py on lines 285..287
    kiwi/cli/models/predictor_estimator.py on lines 330..332
    kiwi/cli/models/predictor_estimator.py on lines 339..341
    kiwi/cli/models/predictor_estimator.py on lines 348..350
    kiwi/cli/models/predictor_estimator.py on lines 382..384
    kiwi/cli/models/predictor_estimator.py on lines 391..393
    kiwi/cli/models/predictor_estimator.py on lines 400..402
    kiwi/cli/models/predictor_estimator.py on lines 415..417
    kiwi/cli/models/predictor_estimator.py on lines 428..430
    kiwi/cli/models/predictor_estimator.py on lines 437..439
    kiwi/cli/models/predictor_estimator.py on lines 446..448
    kiwi/cli/models/predictor_estimator.py on lines 484..486
    kiwi/cli/models/predictor_estimator.py on lines 493..495
    kiwi/cli/models/predictor_estimator.py on lines 501..503
    kiwi/cli/models/predictor_estimator.py on lines 512..514
    kiwi/cli/models/quetch.py on lines 129..131
    kiwi/cli/models/quetch.py on lines 137..139
    kiwi/cli/models/quetch.py on lines 145..147
    kiwi/cli/models/quetch.py on lines 153..155
    kiwi/cli/models/quetch.py on lines 217..219
    kiwi/cli/models/quetch.py on lines 226..228
    kiwi/cli/models/quetch.py on lines 244..246
    kiwi/cli/models/quetch.py on lines 295..297
    kiwi/cli/opts.py on lines 126..128
    kiwi/cli/pipelines/train.py on lines 86..88
    kiwi/cli/pipelines/train.py on lines 109..111

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 39.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    Similar blocks of code found in 30 locations. Consider refactoring.
    Open

        group.add_argument(
            '--predict-source',
            type=lambda x: bool(strtobool(x)),
    Severity: Major
    Found in kiwi/cli/models/predictor_estimator.py and 29 other locations - About 1 hr to fix
    kiwi/cli/models/nuqe.py on lines 59..61
    kiwi/cli/models/predictor_estimator.py on lines 144..146
    kiwi/cli/models/predictor_estimator.py on lines 276..278
    kiwi/cli/models/predictor_estimator.py on lines 285..287
    kiwi/cli/models/predictor_estimator.py on lines 322..324
    kiwi/cli/models/predictor_estimator.py on lines 330..332
    kiwi/cli/models/predictor_estimator.py on lines 339..341
    kiwi/cli/models/predictor_estimator.py on lines 382..384
    kiwi/cli/models/predictor_estimator.py on lines 391..393
    kiwi/cli/models/predictor_estimator.py on lines 400..402
    kiwi/cli/models/predictor_estimator.py on lines 415..417
    kiwi/cli/models/predictor_estimator.py on lines 428..430
    kiwi/cli/models/predictor_estimator.py on lines 437..439
    kiwi/cli/models/predictor_estimator.py on lines 446..448
    kiwi/cli/models/predictor_estimator.py on lines 484..486
    kiwi/cli/models/predictor_estimator.py on lines 493..495
    kiwi/cli/models/predictor_estimator.py on lines 501..503
    kiwi/cli/models/predictor_estimator.py on lines 512..514
    kiwi/cli/models/quetch.py on lines 129..131
    kiwi/cli/models/quetch.py on lines 137..139
    kiwi/cli/models/quetch.py on lines 145..147
    kiwi/cli/models/quetch.py on lines 153..155
    kiwi/cli/models/quetch.py on lines 217..219
    kiwi/cli/models/quetch.py on lines 226..228
    kiwi/cli/models/quetch.py on lines 244..246
    kiwi/cli/models/quetch.py on lines 295..297
    kiwi/cli/opts.py on lines 126..128
    kiwi/cli/pipelines/train.py on lines 86..88
    kiwi/cli/pipelines/train.py on lines 109..111

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 39.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    Similar blocks of code found in 30 locations. Consider refactoring.
    Open

        group.add_argument(
            '--sentence-ll-predict-mean',
            type=lambda x: bool(strtobool(x)),
    Severity: Major
    Found in kiwi/cli/models/predictor_estimator.py and 29 other locations - About 1 hr to fix
    kiwi/cli/models/nuqe.py on lines 59..61
    kiwi/cli/models/predictor_estimator.py on lines 144..146
    kiwi/cli/models/predictor_estimator.py on lines 276..278
    kiwi/cli/models/predictor_estimator.py on lines 285..287
    kiwi/cli/models/predictor_estimator.py on lines 322..324
    kiwi/cli/models/predictor_estimator.py on lines 330..332
    kiwi/cli/models/predictor_estimator.py on lines 339..341
    kiwi/cli/models/predictor_estimator.py on lines 348..350
    kiwi/cli/models/predictor_estimator.py on lines 382..384
    kiwi/cli/models/predictor_estimator.py on lines 391..393
    kiwi/cli/models/predictor_estimator.py on lines 400..402
    kiwi/cli/models/predictor_estimator.py on lines 428..430
    kiwi/cli/models/predictor_estimator.py on lines 437..439
    kiwi/cli/models/predictor_estimator.py on lines 446..448
    kiwi/cli/models/predictor_estimator.py on lines 484..486
    kiwi/cli/models/predictor_estimator.py on lines 493..495
    kiwi/cli/models/predictor_estimator.py on lines 501..503
    kiwi/cli/models/predictor_estimator.py on lines 512..514
    kiwi/cli/models/quetch.py on lines 129..131
    kiwi/cli/models/quetch.py on lines 137..139
    kiwi/cli/models/quetch.py on lines 145..147
    kiwi/cli/models/quetch.py on lines 153..155
    kiwi/cli/models/quetch.py on lines 217..219
    kiwi/cli/models/quetch.py on lines 226..228
    kiwi/cli/models/quetch.py on lines 244..246
    kiwi/cli/models/quetch.py on lines 295..297
    kiwi/cli/opts.py on lines 126..128
    kiwi/cli/pipelines/train.py on lines 86..88
    kiwi/cli/pipelines/train.py on lines 109..111

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 39.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    Similar blocks of code found in 30 locations. Consider refactoring.
    Open

        group.add_argument(
            '--share-embeddings',
            type=lambda x: bool(strtobool(x)),
    Severity: Major
    Found in kiwi/cli/models/predictor_estimator.py and 29 other locations - About 1 hr to fix
    kiwi/cli/models/nuqe.py on lines 59..61
    kiwi/cli/models/predictor_estimator.py on lines 144..146
    kiwi/cli/models/predictor_estimator.py on lines 285..287
    kiwi/cli/models/predictor_estimator.py on lines 322..324
    kiwi/cli/models/predictor_estimator.py on lines 330..332
    kiwi/cli/models/predictor_estimator.py on lines 339..341
    kiwi/cli/models/predictor_estimator.py on lines 348..350
    kiwi/cli/models/predictor_estimator.py on lines 382..384
    kiwi/cli/models/predictor_estimator.py on lines 391..393
    kiwi/cli/models/predictor_estimator.py on lines 400..402
    kiwi/cli/models/predictor_estimator.py on lines 415..417
    kiwi/cli/models/predictor_estimator.py on lines 428..430
    kiwi/cli/models/predictor_estimator.py on lines 437..439
    kiwi/cli/models/predictor_estimator.py on lines 446..448
    kiwi/cli/models/predictor_estimator.py on lines 484..486
    kiwi/cli/models/predictor_estimator.py on lines 493..495
    kiwi/cli/models/predictor_estimator.py on lines 501..503
    kiwi/cli/models/predictor_estimator.py on lines 512..514
    kiwi/cli/models/quetch.py on lines 129..131
    kiwi/cli/models/quetch.py on lines 137..139
    kiwi/cli/models/quetch.py on lines 145..147
    kiwi/cli/models/quetch.py on lines 153..155
    kiwi/cli/models/quetch.py on lines 217..219
    kiwi/cli/models/quetch.py on lines 226..228
    kiwi/cli/models/quetch.py on lines 244..246
    kiwi/cli/models/quetch.py on lines 295..297
    kiwi/cli/opts.py on lines 126..128
    kiwi/cli/pipelines/train.py on lines 86..88
    kiwi/cli/pipelines/train.py on lines 109..111

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 39.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    Similar blocks of code found in 30 locations. Consider refactoring.
    Open

        group.add_argument(
            '--wmt18-format',
            type=lambda x: bool(strtobool(x)),
    Severity: Major
    Found in kiwi/cli/models/predictor_estimator.py and 29 other locations - About 1 hr to fix
    kiwi/cli/models/nuqe.py on lines 59..61
    kiwi/cli/models/predictor_estimator.py on lines 276..278
    kiwi/cli/models/predictor_estimator.py on lines 285..287
    kiwi/cli/models/predictor_estimator.py on lines 322..324
    kiwi/cli/models/predictor_estimator.py on lines 330..332
    kiwi/cli/models/predictor_estimator.py on lines 339..341
    kiwi/cli/models/predictor_estimator.py on lines 348..350
    kiwi/cli/models/predictor_estimator.py on lines 382..384
    kiwi/cli/models/predictor_estimator.py on lines 391..393
    kiwi/cli/models/predictor_estimator.py on lines 400..402
    kiwi/cli/models/predictor_estimator.py on lines 415..417
    kiwi/cli/models/predictor_estimator.py on lines 428..430
    kiwi/cli/models/predictor_estimator.py on lines 437..439
    kiwi/cli/models/predictor_estimator.py on lines 446..448
    kiwi/cli/models/predictor_estimator.py on lines 484..486
    kiwi/cli/models/predictor_estimator.py on lines 493..495
    kiwi/cli/models/predictor_estimator.py on lines 501..503
    kiwi/cli/models/predictor_estimator.py on lines 512..514
    kiwi/cli/models/quetch.py on lines 129..131
    kiwi/cli/models/quetch.py on lines 137..139
    kiwi/cli/models/quetch.py on lines 145..147
    kiwi/cli/models/quetch.py on lines 153..155
    kiwi/cli/models/quetch.py on lines 217..219
    kiwi/cli/models/quetch.py on lines 226..228
    kiwi/cli/models/quetch.py on lines 244..246
    kiwi/cli/models/quetch.py on lines 295..297
    kiwi/cli/opts.py on lines 126..128
    kiwi/cli/pipelines/train.py on lines 86..88
    kiwi/cli/pipelines/train.py on lines 109..111

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 39.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    Similar blocks of code found in 30 locations. Consider refactoring.
    Open

        group.add_argument(
            '--token-level',
            type=lambda x: bool(strtobool(x)),
    Severity: Major
    Found in kiwi/cli/models/predictor_estimator.py and 29 other locations - About 1 hr to fix
    kiwi/cli/models/nuqe.py on lines 59..61
    kiwi/cli/models/predictor_estimator.py on lines 144..146
    kiwi/cli/models/predictor_estimator.py on lines 276..278
    kiwi/cli/models/predictor_estimator.py on lines 285..287
    kiwi/cli/models/predictor_estimator.py on lines 322..324
    kiwi/cli/models/predictor_estimator.py on lines 330..332
    kiwi/cli/models/predictor_estimator.py on lines 339..341
    kiwi/cli/models/predictor_estimator.py on lines 348..350
    kiwi/cli/models/predictor_estimator.py on lines 382..384
    kiwi/cli/models/predictor_estimator.py on lines 391..393
    kiwi/cli/models/predictor_estimator.py on lines 400..402
    kiwi/cli/models/predictor_estimator.py on lines 415..417
    kiwi/cli/models/predictor_estimator.py on lines 428..430
    kiwi/cli/models/predictor_estimator.py on lines 437..439
    kiwi/cli/models/predictor_estimator.py on lines 484..486
    kiwi/cli/models/predictor_estimator.py on lines 493..495
    kiwi/cli/models/predictor_estimator.py on lines 501..503
    kiwi/cli/models/predictor_estimator.py on lines 512..514
    kiwi/cli/models/quetch.py on lines 129..131
    kiwi/cli/models/quetch.py on lines 137..139
    kiwi/cli/models/quetch.py on lines 145..147
    kiwi/cli/models/quetch.py on lines 153..155
    kiwi/cli/models/quetch.py on lines 217..219
    kiwi/cli/models/quetch.py on lines 226..228
    kiwi/cli/models/quetch.py on lines 244..246
    kiwi/cli/models/quetch.py on lines 295..297
    kiwi/cli/opts.py on lines 126..128
    kiwi/cli/pipelines/train.py on lines 86..88
    kiwi/cli/pipelines/train.py on lines 109..111

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 39.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    Similar blocks of code found in 30 locations. Consider refactoring.
    Open

        group.add_argument(
            '--mlp-est',
            type=lambda x: bool(strtobool(x)),
    Severity: Major
    Found in kiwi/cli/models/predictor_estimator.py and 29 other locations - About 1 hr to fix
    kiwi/cli/models/nuqe.py on lines 59..61
    kiwi/cli/models/predictor_estimator.py on lines 144..146
    kiwi/cli/models/predictor_estimator.py on lines 276..278
    kiwi/cli/models/predictor_estimator.py on lines 285..287
    kiwi/cli/models/predictor_estimator.py on lines 322..324
    kiwi/cli/models/predictor_estimator.py on lines 330..332
    kiwi/cli/models/predictor_estimator.py on lines 339..341
    kiwi/cli/models/predictor_estimator.py on lines 348..350
    kiwi/cli/models/predictor_estimator.py on lines 391..393
    kiwi/cli/models/predictor_estimator.py on lines 400..402
    kiwi/cli/models/predictor_estimator.py on lines 415..417
    kiwi/cli/models/predictor_estimator.py on lines 428..430
    kiwi/cli/models/predictor_estimator.py on lines 437..439
    kiwi/cli/models/predictor_estimator.py on lines 446..448
    kiwi/cli/models/predictor_estimator.py on lines 484..486
    kiwi/cli/models/predictor_estimator.py on lines 493..495
    kiwi/cli/models/predictor_estimator.py on lines 501..503
    kiwi/cli/models/predictor_estimator.py on lines 512..514
    kiwi/cli/models/quetch.py on lines 129..131
    kiwi/cli/models/quetch.py on lines 137..139
    kiwi/cli/models/quetch.py on lines 145..147
    kiwi/cli/models/quetch.py on lines 153..155
    kiwi/cli/models/quetch.py on lines 217..219
    kiwi/cli/models/quetch.py on lines 226..228
    kiwi/cli/models/quetch.py on lines 244..246
    kiwi/cli/models/quetch.py on lines 295..297
    kiwi/cli/opts.py on lines 126..128
    kiwi/cli/pipelines/train.py on lines 86..88
    kiwi/cli/pipelines/train.py on lines 109..111

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 39.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    Similar blocks of code found in 30 locations. Consider refactoring.
    Open

        group.add_argument(
            '--wmt18-format',
            type=lambda x: bool(strtobool(x)),
    Severity: Major
    Found in kiwi/cli/models/predictor_estimator.py and 29 other locations - About 1 hr to fix
    kiwi/cli/models/nuqe.py on lines 59..61
    kiwi/cli/models/predictor_estimator.py on lines 144..146
    kiwi/cli/models/predictor_estimator.py on lines 276..278
    kiwi/cli/models/predictor_estimator.py on lines 285..287
    kiwi/cli/models/predictor_estimator.py on lines 322..324
    kiwi/cli/models/predictor_estimator.py on lines 330..332
    kiwi/cli/models/predictor_estimator.py on lines 339..341
    kiwi/cli/models/predictor_estimator.py on lines 348..350
    kiwi/cli/models/predictor_estimator.py on lines 382..384
    kiwi/cli/models/predictor_estimator.py on lines 391..393
    kiwi/cli/models/predictor_estimator.py on lines 400..402
    kiwi/cli/models/predictor_estimator.py on lines 415..417
    kiwi/cli/models/predictor_estimator.py on lines 428..430
    kiwi/cli/models/predictor_estimator.py on lines 437..439
    kiwi/cli/models/predictor_estimator.py on lines 446..448
    kiwi/cli/models/predictor_estimator.py on lines 493..495
    kiwi/cli/models/predictor_estimator.py on lines 501..503
    kiwi/cli/models/predictor_estimator.py on lines 512..514
    kiwi/cli/models/quetch.py on lines 129..131
    kiwi/cli/models/quetch.py on lines 137..139
    kiwi/cli/models/quetch.py on lines 145..147
    kiwi/cli/models/quetch.py on lines 153..155
    kiwi/cli/models/quetch.py on lines 217..219
    kiwi/cli/models/quetch.py on lines 226..228
    kiwi/cli/models/quetch.py on lines 244..246
    kiwi/cli/models/quetch.py on lines 295..297
    kiwi/cli/opts.py on lines 126..128
    kiwi/cli/pipelines/train.py on lines 86..88
    kiwi/cli/pipelines/train.py on lines 109..111

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 39.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    Similar blocks of code found in 30 locations. Consider refactoring.
    Open

        group.add_argument(
            '--sentence-ll',
            type=lambda x: bool(strtobool(x)),
    Severity: Major
    Found in kiwi/cli/models/predictor_estimator.py and 29 other locations - About 1 hr to fix
    kiwi/cli/models/nuqe.py on lines 59..61
    kiwi/cli/models/predictor_estimator.py on lines 144..146
    kiwi/cli/models/predictor_estimator.py on lines 276..278
    kiwi/cli/models/predictor_estimator.py on lines 285..287
    kiwi/cli/models/predictor_estimator.py on lines 322..324
    kiwi/cli/models/predictor_estimator.py on lines 330..332
    kiwi/cli/models/predictor_estimator.py on lines 339..341
    kiwi/cli/models/predictor_estimator.py on lines 348..350
    kiwi/cli/models/predictor_estimator.py on lines 382..384
    kiwi/cli/models/predictor_estimator.py on lines 391..393
    kiwi/cli/models/predictor_estimator.py on lines 415..417
    kiwi/cli/models/predictor_estimator.py on lines 428..430
    kiwi/cli/models/predictor_estimator.py on lines 437..439
    kiwi/cli/models/predictor_estimator.py on lines 446..448
    kiwi/cli/models/predictor_estimator.py on lines 484..486
    kiwi/cli/models/predictor_estimator.py on lines 493..495
    kiwi/cli/models/predictor_estimator.py on lines 501..503
    kiwi/cli/models/predictor_estimator.py on lines 512..514
    kiwi/cli/models/quetch.py on lines 129..131
    kiwi/cli/models/quetch.py on lines 137..139
    kiwi/cli/models/quetch.py on lines 145..147
    kiwi/cli/models/quetch.py on lines 153..155
    kiwi/cli/models/quetch.py on lines 217..219
    kiwi/cli/models/quetch.py on lines 226..228
    kiwi/cli/models/quetch.py on lines 244..246
    kiwi/cli/models/quetch.py on lines 295..297
    kiwi/cli/opts.py on lines 126..128
    kiwi/cli/pipelines/train.py on lines 86..88
    kiwi/cli/pipelines/train.py on lines 109..111

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 39.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    There are no issues that match your filters.

    Category
    Status