Skip to content

Commit 77448cf

Browse files
mkumar73Copilot
andcommitted
docs: fix Sphinx build issues, mambular to deeptab rename
Co-authored-by: Copilot <copilot@github.com>
1 parent 69ba6f9 commit 77448cf

7 files changed

Lines changed: 203 additions & 83 deletions

File tree

Lines changed: 20 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
import inspect
2+
import textwrap
3+
14
from pretab.preprocessor import Preprocessor
25

36

@@ -6,27 +9,34 @@ def generate_docstring(config, model_description, examples):
69
710
The `Parameters` tag is stripped from the Preprocessor docstring to avoid duplication.
811
"""
9-
config_doc = config.__doc__ or "No documentation for DefaultFTTransformerConfig."
10-
preprocessor_doc = Preprocessor.__doc__ or "No documentation for Preprocessor."
11-
12-
# Remove "Parameters" section header from the Preprocessor docstring
13-
preprocessor_doc_cleaned = preprocessor_doc.split("Parameters\n ----------\n", 1)[-1].strip()
14-
12+
# inspect.cleandoc is the correct tool for Python docstrings: it strips
13+
# leading blank lines, then removes the common indentation from lines 2+
14+
# (the class-body indent). textwrap.dedent cannot do this because Python
15+
# stores line 1 without any leading whitespace, making the common indent 0.
16+
config_doc = inspect.cleandoc(config.__doc__ or "No documentation.")
17+
preprocessor_doc = inspect.cleandoc(Preprocessor.__doc__ or "No documentation.")
18+
19+
# After cleandoc the section header is at column 0: "Parameters\n----------\n"
20+
preprocessor_doc_cleaned = preprocessor_doc.split("Parameters\n----------\n", 1)[-1].strip()
1521
preprocessor_doc_cleaned = preprocessor_doc_cleaned.split("Attributes")[0].strip()
1622

17-
config_doc += preprocessor_doc_cleaned
23+
# Combine config doc + preprocessor params, then re-indent uniformly at 4 spaces.
24+
config_doc_indented = textwrap.indent(config_doc + "\n\n" + preprocessor_doc_cleaned, " ")
25+
26+
description_indented = textwrap.indent(textwrap.dedent(model_description).strip(), " ")
27+
examples_indented = textwrap.indent(textwrap.dedent(examples).strip(), " ")
1828

1929
return f"""
20-
{model_description.strip()}
30+
{description_indented}
2131
2232
Notes
2333
-----
2434
The parameters for this class include the attributes from the config
2535
dataclass as well as preprocessing arguments handled by the base class.
2636
27-
{config_doc}
37+
{config_doc_indented}
2838
2939
Examples
3040
--------
31-
{examples.strip()}
41+
{examples_indented}
3242
"""
Lines changed: 39 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,25 @@
11
deeptab.base_models
22
=======================
33

4-
.. autoclass:: deeptab.base_models.BaseModel
5-
:members:
6-
:no-inherited-members:
7-
8-
.. autoclass:: deeptab.base_models.TaskModel
9-
:members:
10-
:no-inherited-members:
11-
124
.. autoclass:: deeptab.base_models.Mambular
135
:members:
146
:no-inherited-members:
7+
:exclude-members: forward
158

169
.. autoclass:: deeptab.base_models.MLP
1710
:members:
1811
:no-inherited-members:
12+
:exclude-members: forward
1913

2014
.. autoclass:: deeptab.base_models.ResNet
2115
:members:
2216
:no-inherited-members:
17+
:exclude-members: forward
2318

2419
.. autoclass:: deeptab.base_models.FTTransformer
2520
:members:
2621
:no-inherited-members:
22+
:exclude-members: forward
2723

2824
.. autoclass:: deeptab.base_models.TabTransformer
2925
:members:
@@ -33,22 +29,52 @@ deeptab.base_models
3329
:members:
3430
:no-inherited-members:
3531

36-
.. autoclass:: mambular.base_models.MambAttention
32+
.. autoclass:: deeptab.base_models.MambAttention
33+
:members:
34+
:no-inherited-members:
35+
:exclude-members: forward
36+
37+
.. autoclass:: deeptab.base_models.MambaTab
38+
:members:
39+
:no-inherited-members:
40+
:exclude-members: forward
41+
42+
.. autoclass:: deeptab.base_models.TabM
43+
:members:
44+
:no-inherited-members:
45+
46+
.. autoclass:: deeptab.base_models.NODE
47+
:members:
48+
:no-inherited-members:
49+
:exclude-members: forward
50+
51+
.. autoclass:: deeptab.base_models.NDTF
52+
:members:
53+
:no-inherited-members:
54+
:exclude-members: forward, penalty_forward
55+
56+
.. autoclass:: deeptab.base_models.SAINT
57+
:members:
58+
:no-inherited-members:
59+
:exclude-members: forward
60+
61+
.. autoclass:: deeptab.base_models.AutoInt
3762
:members:
3863
:no-inherited-members:
3964

40-
.. autoclass:: mambular.base_models.TabM
65+
.. autoclass:: deeptab.base_models.ENODE
4166
:members:
4267
:no-inherited-members:
68+
:exclude-members: forward
4369

44-
.. autoclass:: mambular.base_models.NODE
70+
.. autoclass:: deeptab.base_models.ModernNCA
4571
:members:
4672
:no-inherited-members:
4773

48-
.. autoclass:: mambular.base_models.NDTF
74+
.. autoclass:: deeptab.base_models.Tangos
4975
:members:
5076
:no-inherited-members:
5177

52-
.. autoclass:: mambular.base_models.SAINT
78+
.. autoclass:: deeptab.base_models.Trompt
5379
:members:
5480
:no-inherited-members:

docs/api/base_models/index.rst

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,15 @@
11
.. -*- mode: rst -*-
22
3-
.. currentmodule:: mambular.base_models
3+
.. currentmodule:: deeptab.base_models
44

55
BaseModels
66
==========
77

8-
This module provides foundational classes and architectures for Mambular models, including various neural network architectures tailored for tabular data.
8+
This module provides foundational classes and architectures for deeptab models, including various neural network architectures tailored for tabular data.
99

1010
========================================= =======================================================================================================
1111
Modules Description
1212
========================================= =======================================================================================================
13-
:class:`BaseModel` Abstract base class defining the core structure and initialization logic for Mambular models.
14-
:class:`TaskModel` PyTorch Lightning module for managing model training, validation, and testing workflows.
1513
:class:`Mambular` Flexible neural network model leveraging the Mamba architecture with configurable normalization techniques for tabular data.
1614
:class:`MLP` Multi-layer perceptron (MLP) model designed for tabular tasks, initialized with a custom configuration.
1715
:class:`ResNet` Deep residual network (ResNet) model optimized for structured/tabular datasets.
@@ -22,7 +20,13 @@ Modules Description
2220
:class:`NDTF` Neural Decision Tree Forest (NDTF) model for tabular tasks, blending decision tree concepts with neural networks.
2321
:class:`TabulaRNN` Recurrent neural network (RNN) model, including LSTM and GRU architectures, tailored for sequential or time-series tabular data.
2422
:class:`MambAttention` Attention-based architecture for tabular tasks, combining feature importance weighting with advanced normalization techniques.
25-
:class:`SAINT` SAINT model. Transformer based model using row and column attetion.
23+
:class:`SAINT` SAINT model. Transformer based model using row and column attention.
24+
:class:`MambaTab` Tabular model using a Mamba-Block on a joint input representation.
25+
:class:`AutoInt` Automatic Feature Interaction model for tabular data.
26+
:class:`ENODE` Embedding Neural Oblivious Decision Ensembles for tabular tasks.
27+
:class:`ModernNCA` Modern Nearest Centroid Approach for tabular deep learning.
28+
:class:`Tangos` Tangos model for tabular data.
29+
:class:`Trompt` Trompt model for tabular data.
2630
========================================= =======================================================================================================
2731

2832

Lines changed: 32 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,50 +1,70 @@
11
Configurations
22
===============
33

4-
.. autoclass:: mambular.configs.DefaultMambularConfig
4+
.. autoclass:: deeptab.configs.DefaultMambularConfig
55
:members:
66
:undoc-members:
77

8-
.. autoclass:: mambular.configs.DefaultFTTransformerConfig
8+
.. autoclass:: deeptab.configs.DefaultFTTransformerConfig
99
:members:
1010
:undoc-members:
1111

12-
.. autoclass:: mambular.configs.DefaultResNetConfig
12+
.. autoclass:: deeptab.configs.DefaultResNetConfig
1313
:members:
1414
:undoc-members:
1515

16-
.. autoclass:: mambular.configs.DefaultMLPConfig
16+
.. autoclass:: deeptab.configs.DefaultMLPConfig
1717
:members:
1818
:undoc-members:
1919

20-
.. autoclass:: mambular.configs.DefaultTabTransformerConfig
20+
.. autoclass:: deeptab.configs.DefaultTabTransformerConfig
2121
:members:
2222
:undoc-members:
2323

24-
.. autoclass:: mambular.configs.DefaultMambaTabConfig
24+
.. autoclass:: deeptab.configs.DefaultMambaTabConfig
2525
:members:
2626
:undoc-members:
2727

28-
.. autoclass:: mambular.configs.DefaultTabulaRNNConfig
28+
.. autoclass:: deeptab.configs.DefaultTabulaRNNConfig
2929
:members:
3030
:undoc-members:
3131

32-
.. autoclass:: mambular.configs.DefaultMambAttentionConfig
32+
.. autoclass:: deeptab.configs.DefaultMambAttentionConfig
3333
:members:
3434
:undoc-members:
3535

36-
.. autoclass:: mambular.configs.DefaultNDTFConfig
36+
.. autoclass:: deeptab.configs.DefaultNDTFConfig
3737
:members:
3838
:undoc-members:
3939

40-
.. autoclass:: mambular.configs.DefaultNODEConfig
40+
.. autoclass:: deeptab.configs.DefaultNODEConfig
4141
:members:
4242
:undoc-members:
4343

44-
.. autoclass:: mambular.configs.DefaultTabMConfig
44+
.. autoclass:: deeptab.configs.DefaultTabMConfig
4545
:members:
4646
:undoc-members:
4747

48-
.. autoclass:: mambular.configs.DefaultSAINTConfig
48+
.. autoclass:: deeptab.configs.DefaultSAINTConfig
49+
:members:
50+
:undoc-members:
51+
52+
.. autoclass:: deeptab.configs.DefaultAutoIntConfig
53+
:members:
54+
:undoc-members:
55+
56+
.. autoclass:: deeptab.configs.DefaultENODEConfig
57+
:members:
58+
:undoc-members:
59+
60+
.. autoclass:: deeptab.configs.DefaultModernNCAConfig
61+
:members:
62+
:undoc-members:
63+
64+
.. autoclass:: deeptab.configs.DefaultTangosConfig
65+
:members:
66+
:undoc-members:
67+
68+
.. autoclass:: deeptab.configs.DefaultTromptConfig
4969
:members:
5070
:undoc-members:

0 commit comments

Comments
 (0)