| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| from typing import Literal |
| from transformers import PretrainedConfig |
|
|
| class TAPCTConfig(PretrainedConfig): |
| """ |
| Configuration class for TAP-CT models. |
| |
| Parameters |
| ---------- |
| model_size : Literal['small', 'base'], default='base' |
| Size of the model ('small' or 'base') |
| model_variant : Literal['2d', '2.5d', '3d'], default='3d' |
| Variant of the model ('2d', '2.5d', or '3d') |
| img_size : int | tuple | list, default=224 |
| Input image size. For 2D: int or tuple[int, int], for 3D: tuple[int, int, int] |
| patch_size : int | tuple | list, default=16 |
| Patch size. For 2D: int or tuple[int, int], for 3D: tuple[int, int, int] |
| in_chans : int, default=1 |
| Number of input channels (default: 1 for CT scans) |
| num_register_tokens : int, default=4 |
| Number of register tokens |
| init_values : float | None, default=None |
| Layer scale init values |
| block_chunks : int, default=0 |
| Number of block chunks for FSDP |
| """ |
| model_type = "tapct" |
|
|
| def __init__( |
| self, |
| model_size: Literal['small', 'base'] = 'base', |
| model_variant: Literal['2d', '2.5d', '3d'] = '3d', |
| img_size: int | tuple | list = 224, |
| patch_size: int | tuple | list = 16, |
| in_chans: int = 1, |
| num_register_tokens: int = 4, |
| init_values: float | None = None, |
| block_chunks: int = 0, |
| **kwargs |
| ): |
| super().__init__(**kwargs) |
| self.model_size = model_size |
| self.model_variant = model_variant |
| self.img_size = img_size |
| self.patch_size = patch_size |
| self.in_chans = in_chans |
| self.num_register_tokens = num_register_tokens |
| self.init_values = init_values |
| self.block_chunks = block_chunks |