Skip to content

Full Custom Tasks Support #125

Full Custom Tasks Support

Full Custom Tasks Support #125

GitHub Actions / Test Results failed Aug 3, 2024 in 0s

11 errors, 24 skipped, 34 pass in 1m 41s

  4 files  ±0    4 suites  ±0   1m 41s ⏱️ -3s
 69 tests ±0   34 ✅ ±0  24 💤 ±0  0 ❌ ±0  11 🔥 ±0 
276 runs  ±0  136 ✅ ±0  96 💤 ±0  0 ❌ ±0  44 🔥 ±0 

Results for commit 8c49f30. ± Comparison against earlier commit 60d8508.

Annotations

Check failure on line 0 in tests.integration.test_multi_input

See this annotation in the file changed.

@github-actions github-actions / Test Results

All 4 runs with error: test_sanity[example_multi_input.yaml] (tests.integration.test_multi_input)

artifacts/Test Results [ubuntu-latest] (Python 3.10)/pytest.xml [took 10s]
artifacts/Test Results [ubuntu-latest] (Python 3.11)/pytest.xml [took 12s]
artifacts/Test Results [windows-latest] (Python 3.10)/pytest.xml [took 22s]
artifacts/Test Results [windows-latest] (Python 3.11)/pytest.xml [took 16s]
Raw output
failed on setup with "TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'"
@pytest.fixture(scope="session", autouse=True)
    def create_coco_multitask_dataset():
        url = "https://drive.google.com/uc?id=1XlvFK7aRmt8op6-hHkWVKIJQeDtOwoRT"
        output_folder = "../data/"
        output_zip = os.path.join(output_folder, "COCO_people_subset.zip")
    
        if not os.path.exists(output_folder):
            os.makedirs(output_folder)
    
        if not os.path.exists(output_zip) and not os.path.exists(
            os.path.join(output_folder, "COCO_people_subset")
        ):
            gdown.download(url, output_zip, quiet=False)
    
>       parser = LuxonisParser(
            output_zip,
            dataset_name="coco_test_multitask",
            delete_existing=True,
            task_mapping={
                LabelType.KEYPOINTS: "keypoints-task",
                LabelType.SEGMENTATION: "segmentation-task",
                LabelType.CLASSIFICATION: "classification-task",
                LabelType.BOUNDINGBOX: "boundingbox-task",
            },
        )

tests/integration/conftest.py:54: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <luxonis_ml.data.parsers.luxonis_parser.LuxonisParser object at 0x7fbf23216a10>
dataset_dir = '../data/COCO_people_subset.zip'
dataset_name = 'coco_test_multitask', save_dir = None, dataset_plugin = None
dataset_type = None
kwargs = {'delete_existing': True, 'task_mapping': {<LabelType.BOUNDINGBOX: 'boundingbox'>: 'boundingbox-task', <LabelType.CLAS..., <LabelType.KEYPOINTS: 'keypoints'>: 'keypoints-task', <LabelType.SEGMENTATION: 'segmentation'>: 'segmentation-task'}}
name = 'COCO_people_subset.zip'
local_path = PosixPath('/home/runner/work/luxonis-train/luxonis-train/COCO_people_subset.zip')
zip_ref = <zipfile.ZipFile [closed]>

    def __init__(
        self,
        dataset_dir: str,
        *,
        dataset_name: Optional[str] = None,
        save_dir: Optional[Union[Path, str]] = None,
        dataset_plugin: Optional[str] = None,
        dataset_type: Optional[DatasetType] = None,
        **kwargs,
    ):
        """High-level abstraction over various parsers.
    
        Automatically recognizes the dataset format and uses the appropriate parser.
    
        @type dataset_dir: str
        @param dataset_dir: Path to the dataset directory or zip file. Can also be a
            remote URL supported by L{LuxonisFileSystem}.
        @type dataset_name: Optional[str]
        @param dataset_name: Name of the dataset. If C{None}, the name is derived from
            the name of the dataset directory.
        @type save_dir: Optional[Union[Path, str]]
        @param save_dir: If a remote URL is provided in C{dataset_dir}, the dataset will
            be downloaded to this directory. If C{None}, the dataset will be downloaded
            to the current working directory.
        @type dataset_plugin: Optional[str]
        @param dataset_plugin: Name of the dataset plugin to use. If C{None},
            C{LuxonisDataset} is used.
        @type dataset_type: Optional[DatasetType]
        @param dataset_type: If provided, the parser will use this dataset type instead
            of trying to recognize it automatically.
        @type kwargs: Dict[str, Any]
        @param kwargs: Additional C{kwargs} to be passed to the constructor of specific
            L{BaseDataset} implementation.
        """
        save_dir = Path(save_dir) if save_dir else None
        name = Path(dataset_dir).name
        local_path = (save_dir or Path.cwd()) / name
        self.dataset_dir = LuxonisFileSystem.download(dataset_dir, local_path)
        if self.dataset_dir.suffix == ".zip":
            with zipfile.ZipFile(self.dataset_dir, "r") as zip_ref:
                unzip_dir = self.dataset_dir.parent / self.dataset_dir.stem
                logger.info(f"Extracting '{self.dataset_dir.name}' to '{unzip_dir}'")
                zip_ref.extractall(unzip_dir)
                self.dataset_dir = unzip_dir
    
        if dataset_type:
            self.dataset_type = dataset_type
            self.parser_type = (
                ParserType.DIR
                if Path(self.dataset_dir / "train").exists()
                else ParserType.SPLIT
            )
        else:
            self.dataset_type, self.parser_type = self._recognize_dataset()
    
        if dataset_plugin:
            self.dataset_constructor: Type[BaseDataset] = DATASETS_REGISTRY.get(
                dataset_plugin
            )
        else:
            self.dataset_constructor = LuxonisDataset
    
        dataset_name = dataset_name or name.replace(" ", "_").split(".")[0]
    
>       self.dataset = self.dataset_constructor(dataset_name=dataset_name, **kwargs)
E       TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'

/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/luxonis_ml/data/parsers/luxonis_parser.py:113: TypeError

Check failure on line 0 in tests.integration.test_sanity

See this annotation in the file changed.

@github-actions github-actions / Test Results

All 4 runs with error: test_sanity[resnet_multitask_model.yaml] (tests.integration.test_sanity)

artifacts/Test Results [ubuntu-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [ubuntu-latest] (Python 3.11)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.11)/pytest.xml [took 0s]
Raw output
failed on setup with "TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'"
@pytest.fixture(scope="session", autouse=True)
    def create_coco_multitask_dataset():
        url = "https://drive.google.com/uc?id=1XlvFK7aRmt8op6-hHkWVKIJQeDtOwoRT"
        output_folder = "../data/"
        output_zip = os.path.join(output_folder, "COCO_people_subset.zip")
    
        if not os.path.exists(output_folder):
            os.makedirs(output_folder)
    
        if not os.path.exists(output_zip) and not os.path.exists(
            os.path.join(output_folder, "COCO_people_subset")
        ):
            gdown.download(url, output_zip, quiet=False)
    
