Skip to content

error

Module diagram

classDiagram
  class error {
  }
  class api {
  }
  class base {
  }
  class error {
  }
  class handler {
  }
  api --> base
  api --> error
  api --> handler
  error --> base
  handler --> base
  handler --> error

error

레포지토리 별 베이스 에러 클래스와 SaigeToolkit 에러를 정의합니다.

  • API 결과 값을 에러 코드와 함께 반환하기 위한 error handler 데코레이터를 제공합니다.
  • 에러 코드에 해당하는 에러 메시지를 반환하는 함수를 제공합니다.

api

get_error_message

get_error_message(error_code: int) -> str

입력으로 받은 error_code에 해당하는 error_message를 반환합니다.

Parameters:

  • error_code (int) –

    error_code

Raises:

Returns:

  • str ( str ) –

    error_message

Source code in SaigeToolkit/error/api.py
@error_handler
def get_error_message(error_code: int) -> str:
    """입력으로 받은 error_code에 해당하는 error_message를 반환합니다.

    Args:
        error_code (int): error_code

    Raises:
        UndefinedErrorCodeError: 정의되지 않은 error_code를 입력으로 받을 경우 발생하는 error

    Returns:
        str: error_message
    """

    if error_code == SUCCESS:
        return SUCCESS_MESSAGE
    elif not MIN_ERROR_CODE <= int(error_code) <= MAX_ERROR_CODE:
        raise UndefinedErrorCodeError

    code_digits = str(-error_code).zfill(6)
    repo = code_digits[1:3]
    code = code_digits[3:]
    code_book_key = repo + code

    if code == ERROR_CODE_UNDEFINED:
        error_message = ERROR_MESSAGE_UNDEFINED
    elif code_book_key not in ERROR_CODE_BOOK:
        raise UndefinedErrorCodeError
    else:
        error_message = ERROR_CODE_BOOK[code_book_key].message

    return error_message

base

SaigeError

SaigeError(message=None)

Bases: Exception, ABC

Saige Research 6-digit error code

Info

notion.so/843e85df4fb7469c927170f66251da4c

Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음. 참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false

Source code in SaigeToolkit/error/base.py
def __init__(self, message=None) -> None:
    """
    Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음.
    참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false
    """
    pass
__init_subclass__
__init_subclass__(**kwargs) -> None

Register a child class that inherits SaigeError with "repo", "code", and "message" attributes to ERROR_CODE_BOOK.

Source code in SaigeToolkit/error/base.py
def __init_subclass__(cls, **kwargs) -> None:
    """Register a child class that inherits SaigeError with "repo", "code", and "message" attributes to ERROR_CODE_BOOK."""

    super().__init_subclass__(**kwargs)

    if hasattr(cls, "repo") and not hasattr(cls, "code"):
        repo = cls.repo

        assert repo not in ERROR_REPO_BOOK or (
            ERROR_REPO_BOOK[repo].__name__ == cls.__name__
            and ERROR_REPO_BOOK[repo].head == cls.head
            and ERROR_REPO_BOOK[repo].__doc__ == cls.__doc__
        ), f"Error repo of {cls.__name__} & {ERROR_REPO_BOOK[repo].__name__} are duplicated!"

        ERROR_REPO_BOOK[repo] = cls

    if hasattr(cls, "repo") and hasattr(cls, "code") and hasattr(cls, "message"):
        code = cls.repo + cls.code

        assert code not in ERROR_CODE_BOOK or (
            ERROR_CODE_BOOK[code].__name__ == cls.__name__
            and ERROR_CODE_BOOK[code].code == cls.code
            and ERROR_CODE_BOOK[code].message == cls.message
        ), f"Error codes of {cls.__name__} & {ERROR_CODE_BOOK[code].__name__} are duplicated!"

        ERROR_CODE_BOOK[code] = cls

SaigeToolkitError

SaigeToolkitError(message=None)

Bases: SaigeError

https://dev.azure.com/SaigeResearch/Research/_git/SaigeToolkit

Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음. 참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false

Source code in SaigeToolkit/error/base.py
def __init__(self, message=None) -> None:
    """
    Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음.
    참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false
    """
    pass

SaigeModuleError

SaigeModuleError(message=None)

Bases: SaigeError

https://dev.azure.com/SaigeResearch/Research/_git/SaigeModule

Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음. 참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false

Source code in SaigeToolkit/error/base.py
def __init__(self, message=None) -> None:
    """
    Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음.
    참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false
    """
    pass

SaigeClassificationError

SaigeClassificationError(message=None)

Bases: SaigeError

https://dev.azure.com/SaigeResearch/Research/_git/SaigeClassification2

Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음. 참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false

Source code in SaigeToolkit/error/base.py
def __init__(self, message=None) -> None:
    """
    Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음.
    참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false
    """
    pass

SaigeSegmentationError

SaigeSegmentationError(message=None)

Bases: SaigeError

https://dev.azure.com/SaigeResearch/Research/_git/SaigeSegmentation2

Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음. 참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false

Source code in SaigeToolkit/error/base.py
def __init__(self, message=None) -> None:
    """
    Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음.
    참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false
    """
    pass

SaigeObjectDetectionError

SaigeObjectDetectionError(message=None)

Bases: SaigeError

https://dev.azure.com/SaigeResearch/Research/_git/SaigeObjectDetection

Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음. 참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false

Source code in SaigeToolkit/error/base.py
def __init__(self, message=None) -> None:
    """
    Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음.
    참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false
    """
    pass

SaigeAnomalyDetectionError

SaigeAnomalyDetectionError(message=None)

Bases: SaigeError

