allennlp

Форк
0
/
checklist_test.py 
59 строк · 1.7 Кб
1
import argparse
2
import sys
3

4
from allennlp.commands import main
5
from allennlp.commands.checklist import CheckList
6
from allennlp.common.testing import AllenNlpTestCase, requires_gpu
7

8

9
class TestCheckList(AllenNlpTestCase):
10
    def setup_method(self):
11
        super().setup_method()
12
        self.archive_file = (
13
            self.FIXTURES_ROOT / "basic_classifier" / "serialization" / "model.tar.gz"
14
        )
15
        self.task = "sentiment-analysis"
16

17
    def test_add_checklist_subparser(self):
18
        parser = argparse.ArgumentParser(description="Testing")
19
        subparsers = parser.add_subparsers(title="Commands", metavar="")
20
        CheckList().add_subparser(subparsers)
21

22
        kebab_args = [
23
            "checklist",  # command
24
            "/path/to/archive",  # archive
25
            "task-suite-name",
26
            "--checklist-suite",
27
            "/path/to/checklist/pkl",
28
            "--output-file",
29
            "/dev/null",
30
            "--cuda-device",
31
            "0",
32
        ]
33

34
        args = parser.parse_args(kebab_args)
35

36
        assert args.func.__name__ == "_run_suite"
37
        assert args.archive_file == "/path/to/archive"
38
        assert args.task == "task-suite-name"
39
        assert args.output_file == "/dev/null"
40
        assert args.cuda_device == 0
41

42
    # Mark this as GPU so it runs on a self-hosted runner, which will be a lot faster.
43
    @requires_gpu
44
    def test_works_with_known_model(self):
45

46
        sys.argv = [
47
            "__main__.py",  # executable
48
            "checklist",  # command
49
            str(self.archive_file),
50
            str(self.task),
51
            "--task-suite-args",
52
            '{"positive": 1, "negative": 0}',
53
            "--max-examples",
54
            "1",
55
            "--cuda-device",
56
            "0",
57
        ]
58

59
        main()
60

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.