>       parser = LuxonisParser(
            output_zip,
            dataset_name="coco_test_multitask",
            delete_existing=True,
            task_mapping={
                LabelType.KEYPOINTS: "keypoints-task",
                LabelType.SEGMENTATION: "segmentation-task",
                LabelType.CLASSIFICATION: "classification-task",
                LabelType.BOUNDINGBOX: "boundingbox-task",
            },
        )

tests/integration/conftest.py:54: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <luxonis_ml.data.parsers.luxonis_parser.LuxonisParser object at 0x7fbf23216a10>
dataset_dir = '../data/COCO_people_subset.zip'
dataset_name = 'coco_test_multitask', save_dir = None, dataset_plugin = None
dataset_type = None
kwargs = {'delete_existing': True, 'task_mapping': {<LabelType.BOUNDINGBOX: 'boundingbox'>: 'boundingbox-task', <LabelType.CLAS..., <LabelType.KEYPOINTS: 'keypoints'>: 'keypoints-task', <LabelType.SEGMENTATION: 'segmentation'>: 'segmentation-task'}}
name = 'COCO_people_subset.zip'
local_path = PosixPath('/home/runner/work/luxonis-train/luxonis-train/COCO_people_subset.zip')
zip_ref = <zipfile.ZipFile [closed]>

    def __init__(
        self,
        dataset_dir: str,
        *,
        dataset_name: Optional[str] = None,
        save_dir: Optional[Union[Path, str]] = None,
        dataset_plugin: Optional[str] = None,
        dataset_type: Optional[DatasetType] = None,
        **kwargs,
    ):
        """High-level abstraction over various parsers.
    
        Automatically recognizes the dataset format and uses the appropriate parser.
    
        @type dataset_dir: str
        @param dataset_dir: Path to the dataset directory or zip file. Can also be a
            remote URL supported by L{LuxonisFileSystem}.
        @type dataset_name: Optional[str]
        @param dataset_name: Name of the dataset. If C{None}, the name is derived from
            the name of the dataset directory.
        @type save_dir: Optional[Union[Path, str]]
        @param save_dir: If a remote URL is provided in C{dataset_dir}, the dataset will
            be downloaded to this directory. If C{None}, the dataset will be downloaded
            to the current working directory.
        @type dataset_plugin: Optional[str]
        @param dataset_plugin: Name of the dataset plugin to use. If C{None},
            C{LuxonisDataset} is used.
        @type dataset_type: Optional[DatasetType]
        @param dataset_type: If provided, the parser will use this dataset type instead
            of trying to recognize it automatically.
        @type kwargs: Dict[str, Any]
        @param kwargs: Additional C{kwargs} to be passed to the constructor of specific
            L{BaseDataset} implementation.
        """
        save_dir = Path(save_dir) if save_dir else None
        name = Path(dataset_dir).name
        local_path = (save_dir or Path.cwd()) / name
        self.dataset_dir = LuxonisFileSystem.download(dataset_dir, local_path)
        if self.dataset_dir.suffix == ".zip":
            with zipfile.ZipFile(self.dataset_dir, "r") as zip_ref:
                unzip_dir = self.dataset_dir.parent / self.dataset_dir.stem
                logger.info(f"Extracting '{self.dataset_dir.name}' to '{unzip_dir}'")
                zip_ref.extractall(unzip_dir)
                self.dataset_dir = unzip_dir
    
        if dataset_type:
            self.dataset_type = dataset_type
            self.parser_type = (
                ParserType.DIR
                if Path(self.dataset_dir / "train").exists()
                else ParserType.SPLIT
            )
        else:
            self.dataset_type, self.parser_type = self._recognize_dataset()
    
        if dataset_plugin:
            self.dataset_constructor: Type[BaseDataset] = DATASETS_REGISTRY.get(
                dataset_plugin
            )
        else:
            self.dataset_constructor = LuxonisDataset
    
        dataset_name = dataset_name or name.replace(" ", "_").split(".")[0]
    
>       self.dataset = self.dataset_constructor(dataset_name=dataset_name, **kwargs)
E       TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'

/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/luxonis_ml/data/parsers/luxonis_parser.py:113: TypeError

Check failure on line 0 in tests.integration.test_sanity

See this annotation in the file changed.

@github-actions github-actions / Test Results

All 4 runs with error: test_sanity[coco_multitask_model.yaml] (tests.integration.test_sanity)

artifacts/Test Results [ubuntu-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [ubuntu-latest] (Python 3.11)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.11)/pytest.xml [took 0s]
Raw output
failed on setup with "TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'"
@pytest.fixture(scope="session", autouse=True)
    def create_coco_multitask_dataset():
        url = "https://drive.google.com/uc?id=1XlvFK7aRmt8op6-hHkWVKIJQeDtOwoRT"
        output_folder = "../data/"
        output_zip = os.path.join(output_folder, "COCO_people_subset.zip")
    
        if not os.path.exists(output_folder):
            os.makedirs(output_folder)
    
        if not os.path.exists(output_zip) and not os.path.exists(
            os.path.join(output_folder, "COCO_people_subset")
        ):
            gdown.download(url, output_zip, quiet=False)
    
>       parser = LuxonisParser(
            output_zip,
            dataset_name="coco_test_multitask",
            delete_existing=True,
            task_mapping={
                LabelType.KEYPOINTS: "keypoints-task",
                LabelType.SEGMENTATION: "segmentation-task",
                LabelType.CLASSIFICATION: "classification-task",
                LabelType.BOUNDINGBOX: "boundingbox-task",
            },
        )

tests/integration/conftest.py:54: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <luxonis_ml.data.parsers.luxonis_parser.LuxonisParser object at 0x7fbf23216a10>
dataset_dir = '../data/COCO_people_subset.zip'
dataset_name = 'coco_test_multitask', save_dir = None, dataset_plugin = None
dataset_type = None
kwargs = {'delete_existing': True, 'task_mapping': {<LabelType.BOUNDINGBOX: 'boundingbox'>: 'boundingbox-task', <LabelType.CLAS..., <LabelType.KEYPOINTS: 'keypoints'>: 'keypoints-task', <LabelType.SEGMENTATION: 'segmentation'>: 'segmentation-task'}}
name = 'COCO_people_subset.zip'
local_path = PosixPath('/home/runner/work/luxonis-train/luxonis-train/COCO_people_subset.zip')
zip_ref = <zipfile.ZipFile [closed]>

    def __init__(
        self,
        dataset_dir: str,
        *,
        dataset_name: Optional[str] = None,
        save_dir: Optional[Union[Path, str]] = None,
        dataset_plugin: Optional[str] = None,
        dataset_type: Optional[DatasetType] = None,
        **kwargs,
    ):
        """High-level abstraction over various parsers.
    
        Automatically recognizes the dataset format and uses the appropriate parser.
    
        @type dataset_dir: str
        @param dataset_dir: Path to the dataset directory or zip file. Can also be a
            remote URL supported by L{LuxonisFileSystem}.
        @type dataset_name: Optional[str]
        @param dataset_name: Name of the dataset. If C{None}, the name is derived from
            the name of the dataset directory.
        @type save_dir: Optional[Union[Path, str]]
        @param save_dir: If a remote URL is provided in C{dataset_dir}, the dataset will
            be downloaded to this directory. If C{None}, the dataset will be downloaded
            to the current working directory.
        @type dataset_plugin: Optional[str]
        @param dataset_plugin: Name of the dataset plugin to use. If C{None},
            C{LuxonisDataset} is used.
        @type dataset_type: Optional[DatasetType]
        @param dataset_type: If provided, the parser will use this dataset type instead
            of trying to recognize it automatically.
        @type kwargs: Dict[str, Any]
        @param kwargs: Additional C{kwargs} to be passed to the constructor of specific
            L{BaseDataset} implementation.
        """
        save_dir = Path(save_dir) if save_dir else None
        name = Path(dataset_dir).name
        local_path = (save_dir or Path.cwd()) / name
        self.dataset_dir = LuxonisFileSystem.download(dataset_dir, local_path)
        if self.dataset_dir.suffix == ".zip":
            with zipfile.ZipFile(self.dataset_dir, "r") as zip_ref:
                unzip_dir = self.dataset_dir.parent / self.dataset_dir.stem
                logger.info(f"Extracting '{self.dataset_dir.name}' to '{unzip_dir}'")
                zip_ref.extractall(unzip_dir)
                self.dataset_dir = unzip_dir
    
        if dataset_type:
            self.dataset_type = dataset_type
            self.parser_type = (
                ParserType.DIR
                if Path(self.dataset_dir / "train").exists()
                else ParserType.SPLIT
            )
        else:
            self.dataset_type, self.parser_type = self._recognize_dataset()
    
        if dataset_plugin:
            self.dataset_constructor: Type[BaseDataset] = DATASETS_REGISTRY.get(
                dataset_plugin
            )
        else:
            self.dataset_constructor = LuxonisDataset
    
        dataset_name = dataset_name or name.replace(" ", "_").split(".")[0]
    