https://dev.azure.com/SaigeResearch/Research/_git/SaigeAnomalyDetection

Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음. 참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false

Source code in SaigeToolkit/error/base.py
def __init__(self, message=None) -> None:
    """
    Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음.
    참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false
    """
    pass

SaigeMLOpsError

SaigeMLOpsError(message=None)

Bases: SaigeError

https://dev.azure.com/SaigeResearch/Research/_git/SaigeMLOps

Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음. 참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false

Source code in SaigeToolkit/error/base.py
def __init__(self, message=None) -> None:
    """
    Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음.
    참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false
    """
    pass

SaigeImageEnhancementError

SaigeImageEnhancementError(message=None)

Bases: SaigeError

https://dev.azure.com/SaigeResearch/Research/_git/SaigeImageEnhancement

Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음. 참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false

Source code in SaigeToolkit/error/base.py
def __init__(self, message=None) -> None:
    """
    Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음.
    참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false
    """
    pass

SaigeUniversalDataDriftDetectionError

SaigeUniversalDataDriftDetectionError(message=None)

Bases: SaigeError

https://dev.azure.com/SaigeResearch/Research/_git/UniversalDataDriftDetection

Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음. 참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false

Source code in SaigeToolkit/error/base.py
def __init__(self, message=None) -> None:
    """
    Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음.
    참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false
    """
    pass

SaigeSurfaceError

SaigeSurfaceError(message=None)

Bases: SaigeError

https://dev.azure.com/SaigeResearch/Research/_git/SaigeSurface

Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음. 참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false

Source code in SaigeToolkit/error/base.py
def __init__(self, message=None) -> None:
    """
    Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음.
    참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false
    """
    pass

SaigeVADError

SaigeVADError(message=None)

Bases: SaigeError

https://dev.azure.com/SaigeResearch/Research/_git/SaigeVAD

Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음. 참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false

Source code in SaigeToolkit/error/base.py
def __init__(self, message=None) -> None:
    """
    Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음.
    참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false
    """
    pass

SaigeVIMSSafetyError

SaigeVIMSSafetyError(message=None)

Bases: SaigeError

https://dev.azure.com/SaigeResearch/Research/_git/SaigeVIMSSafety

Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음. 참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false

Source code in SaigeToolkit/error/base.py
def __init__(self, message=None) -> None:
    """
    Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음.
    참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false
    """
    pass

SaigeVimsError

SaigeVimsError(message=None)

Bases: SaigeError

https://dev.azure.com/SaigeResearch/Research/_git/SaigeVIMS

Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음. 참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false

Source code in SaigeToolkit/error/base.py
def __init__(self, message=None) -> None:
    """
    Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음.
    참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false
    """
    pass

SaigeVideoAnomalyDetectionError

SaigeVideoAnomalyDetectionError(message=None)

Bases: SaigeError

https://dev.azure.com/SaigeResearch/Research/_git/SaigeVideoAnomalyDetection

Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음. 참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false

Source code in SaigeToolkit/error/base.py
def __init__(self, message=None) -> None:
    """
    Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음.
    참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false
    """
    pass

SaigeOCRError

SaigeOCRError(message=None)

Bases: SaigeError

https://dev.azure.com/SaigeResearch/Research/_git/SaigeOCR

Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음. 참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false

Source code in SaigeToolkit/error/base.py
def __init__(self, message=None) -> None:
    """
    Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음.
    참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false
    """
    pass

SaigeDefectGenerationError

SaigeDefectGenerationError(message=None)

Bases: SaigeError

https://dev.azure.com/SaigeResearch/Research/_git/SaigeDefectGeneration

Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음. 참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false

Source code in SaigeToolkit/error/base.py
def __init__(self, message=None) -> None:
    """
    Torch dataloader에서 작업 중 exception 발생 시 torch가 message를 넣어서 reraise하는 경우가 있음.
    참고: https://teams.microsoft.com/l/message/19:874deea9bde44c2f9c2c43d4bc002a58@thread.tacv2/1688547469317?tenantId=4098be5f-d82a-474c-b4b6-a95727b671eb&groupId=3f51c33d-7ce9-4b2c-bf75-6d1032c4183b&parentMessageId=1688547469317&teamName=%EC%97%B0%EA%B5%AC%ED%8C%80&channelName=%5BPR%5D%20SaigeToolkit&createdTime=1688547469317&allowXTenantAccess=false
    """
    pass

error

handler

get_error_handler

get_error_handler(head_error: Type[SaigeError])

Returns error handling decorator The handler wraps the original return value into (error_code, return_value) tuple.

Parameters:

Source code in SaigeToolkit/error/handler.py
def get_error_handler(head_error: Type[SaigeError]):
    """Returns error handling decorator
    The handler wraps the original return value into (error_code, return_value) tuple.

    Args:
        head_error (Type[SaigeError]): head error
    """

    def error_handler(function: Callable[P, T]) -> Callable[P, Tuple[int, Optional[T]]]:
        @wraps(function)
        def decorator(*args: P.args, **kwargs: P.kwargs) -> Tuple[int, Optional[T]]:
            try:
                return (SUCCESS, function(*args, **kwargs))

            except SaigeError as e:
                error_code = -int(head_error.head + e.repo + e.code)
                return (error_code, None)

            except Exception as e:
                error = KNOWN_ERRORS.get(f"{e.__class__.__module__}.{e.__class__.__qualname__}")

                if error is None:
                    print(traceback.format_exc(), file=sys.stderr)
                    repo, code = head_error.repo, ERROR_CODE_UNDEFINED
                else:
                    repo, code = error.repo, error.code

                error_code = -int(head_error.head + repo + code)
                return (error_code, None)

        return decorator

    return error_handler