mostlyai-engine 1.4.6__tar.gz → 1.4.7__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/PKG-INFO +1 -1
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/__init__.py +1 -1
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_language/common.py +24 -6
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_tabular/generation.py +1 -9
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/pyproject.toml +1 -1
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/.gitignore +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/LICENSE +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/README.md +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_common.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_dtypes.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_encoding_types/__init__.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_encoding_types/language/__init__.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_encoding_types/language/categorical.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_encoding_types/language/datetime.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_encoding_types/language/numeric.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_encoding_types/language/text.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_encoding_types/tabular/__init__.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_encoding_types/tabular/categorical.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_encoding_types/tabular/character.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_encoding_types/tabular/datetime.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_encoding_types/tabular/itt.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_encoding_types/tabular/lat_long.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_encoding_types/tabular/numeric.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_language/__init__.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_language/encoding.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_language/engine/__init__.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_language/engine/base.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_language/engine/hf_engine.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_language/engine/vllm_engine.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_language/generation.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_language/lstm.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_language/tokenizer_utils.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_language/training.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_language/xgrammar_utils.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_memory.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_tabular/__init__.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_tabular/argn.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_tabular/common.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_tabular/encoding.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_tabular/fairness.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_tabular/training.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_training_utils.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_workspace.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/analysis.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/domain.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/encoding.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/generation.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/logging.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/random_state.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/splitting.py +0 -0
- {mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/training.py +0 -0
|
@@ -22,7 +22,7 @@ from mostlyai.engine.splitting import split
|
|
|
22
22
|
from mostlyai.engine.training import train
|
|
23
23
|
|
|
24
24
|
__all__ = ["split", "analyze", "encode", "train", "generate", "init_logging", "set_random_state"]
|
|
25
|
-
__version__ = "1.4.
|
|
25
|
+
__version__ = "1.4.7"
|
|
26
26
|
|
|
27
27
|
# suppress specific warning related to os.fork() in multi-threaded processes
|
|
28
28
|
warnings.filterwarnings("ignore", category=DeprecationWarning, message=".*multi-threaded.*fork.*")
|
|
@@ -18,7 +18,15 @@ from pathlib import Path
|
|
|
18
18
|
|
|
19
19
|
import torch
|
|
20
20
|
from peft import PeftConfig, prepare_model_for_kbit_training
|
|
21
|
-
from transformers import
|
|
21
|
+
from transformers import (
|
|
22
|
+
AutoConfig,
|
|
23
|
+
AutoModel,
|
|
24
|
+
AutoModelForCausalLM,
|
|
25
|
+
AutoModelForImageTextToText,
|
|
26
|
+
BitsAndBytesConfig,
|
|
27
|
+
PretrainedConfig,
|
|
28
|
+
PreTrainedModel,
|
|
29
|
+
)
|
|
22
30
|
|
|
23
31
|
from mostlyai.engine._language.lstm import LSTMFromScratchConfig
|
|
24
32
|
|
|
@@ -35,7 +43,7 @@ def is_bf16_supported(device: torch.device) -> bool:
|
|
|
35
43
|
|
|
36
44
|
|
|
37
45
|
def get_attention_implementation(config: PretrainedConfig) -> str | None:
|
|
38
|
-
model_cls =
|
|
46
|
+
model_cls = AutoModel._model_mapping[type(config)]
|
|
39
47
|
attn_implementation = None
|
|
40
48
|
if getattr(model_cls, "_supports_sdpa", False):
|
|
41
49
|
attn_implementation = "sdpa"
|
|
@@ -91,13 +99,23 @@ def load_base_model_and_config(
|
|
|
91
99
|
else:
|
|
92
100
|
device_map = "auto"
|
|
93
101
|
|
|
94
|
-
|
|
102
|
+
if hasattr(config, "text_config") and hasattr(config, "vision_config"):
|
|
103
|
+
config.text_config.use_cache = use_cache
|
|
104
|
+
config.text_config.attn_implementation = attn_implementation
|
|
105
|
+
auto_model_cls = AutoModelForImageTextToText
|
|
106
|
+
elif hasattr(config, "use_cache"):
|
|
107
|
+
config.use_cache = use_cache
|
|
108
|
+
config.attn_implementation = attn_implementation
|
|
109
|
+
auto_model_cls = AutoModelForCausalLM
|
|
110
|
+
else:
|
|
111
|
+
raise ValueError("Unsupported model")
|
|
112
|
+
|
|
113
|
+
model = auto_model_cls.from_pretrained(
|
|
95
114
|
model_id_or_path,
|
|
96
|
-
|
|
97
|
-
attn_implementation=attn_implementation,
|
|
98
|
-
use_cache=use_cache,
|
|
115
|
+
config=config,
|
|
99
116
|
device_map=device_map,
|
|
100
117
|
quantization_config=quantization_config,
|
|
118
|
+
torch_dtype=torch_dtype,
|
|
101
119
|
)
|
|
102
120
|
if quantization_config:
|
|
103
121
|
# convert all non-kbit layers to float32
|
|
@@ -758,15 +758,7 @@ def generate(
|
|
|
758
758
|
_LOG.info(f"{gen_column_order=}")
|
|
759
759
|
if not enable_flexible_generation:
|
|
760
760
|
# check if resolved column order is the same as the one from training
|
|
761
|
-
trn_column_order =
|
|
762
|
-
trn_column_order += [
|
|
763
|
-
get_argn_name(
|
|
764
|
-
argn_processor=tgt_stats["columns"][col][ARGN_PROCESSOR],
|
|
765
|
-
argn_table=tgt_stats["columns"][col][ARGN_TABLE],
|
|
766
|
-
argn_column=tgt_stats["columns"][col][ARGN_COLUMN],
|
|
767
|
-
)
|
|
768
|
-
for col in tgt_stats["columns"].keys()
|
|
769
|
-
]
|
|
761
|
+
trn_column_order = get_columns_from_cardinalities(tgt_cardinalities)
|
|
770
762
|
_LOG.info(f"{trn_column_order=}")
|
|
771
763
|
if gen_column_order != trn_column_order:
|
|
772
764
|
raise ValueError(
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_encoding_types/language/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_encoding_types/language/datetime.py
RENAMED
|
File without changes
|
{mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_encoding_types/language/numeric.py
RENAMED
|
File without changes
|
{mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_encoding_types/language/text.py
RENAMED
|
File without changes
|
{mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_encoding_types/tabular/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_encoding_types/tabular/character.py
RENAMED
|
File without changes
|
{mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_encoding_types/tabular/datetime.py
RENAMED
|
File without changes
|
{mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_encoding_types/tabular/itt.py
RENAMED
|
File without changes
|
{mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_encoding_types/tabular/lat_long.py
RENAMED
|
File without changes
|
{mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_encoding_types/tabular/numeric.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_language/engine/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_language/engine/hf_engine.py
RENAMED
|
File without changes
|
{mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_language/engine/vllm_engine.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mostlyai_engine-1.4.6 → mostlyai_engine-1.4.7}/mostlyai/engine/_language/tokenizer_utils.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|