>       self.dataset = self.dataset_constructor(dataset_name=dataset_name, **kwargs)
E       TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'

/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/luxonis_ml/data/parsers/luxonis_parser.py:113: TypeError

Check failure on line 0 in tests.integration.test_sanity

See this annotation in the file changed.

@github-actions github-actions / Test Results

All 4 runs with error: test_sanity[segmentation_model.yaml] (tests.integration.test_sanity)

artifacts/Test Results [ubuntu-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [ubuntu-latest] (Python 3.11)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.11)/pytest.xml [took 0s]
Raw output
failed on setup with "TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'"
@pytest.fixture(scope="session", autouse=True)
    def create_coco_multitask_dataset():
        url = "https://drive.google.com/uc?id=1XlvFK7aRmt8op6-hHkWVKIJQeDtOwoRT"
        output_folder = "../data/"
        output_zip = os.path.join(output_folder, "COCO_people_subset.zip")
    
        if not os.path.exists(output_folder):
            os.makedirs(output_folder)
    
        if not os.path.exists(output_zip) and not os.path.exists(
            os.path.join(output_folder, "COCO_people_subset")
        ):
            gdown.download(url, output_zip, quiet=False)
    
>       parser = LuxonisParser(
            output_zip,
            dataset_name="coco_test_multitask",
            delete_existing=True,
            task_mapping={
                LabelType.KEYPOINTS: "keypoints-task",
                LabelType.SEGMENTATION: "segmentation-task",
                LabelType.CLASSIFICATION: "classification-task",
                LabelType.BOUNDINGBOX: "boundingbox-task",
            },
        )

tests/integration/conftest.py:54: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <luxonis_ml.data.parsers.luxonis_parser.LuxonisParser object at 0x7fbf23216a10>
dataset_dir = '../data/COCO_people_subset.zip'
dataset_name = 'coco_test_multitask', save_dir = None, dataset_plugin = None
dataset_type = None
kwargs = {'delete_existing': True, 'task_mapping': {<LabelType.BOUNDINGBOX: 'boundingbox'>: 'boundingbox-task', <LabelType.CLAS..., <LabelType.KEYPOINTS: 'keypoints'>: 'keypoints-task', <LabelType.SEGMENTATION: 'segmentation'>: 'segmentation-task'}}
name = 'COCO_people_subset.zip'
local_path = PosixPath('/home/runner/work/luxonis-train/luxonis-train/COCO_people_subset.zip')
zip_ref = <zipfile.ZipFile [closed]>

    def __init__(
        self,
        dataset_dir: str,
        *,
        dataset_name: Optional[str] = None,
        save_dir: Optional[Union[Path, str]] = None,
        dataset_plugin: Optional[str] = None,
        dataset_type: Optional[DatasetType] = None,
        **kwargs,
    ):
        """High-level abstraction over various parsers.
    
        Automatically recognizes the dataset format and uses the appropriate parser.
    
        @type dataset_dir: str
        @param dataset_dir: Path to the dataset directory or zip file. Can also be a
            remote URL supported by L{LuxonisFileSystem}.
        @type dataset_name: Optional[str]
        @param dataset_name: Name of the dataset. If C{None}, the name is derived from
            the name of the dataset directory.
        @type save_dir: Optional[Union[Path, str]]
        @param save_dir: If a remote URL is provided in C{dataset_dir}, the dataset will
            be downloaded to this directory. If C{None}, the dataset will be downloaded
            to the current working directory.
        @type dataset_plugin: Optional[str]
        @param dataset_plugin: Name of the dataset plugin to use. If C{None},
            C{LuxonisDataset} is used.
        @type dataset_type: Optional[DatasetType]
        @param dataset_type: If provided, the parser will use this dataset type instead
            of trying to recognize it automatically.
        @type kwargs: Dict[str, Any]
        @param kwargs: Additional C{kwargs} to be passed to the constructor of specific
            L{BaseDataset} implementation.
        """
        save_dir = Path(save_dir) if save_dir else None
        name = Path(dataset_dir).name
        local_path = (save_dir or Path.cwd()) / name
        self.dataset_dir = LuxonisFileSystem.download(dataset_dir, local_path)
        if self.dataset_dir.suffix == ".zip":
            with zipfile.ZipFile(self.dataset_dir, "r") as zip_ref:
                unzip_dir = self.dataset_dir.parent / self.dataset_dir.stem
                logger.info(f"Extracting '{self.dataset_dir.name}' to '{unzip_dir}'")
                zip_ref.extractall(unzip_dir)
                self.dataset_dir = unzip_dir
    
        if dataset_type:
            self.dataset_type = dataset_type
            self.parser_type = (
                ParserType.DIR
                if Path(self.dataset_dir / "train").exists()
                else ParserType.SPLIT
            )
        else:
            self.dataset_type, self.parser_type = self._recognize_dataset()
    
        if dataset_plugin:
            self.dataset_constructor: Type[BaseDataset] = DATASETS_REGISTRY.get(
                dataset_plugin
            )
        else:
            self.dataset_constructor = LuxonisDataset
    
        dataset_name = dataset_name or name.replace(" ", "_").split(".")[0]
    
>       self.dataset = self.dataset_constructor(dataset_name=dataset_name, **kwargs)
E       TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'

/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/luxonis_ml/data/parsers/luxonis_parser.py:113: TypeError

Check failure on line 0 in tests.integration.test_sanity

See this annotation in the file changed.

@github-actions github-actions / Test Results

All 4 runs with error: test_sanity[classification_model.yaml] (tests.integration.test_sanity)

artifacts/Test Results [ubuntu-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [ubuntu-latest] (Python 3.11)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.11)/pytest.xml [took 0s]
Raw output
failed on setup with "TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'"
@pytest.fixture(scope="session", autouse=True)
    def create_coco_multitask_dataset():
        url = "https://drive.google.com/uc?id=1XlvFK7aRmt8op6-hHkWVKIJQeDtOwoRT"
        output_folder = "../data/"
        output_zip = os.path.join(output_folder, "COCO_people_subset.zip")
    
        if not os.path.exists(output_folder):
            os.makedirs(output_folder)
    
        if not os.path.exists(output_zip) and not os.path.exists(
            os.path.join(output_folder, "COCO_people_subset")
        ):
            gdown.download(url, output_zip, quiet=False)
    
>       parser = LuxonisParser(
            output_zip,
            dataset_name="coco_test_multitask",
            delete_existing=True,
            task_mapping={
                LabelType.KEYPOINTS: "keypoints-task",
                LabelType.SEGMENTATION: "segmentation-task",
                LabelType.CLASSIFICATION: "classification-task",
                LabelType.BOUNDINGBOX: "boundingbox-task",
            },
        )

tests/integration/conftest.py:54: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <luxonis_ml.data.parsers.luxonis_parser.LuxonisParser object at 0x7fbf23216a10>
dataset_dir = '../data/COCO_people_subset.zip'
dataset_name = 'coco_test_multitask', save_dir = None, dataset_plugin = None
dataset_type = None
kwargs = {'delete_existing': True, 'task_mapping': {<LabelType.BOUNDINGBOX: 'boundingbox'>: 'boundingbox-task', <LabelType.CLAS..., <LabelType.KEYPOINTS: 'keypoints'>: 'keypoints-task', <LabelType.SEGMENTATION: 'segmentation'>: 'segmentation-task'}}
name = 'COCO_people_subset.zip'
local_path = PosixPath('/home/runner/work/luxonis-train/luxonis-train/COCO_people_subset.zip')
zip_ref = <zipfile.ZipFile [closed]>

    def __init__(
        self,
        dataset_dir: str,
        *,
        dataset_name: Optional[str] = None,
        save_dir: Optional[Union[Path, str]] = None,
        dataset_plugin: Optional[str] = None,
        dataset_type: Optional[DatasetType] = None,
        **kwargs,
    ):
        """High-level abstraction over various parsers.
    
        Automatically recognizes the dataset format and uses the appropriate parser.
    
        @type dataset_dir: str
        @param dataset_dir: Path to the dataset directory or zip file. Can also be a
            remote URL supported by L{LuxonisFileSystem}.
        @type dataset_name: Optional[str]
        @param dataset_name: Name of the dataset. If C{None}, the name is derived from
            the name of the dataset directory.
        @type save_dir: Optional[Union[Path, str]]
        @param save_dir: If a remote URL is provided in C{dataset_dir}, the dataset will
            be downloaded to this directory. If C{None}, the dataset will be downloaded
            to the current working directory.
        @type dataset_plugin: Optional[str]
        @param dataset_plugin: Name of the dataset plugin to use. If C{None},
            C{LuxonisDataset} is used.
        @type dataset_type: Optional[DatasetType]
        @param dataset_type: If provided, the parser will use this dataset type instead
            of trying to recognize it automatically.
        @type kwargs: Dict[str, Any]
        @param kwargs: Additional C{kwargs} to be passed to the constructor of specific
            L{BaseDataset} implementation.
        """
        save_dir = Path(save_dir) if save_dir else None
        name = Path(dataset_dir).name
        local_path = (save_dir or Path.cwd()) / name
        self.dataset_dir = LuxonisFileSystem.download(dataset_dir, local_path)
        if self.dataset_dir.suffix == ".zip":
            with zipfile.ZipFile(self.dataset_dir, "r") as zip_ref:
                unzip_dir = self.dataset_dir.parent / self.dataset_dir.stem
                logger.info(f"Extracting '{self.dataset_dir.name}' to '{unzip_dir}'")
                zip_ref.extractall(unzip_dir)
                self.dataset_dir = unzip_dir
    
        if dataset_type:
            self.dataset_type = dataset_type
            self.parser_type = (
                ParserType.DIR
                if Path(self.dataset_dir / "train").exists()
                else ParserType.SPLIT
            )
        else:
            self.dataset_type, self.parser_type = self._recognize_dataset()
    
        if dataset_plugin:
            self.dataset_constructor: Type[BaseDataset] = DATASETS_REGISTRY.get(
                dataset_plugin
            )
        else:
            self.dataset_constructor = LuxonisDataset
    
        dataset_name = dataset_name or name.replace(" ", "_").split(".")[0]
    
>       self.dataset = self.dataset_constructor(dataset_name=dataset_name, **kwargs)
E       TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'

/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/luxonis_ml/data/parsers/luxonis_parser.py:113: TypeError

Check failure on line 0 in tests.integration.test_sanity

See this annotation in the file changed.

@github-actions github-actions / Test Results

All 4 runs with error: test_sanity[coco_model.yaml] (tests.integration.test_sanity)

artifacts/Test Results [ubuntu-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [ubuntu-latest] (Python 3.11)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.11)/pytest.xml [took 0s]
Raw output
failed on setup with "TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'"
@pytest.fixture(scope="session", autouse=True)
    def create_coco_multitask_dataset():
        url = "https://drive.google.com/uc?id=1XlvFK7aRmt8op6-hHkWVKIJQeDtOwoRT"
        output_folder = "../data/"
        output_zip = os.path.join(output_folder, "COCO_people_subset.zip")
    
        if not os.path.exists(output_folder):
            os.makedirs(output_folder)
    
        if not os.path.exists(output_zip) and not os.path.exists(
            os.path.join(output_folder, "COCO_people_subset")
        ):
            gdown.download(url, output_zip, quiet=False)
    
>       parser = LuxonisParser(
            output_zip,
            dataset_name="coco_test_multitask",
            delete_existing=True,
            task_mapping={
                LabelType.KEYPOINTS: "keypoints-task",
                LabelType.SEGMENTATION: "segmentation-task",
                LabelType.CLASSIFICATION: "classification-task",
                LabelType.BOUNDINGBOX: "boundingbox-task",
            },
        )

tests/integration/conftest.py:54: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <luxonis_ml.data.parsers.luxonis_parser.LuxonisParser object at 0x7fbf23216a10>
dataset_dir = '../data/COCO_people_subset.zip'
dataset_name = 'coco_test_multitask', save_dir = None, dataset_plugin = None
dataset_type = None
kwargs = {'delete_existing': True, 'task_mapping': {<LabelType.BOUNDINGBOX: 'boundingbox'>: 'boundingbox-task', <LabelType.CLAS..., <LabelType.KEYPOINTS: 'keypoints'>: 'keypoints-task', <LabelType.SEGMENTATION: 'segmentation'>: 'segmentation-task'}}
name = 'COCO_people_subset.zip'
local_path = PosixPath('/home/runner/work/luxonis-train/luxonis-train/COCO_people_subset.zip')
zip_ref = <zipfile.ZipFile [closed]>

    def __init__(
        self,
        dataset_dir: str,
        *,
        dataset_name: Optional[str] = None,
        save_dir: Optional[Union[Path, str]] = None,
        dataset_plugin: Optional[str] = None,
        dataset_type: Optional[DatasetType] = None,
        **kwargs,
    ):
        """High-level abstraction over various parsers.
    
        Automatically recognizes the dataset format and uses the appropriate parser.
    
        @type dataset_dir: str
        @param dataset_dir: Path to the dataset directory or zip file. Can also be a
            remote URL supported by L{LuxonisFileSystem}.
        @type dataset_name: Optional[str]
        @param dataset_name: Name of the dataset. If C{None}, the name is derived from
            the name of the dataset directory.
        @type save_dir: Optional[Union[Path, str]]
        @param save_dir: If a remote URL is provided in C{dataset_dir}, the dataset will
            be downloaded to this directory. If C{None}, the dataset will be downloaded
            to the current working directory.
        @type dataset_plugin: Optional[str]
        @param dataset_plugin: Name of the dataset plugin to use. If C{None},
            C{LuxonisDataset} is used.
        @type dataset_type: Optional[DatasetType]
        @param dataset_type: If provided, the parser will use this dataset type instead
            of trying to recognize it automatically.
        @type kwargs: Dict[str, Any]
        @param kwargs: Additional C{kwargs} to be passed to the constructor of specific
            L{BaseDataset} implementation.
        """
        save_dir = Path(save_dir) if save_dir else None
        name = Path(dataset_dir).name
        local_path = (save_dir or Path.cwd()) / name
        self.dataset_dir = LuxonisFileSystem.download(dataset_dir, local_path)
        if self.dataset_dir.suffix == ".zip":
            with zipfile.ZipFile(self.dataset_dir, "r") as zip_ref:
                unzip_dir = self.dataset_dir.parent / self.dataset_dir.stem
                logger.info(f"Extracting '{self.dataset_dir.name}' to '{unzip_dir}'")
                zip_ref.extractall(unzip_dir)
                self.dataset_dir = unzip_dir
    
        if dataset_type:
            self.dataset_type = dataset_type
            self.parser_type = (
                ParserType.DIR
                if Path(self.dataset_dir / "train").exists()
                else ParserType.SPLIT
            )
        else:
            self.dataset_type, self.parser_type = self._recognize_dataset()
    
        if dataset_plugin:
            self.dataset_constructor: Type[BaseDataset] = DATASETS_REGISTRY.get(
                dataset_plugin
            )
        else:
            self.dataset_constructor = LuxonisDataset
    
        dataset_name = dataset_name or name.replace(" ", "_").split(".")[0]
    
>       self.dataset = self.dataset_constructor(dataset_name=dataset_name, **kwargs)
E       TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'

/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/luxonis_ml/data/parsers/luxonis_parser.py:113: TypeError

Check failure on line 0 in tests.integration.test_sanity

See this annotation in the file changed.

@github-actions github-actions / Test Results

All 4 runs with error: test_sanity[resnet_model.yaml] (tests.integration.test_sanity)

artifacts/Test Results [ubuntu-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [ubuntu-latest] (Python 3.11)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.11)/pytest.xml [took 0s]
Raw output
failed on setup with "TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'"
@pytest.fixture(scope="session", autouse=True)
    def create_coco_multitask_dataset():
        url = "https://drive.google.com/uc?id=1XlvFK7aRmt8op6-hHkWVKIJQeDtOwoRT"
        output_folder = "../data/"
        output_zip = os.path.join(output_folder, "COCO_people_subset.zip")
    
        if not os.path.exists(output_folder):
            os.makedirs(output_folder)
    
        if not os.path.exists(output_zip) and not os.path.exists(
            os.path.join(output_folder, "COCO_people_subset")
        ):
            gdown.download(url, output_zip, quiet=False)
    
>       parser = LuxonisParser(
            output_zip,
            dataset_name="coco_test_multitask",
            delete_existing=True,
            task_mapping={
                LabelType.KEYPOINTS: "keypoints-task",
                LabelType.SEGMENTATION: "segmentation-task",
                LabelType.CLASSIFICATION: "classification-task",
                LabelType.BOUNDINGBOX: "boundingbox-task",
            },
        )

tests/integration/conftest.py:54: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <luxonis_ml.data.parsers.luxonis_parser.LuxonisParser object at 0x7fbf23216a10>
dataset_dir = '../data/COCO_people_subset.zip'
dataset_name = 'coco_test_multitask', save_dir = None, dataset_plugin = None
dataset_type = None
kwargs = {'delete_existing': True, 'task_mapping': {<LabelType.BOUNDINGBOX: 'boundingbox'>: 'boundingbox-task', <LabelType.CLAS..., <LabelType.KEYPOINTS: 'keypoints'>: 'keypoints-task', <LabelType.SEGMENTATION: 'segmentation'>: 'segmentation-task'}}
name = 'COCO_people_subset.zip'
local_path = PosixPath('/home/runner/work/luxonis-train/luxonis-train/COCO_people_subset.zip')
zip_ref = <zipfile.ZipFile [closed]>

    def __init__(
        self,
        dataset_dir: str,
        *,
        dataset_name: Optional[str] = None,
        save_dir: Optional[Union[Path, str]] = None,
        dataset_plugin: Optional[str] = None,
        dataset_type: Optional[DatasetType] = None,
        **kwargs,
    ):
        """High-level abstraction over various parsers.
    
        Automatically recognizes the dataset format and uses the appropriate parser.
    
        @type dataset_dir: str
        @param dataset_dir: Path to the dataset directory or zip file. Can also be a
            remote URL supported by L{LuxonisFileSystem}.
        @type dataset_name: Optional[str]
        @param dataset_name: Name of the dataset. If C{None}, the name is derived from
            the name of the dataset directory.
        @type save_dir: Optional[Union[Path, str]]
        @param save_dir: If a remote URL is provided in C{dataset_dir}, the dataset will
            be downloaded to this directory. If C{None}, the dataset will be downloaded
            to the current working directory.
        @type dataset_plugin: Optional[str]
        @param dataset_plugin: Name of the dataset plugin to use. If C{None},
            C{LuxonisDataset} is used.
        @type dataset_type: Optional[DatasetType]
        @param dataset_type: If provided, the parser will use this dataset type instead
            of trying to recognize it automatically.
        @type kwargs: Dict[str, Any]
        @param kwargs: Additional C{kwargs} to be passed to the constructor of specific
            L{BaseDataset} implementation.
        """
        save_dir = Path(save_dir) if save_dir else None
        name = Path(dataset_dir).name
        local_path = (save_dir or Path.cwd()) / name
        self.dataset_dir = LuxonisFileSystem.download(dataset_dir, local_path)
        if self.dataset_dir.suffix == ".zip":
            with zipfile.ZipFile(self.dataset_dir, "r") as zip_ref:
                unzip_dir = self.dataset_dir.parent / self.dataset_dir.stem
                logger.info(f"Extracting '{self.dataset_dir.name}' to '{unzip_dir}'")
                zip_ref.extractall(unzip_dir)
                self.dataset_dir = unzip_dir
    
        if dataset_type:
            self.dataset_type = dataset_type
            self.parser_type = (
                ParserType.DIR
                if Path(self.dataset_dir / "train").exists()
                else ParserType.SPLIT
            )
        else:
            self.dataset_type, self.parser_type = self._recognize_dataset()
    
        if dataset_plugin:
            self.dataset_constructor: Type[BaseDataset] = DATASETS_REGISTRY.get(
                dataset_plugin
            )
        else:
            self.dataset_constructor = LuxonisDataset
    
        dataset_name = dataset_name or name.replace(" ", "_").split(".")[0]
    
>       self.dataset = self.dataset_constructor(dataset_name=dataset_name, **kwargs)
E       TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'

/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/luxonis_ml/data/parsers/luxonis_parser.py:113: TypeError

Check failure on line 0 in tests.integration.test_sanity

See this annotation in the file changed.

@github-actions github-actions / Test Results

All 4 runs with error: test_sanity[keypoint_bbox_model.yaml] (tests.integration.test_sanity)

artifacts/Test Results [ubuntu-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [ubuntu-latest] (Python 3.11)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.11)/pytest.xml [took 0s]
Raw output
failed on setup with "TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'"
@pytest.fixture(scope="session", autouse=True)
    def create_coco_multitask_dataset():
        url = "https://drive.google.com/uc?id=1XlvFK7aRmt8op6-hHkWVKIJQeDtOwoRT"
        output_folder = "../data/"
        output_zip = os.path.join(output_folder, "COCO_people_subset.zip")
    
        if not os.path.exists(output_folder):
            os.makedirs(output_folder)
    
        if not os.path.exists(output_zip) and not os.path.exists(
            os.path.join(output_folder, "COCO_people_subset")
        ):
            gdown.download(url, output_zip, quiet=False)
    
>       parser = LuxonisParser(
            output_zip,
            dataset_name="coco_test_multitask",
            delete_existing=True,
            task_mapping={
                LabelType.KEYPOINTS: "keypoints-task",
                LabelType.SEGMENTATION: "segmentation-task",
                LabelType.CLASSIFICATION: "classification-task",
                LabelType.BOUNDINGBOX: "boundingbox-task",
            },
        )

tests/integration/conftest.py:54: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <luxonis_ml.data.parsers.luxonis_parser.LuxonisParser object at 0x7fbf23216a10>
dataset_dir = '../data/COCO_people_subset.zip'
dataset_name = 'coco_test_multitask', save_dir = None, dataset_plugin = None
dataset_type = None
kwargs = {'delete_existing': True, 'task_mapping': {<LabelType.BOUNDINGBOX: 'boundingbox'>: 'boundingbox-task', <LabelType.CLAS..., <LabelType.KEYPOINTS: 'keypoints'>: 'keypoints-task', <LabelType.SEGMENTATION: 'segmentation'>: 'segmentation-task'}}
name = 'COCO_people_subset.zip'
local_path = PosixPath('/home/runner/work/luxonis-train/luxonis-train/COCO_people_subset.zip')
zip_ref = <zipfile.ZipFile [closed]>

    def __init__(
        self,
        dataset_dir: str,
        *,
        dataset_name: Optional[str] = None,
        save_dir: Optional[Union[Path, str]] = None,
        dataset_plugin: Optional[str] = None,
        dataset_type: Optional[DatasetType] = None,
        **kwargs,
    ):
        """High-level abstraction over various parsers.
    
        Automatically recognizes the dataset format and uses the appropriate parser.
    
        @type dataset_dir: str
        @param dataset_dir: Path to the dataset directory or zip file. Can also be a
            remote URL supported by L{LuxonisFileSystem}.
        @type dataset_name: Optional[str]
        @param dataset_name: Name of the dataset. If C{None}, the name is derived from
            the name of the dataset directory.
        @type save_dir: Optional[Union[Path, str]]
        @param save_dir: If a remote URL is provided in C{dataset_dir}, the dataset will
            be downloaded to this directory. If C{None}, the dataset will be downloaded
            to the current working directory.
        @type dataset_plugin: Optional[str]
        @param dataset_plugin: Name of the dataset plugin to use. If C{None},
            C{LuxonisDataset} is used.
        @type dataset_type: Optional[DatasetType]
        @param dataset_type: If provided, the parser will use this dataset type instead
            of trying to recognize it automatically.
        @type kwargs: Dict[str, Any]
        @param kwargs: Additional C{kwargs} to be passed to the constructor of specific
            L{BaseDataset} implementation.
        """
        save_dir = Path(save_dir) if save_dir else None
        name = Path(dataset_dir).name
        local_path = (save_dir or Path.cwd()) / name
        self.dataset_dir = LuxonisFileSystem.download(dataset_dir, local_path)
        if self.dataset_dir.suffix == ".zip":
            with zipfile.ZipFile(self.dataset_dir, "r") as zip_ref:
                unzip_dir = self.dataset_dir.parent / self.dataset_dir.stem
                logger.info(f"Extracting '{self.dataset_dir.name}' to '{unzip_dir}'")
                zip_ref.extractall(unzip_dir)
                self.dataset_dir = unzip_dir
    
        if dataset_type:
            self.dataset_type = dataset_type
            self.parser_type = (
                ParserType.DIR
                if Path(self.dataset_dir / "train").exists()
                else ParserType.SPLIT
            )
        else:
            self.dataset_type, self.parser_type = self._recognize_dataset()
    
        if dataset_plugin:
            self.dataset_constructor: Type[BaseDataset] = DATASETS_REGISTRY.get(
                dataset_plugin
            )
        else:
            self.dataset_constructor = LuxonisDataset
    
        dataset_name = dataset_name or name.replace(" ", "_").split(".")[0]
    
>       self.dataset = self.dataset_constructor(dataset_name=dataset_name, **kwargs)
E       TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'

/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/luxonis_ml/data/parsers/luxonis_parser.py:113: TypeError

Check failure on line 0 in tests.integration.test_sanity

See this annotation in the file changed.

@github-actions github-actions / Test Results

All 4 runs with error: test_sanity[detection_model.yaml] (tests.integration.test_sanity)

artifacts/Test Results [ubuntu-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [ubuntu-latest] (Python 3.11)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.11)/pytest.xml [took 0s]
Raw output
failed on setup with "TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'"
@pytest.fixture(scope="session", autouse=True)
    def create_coco_multitask_dataset():
        url = "https://drive.google.com/uc?id=1XlvFK7aRmt8op6-hHkWVKIJQeDtOwoRT"
        output_folder = "../data/"
        output_zip = os.path.join(output_folder, "COCO_people_subset.zip")
    
        if not os.path.exists(output_folder):
            os.makedirs(output_folder)
    
        if not os.path.exists(output_zip) and not os.path.exists(
            os.path.join(output_folder, "COCO_people_subset")
        ):
            gdown.download(url, output_zip, quiet=False)
    
>       parser = LuxonisParser(
            output_zip,
            dataset_name="coco_test_multitask",
            delete_existing=True,
            task_mapping={
                LabelType.KEYPOINTS: "keypoints-task",
                LabelType.SEGMENTATION: "segmentation-task",
                LabelType.CLASSIFICATION: "classification-task",
                LabelType.BOUNDINGBOX: "boundingbox-task",
            },
        )

tests/integration/conftest.py:54: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <luxonis_ml.data.parsers.luxonis_parser.LuxonisParser object at 0x7fbf23216a10>
dataset_dir = '../data/COCO_people_subset.zip'
dataset_name = 'coco_test_multitask', save_dir = None, dataset_plugin = None
dataset_type = None
kwargs = {'delete_existing': True, 'task_mapping': {<LabelType.BOUNDINGBOX: 'boundingbox'>: 'boundingbox-task', <LabelType.CLAS..., <LabelType.KEYPOINTS: 'keypoints'>: 'keypoints-task', <LabelType.SEGMENTATION: 'segmentation'>: 'segmentation-task'}}
name = 'COCO_people_subset.zip'
local_path = PosixPath('/home/runner/work/luxonis-train/luxonis-train/COCO_people_subset.zip')
zip_ref = <zipfile.ZipFile [closed]>

    def __init__(
        self,
        dataset_dir: str,
        *,
        dataset_name: Optional[str] = None,
        save_dir: Optional[Union[Path, str]] = None,
        dataset_plugin: Optional[str] = None,
        dataset_type: Optional[DatasetType] = None,
        **kwargs,
    ):
        """High-level abstraction over various parsers.
    
        Automatically recognizes the dataset format and uses the appropriate parser.
    
        @type dataset_dir: str
        @param dataset_dir: Path to the dataset directory or zip file. Can also be a
            remote URL supported by L{LuxonisFileSystem}.
        @type dataset_name: Optional[str]
        @param dataset_name: Name of the dataset. If C{None}, the name is derived from
            the name of the dataset directory.
        @type save_dir: Optional[Union[Path, str]]
        @param save_dir: If a remote URL is provided in C{dataset_dir}, the dataset will
            be downloaded to this directory. If C{None}, the dataset will be downloaded
            to the current working directory.
        @type dataset_plugin: Optional[str]
        @param dataset_plugin: Name of the dataset plugin to use. If C{None},
            C{LuxonisDataset} is used.
        @type dataset_type: Optional[DatasetType]
        @param dataset_type: If provided, the parser will use this dataset type instead
            of trying to recognize it automatically.
        @type kwargs: Dict[str, Any]
        @param kwargs: Additional C{kwargs} to be passed to the constructor of specific
            L{BaseDataset} implementation.
        """
        save_dir = Path(save_dir) if save_dir else None
        name = Path(dataset_dir).name
        local_path = (save_dir or Path.cwd()) / name
        self.dataset_dir = LuxonisFileSystem.download(dataset_dir, local_path)
        if self.dataset_dir.suffix == ".zip":
            with zipfile.ZipFile(self.dataset_dir, "r") as zip_ref:
                unzip_dir = self.dataset_dir.parent / self.dataset_dir.stem
                logger.info(f"Extracting '{self.dataset_dir.name}' to '{unzip_dir}'")
                zip_ref.extractall(unzip_dir)
                self.dataset_dir = unzip_dir
    
        if dataset_type:
            self.dataset_type = dataset_type
            self.parser_type = (
                ParserType.DIR
                if Path(self.dataset_dir / "train").exists()
                else ParserType.SPLIT
            )
        else:
            self.dataset_type, self.parser_type = self._recognize_dataset()
    
        if dataset_plugin:
            self.dataset_constructor: Type[BaseDataset] = DATASETS_REGISTRY.get(
                dataset_plugin
            )
        else:
            self.dataset_constructor = LuxonisDataset
    
        dataset_name = dataset_name or name.replace(" ", "_").split(".")[0]
    
>       self.dataset = self.dataset_constructor(dataset_name=dataset_name, **kwargs)
E       TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'

/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/luxonis_ml/data/parsers/luxonis_parser.py:113: TypeError

Check failure on line 0 in tests.integration.test_sanity

See this annotation in the file changed.

@github-actions github-actions / Test Results

All 4 runs with error: test_sanity[efficient_coco_model.yaml] (tests.integration.test_sanity)

artifacts/Test Results [ubuntu-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [ubuntu-latest] (Python 3.11)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.11)/pytest.xml [took 0s]
Raw output
failed on setup with "TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'"
@pytest.fixture(scope="session", autouse=True)
    def create_coco_multitask_dataset():
        url = "https://drive.google.com/uc?id=1XlvFK7aRmt8op6-hHkWVKIJQeDtOwoRT"
        output_folder = "../data/"
        output_zip = os.path.join(output_folder, "COCO_people_subset.zip")
    
        if not os.path.exists(output_folder):
            os.makedirs(output_folder)
    
        if not os.path.exists(output_zip) and not os.path.exists(
            os.path.join(output_folder, "COCO_people_subset")
        ):
            gdown.download(url, output_zip, quiet=False)
    
>       parser = LuxonisParser(
            output_zip,
            dataset_name="coco_test_multitask",
            delete_existing=True,
            task_mapping={
                LabelType.KEYPOINTS: "keypoints-task",
                LabelType.SEGMENTATION: "segmentation-task",
                LabelType.CLASSIFICATION: "classification-task",
                LabelType.BOUNDINGBOX: "boundingbox-task",
            },
        )

tests/integration/conftest.py:54: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <luxonis_ml.data.parsers.luxonis_parser.LuxonisParser object at 0x7fbf23216a10>
dataset_dir = '../data/COCO_people_subset.zip'
dataset_name = 'coco_test_multitask', save_dir = None, dataset_plugin = None
dataset_type = None
kwargs = {'delete_existing': True, 'task_mapping': {<LabelType.BOUNDINGBOX: 'boundingbox'>: 'boundingbox-task', <LabelType.CLAS..., <LabelType.KEYPOINTS: 'keypoints'>: 'keypoints-task', <LabelType.SEGMENTATION: 'segmentation'>: 'segmentation-task'}}
name = 'COCO_people_subset.zip'
local_path = PosixPath('/home/runner/work/luxonis-train/luxonis-train/COCO_people_subset.zip')
zip_ref = <zipfile.ZipFile [closed]>

    def __init__(
        self,
        dataset_dir: str,
        *,
        dataset_name: Optional[str] = None,
        save_dir: Optional[Union[Path, str]] = None,
        dataset_plugin: Optional[str] = None,
        dataset_type: Optional[DatasetType] = None,
        **kwargs,
    ):
        """High-level abstraction over various parsers.
    
        Automatically recognizes the dataset format and uses the appropriate parser.
    
        @type dataset_dir: str
        @param dataset_dir: Path to the dataset directory or zip file. Can also be a
            remote URL supported by L{LuxonisFileSystem}.
        @type dataset_name: Optional[str]
        @param dataset_name: Name of the dataset. If C{None}, the name is derived from
            the name of the dataset directory.
        @type save_dir: Optional[Union[Path, str]]
        @param save_dir: If a remote URL is provided in C{dataset_dir}, the dataset will
            be downloaded to this directory. If C{None}, the dataset will be downloaded
            to the current working directory.
        @type dataset_plugin: Optional[str]
        @param dataset_plugin: Name of the dataset plugin to use. If C{None},
            C{LuxonisDataset} is used.
        @type dataset_type: Optional[DatasetType]
        @param dataset_type: If provided, the parser will use this dataset type instead
            of trying to recognize it automatically.
        @type kwargs: Dict[str, Any]
        @param kwargs: Additional C{kwargs} to be passed to the constructor of specific
            L{BaseDataset} implementation.
        """
        save_dir = Path(save_dir) if save_dir else None
        name = Path(dataset_dir).name
        local_path = (save_dir or Path.cwd()) / name
        self.dataset_dir = LuxonisFileSystem.download(dataset_dir, local_path)
        if self.dataset_dir.suffix == ".zip":
            with zipfile.ZipFile(self.dataset_dir, "r") as zip_ref:
                unzip_dir = self.dataset_dir.parent / self.dataset_dir.stem
                logger.info(f"Extracting '{self.dataset_dir.name}' to '{unzip_dir}'")
                zip_ref.extractall(unzip_dir)
                self.dataset_dir = unzip_dir
    
        if dataset_type:
            self.dataset_type = dataset_type
            self.parser_type = (
                ParserType.DIR
                if Path(self.dataset_dir / "train").exists()
                else ParserType.SPLIT
            )
        else:
            self.dataset_type, self.parser_type = self._recognize_dataset()
    
        if dataset_plugin:
            self.dataset_constructor: Type[BaseDataset] = DATASETS_REGISTRY.get(
                dataset_plugin
            )
        else:
            self.dataset_constructor = LuxonisDataset
    
        dataset_name = dataset_name or name.replace(" ", "_").split(".")[0]
    
>       self.dataset = self.dataset_constructor(dataset_name=dataset_name, **kwargs)
E       TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'

/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/luxonis_ml/data/parsers/luxonis_parser.py:113: TypeError

Check failure on line 0 in tests.integration.test_sanity

See this annotation in the file changed.

@github-actions github-actions / Test Results

All 4 runs with error: test_tuner (tests.integration.test_sanity)

artifacts/Test Results [ubuntu-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [ubuntu-latest] (Python 3.11)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.10)/pytest.xml [took 0s]
artifacts/Test Results [windows-latest] (Python 3.11)/pytest.xml [took 0s]
Raw output
failed on setup with "TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'"
@pytest.fixture(scope="session", autouse=True)
    def create_coco_multitask_dataset():
        url = "https://drive.google.com/uc?id=1XlvFK7aRmt8op6-hHkWVKIJQeDtOwoRT"
        output_folder = "../data/"
        output_zip = os.path.join(output_folder, "COCO_people_subset.zip")
    
        if not os.path.exists(output_folder):
            os.makedirs(output_folder)
    
        if not os.path.exists(output_zip) and not os.path.exists(
            os.path.join(output_folder, "COCO_people_subset")
        ):
            gdown.download(url, output_zip, quiet=False)
    
>       parser = LuxonisParser(
            output_zip,
            dataset_name="coco_test_multitask",
            delete_existing=True,
            task_mapping={
                LabelType.KEYPOINTS: "keypoints-task",
                LabelType.SEGMENTATION: "segmentation-task",
                LabelType.CLASSIFICATION: "classification-task",
                LabelType.BOUNDINGBOX: "boundingbox-task",
            },
        )

tests/integration/conftest.py:54: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <luxonis_ml.data.parsers.luxonis_parser.LuxonisParser object at 0x7fbf23216a10>
dataset_dir = '../data/COCO_people_subset.zip'
dataset_name = 'coco_test_multitask', save_dir = None, dataset_plugin = None
dataset_type = None
kwargs = {'delete_existing': True, 'task_mapping': {<LabelType.BOUNDINGBOX: 'boundingbox'>: 'boundingbox-task', <LabelType.CLAS..., <LabelType.KEYPOINTS: 'keypoints'>: 'keypoints-task', <LabelType.SEGMENTATION: 'segmentation'>: 'segmentation-task'}}
name = 'COCO_people_subset.zip'
local_path = PosixPath('/home/runner/work/luxonis-train/luxonis-train/COCO_people_subset.zip')
zip_ref = <zipfile.ZipFile [closed]>

    def __init__(
        self,
        dataset_dir: str,
        *,
        dataset_name: Optional[str] = None,
        save_dir: Optional[Union[Path, str]] = None,
        dataset_plugin: Optional[str] = None,
        dataset_type: Optional[DatasetType] = None,
        **kwargs,
    ):
        """High-level abstraction over various parsers.
    
        Automatically recognizes the dataset format and uses the appropriate parser.
    
        @type dataset_dir: str
        @param dataset_dir: Path to the dataset directory or zip file. Can also be a
            remote URL supported by L{LuxonisFileSystem}.
        @type dataset_name: Optional[str]
        @param dataset_name: Name of the dataset. If C{None}, the name is derived from
            the name of the dataset directory.
        @type save_dir: Optional[Union[Path, str]]
        @param save_dir: If a remote URL is provided in C{dataset_dir}, the dataset will
            be downloaded to this directory. If C{None}, the dataset will be downloaded
            to the current working directory.
        @type dataset_plugin: Optional[str]
        @param dataset_plugin: Name of the dataset plugin to use. If C{None},
            C{LuxonisDataset} is used.
        @type dataset_type: Optional[DatasetType]
        @param dataset_type: If provided, the parser will use this dataset type instead
            of trying to recognize it automatically.
        @type kwargs: Dict[str, Any]
        @param kwargs: Additional C{kwargs} to be passed to the constructor of specific
            L{BaseDataset} implementation.
        """
        save_dir = Path(save_dir) if save_dir else None
        name = Path(dataset_dir).name
        local_path = (save_dir or Path.cwd()) / name
        self.dataset_dir = LuxonisFileSystem.download(dataset_dir, local_path)
        if self.dataset_dir.suffix == ".zip":
            with zipfile.ZipFile(self.dataset_dir, "r") as zip_ref:
                unzip_dir = self.dataset_dir.parent / self.dataset_dir.stem
                logger.info(f"Extracting '{self.dataset_dir.name}' to '{unzip_dir}'")
                zip_ref.extractall(unzip_dir)
                self.dataset_dir = unzip_dir
    
        if dataset_type:
            self.dataset_type = dataset_type
            self.parser_type = (
                ParserType.DIR
                if Path(self.dataset_dir / "train").exists()
                else ParserType.SPLIT
            )
        else:
            self.dataset_type, self.parser_type = self._recognize_dataset()
    
        if dataset_plugin:
            self.dataset_constructor: Type[BaseDataset] = DATASETS_REGISTRY.get(
                dataset_plugin
            )
        else:
            self.dataset_constructor = LuxonisDataset
    
        dataset_name = dataset_name or name.replace(" ", "_").split(".")[0]
    
>       self.dataset = self.dataset_constructor(dataset_name=dataset_name, **kwargs)
E       TypeError: LuxonisDataset.__init__() got an unexpected keyword argument 'task_mapping'

/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/luxonis_ml/data/parsers/luxonis_parser.py:113: TypeError