-
Notifications
You must be signed in to change notification settings - Fork 19
Expand file tree
/
Copy pathpyproject.toml
More file actions
103 lines (93 loc) · 3.02 KB
/
pyproject.toml
File metadata and controls
103 lines (93 loc) · 3.02 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
[project]
name = "mostlyai-engine"
version = "2.6.2"
description = "Synthetic Data Engine"
requires-python = ">=3.11,<3.14"
readme = "README.md"
license = "Apache-2.0"
classifiers = [
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"Intended Audience :: Science/Research",
"Intended Audience :: Information Technology",
"Intended Audience :: Financial and Insurance Industry",
"Intended Audience :: Healthcare Industry",
"Intended Audience :: Telecommunications Industry",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"License :: OSI Approved :: Apache Software License",
"Operating System :: OS Independent",
"Topic :: Software Development :: Libraries",
"Typing :: Typed",
]
dependencies = [
"setuptools>=77.0.3,<81.0.0", # vllm 0.20 caps setuptools for Python > 3.11
"numpy>=2.0.0",
"pandas>=2.2.0",
"pyarrow>=16.0.0",
"joblib>=1.4.2",
"scikit-learn>=1.4.0",
"psutil>=5.9.5,<6", # upgrade when colab psutil is updated
"tokenizers>=0.21.1", # vllm 0.20 lower bound
"transformers>=5.5.1", # vllm 0.20 forbids 5.0–5.4 and 5.5.0; >=5.5.1 needed for newer HF model types (e.g. gemma4)
"datasets>=3.0.0",
"accelerate>=1.5.0",
"peft>=0.18.2", # transformers 5.7+ checks min PEFT in model.add_adapter (integrations/peft.py)
"huggingface-hub[hf-xet]>=0.30.2",
"opacus>=1.6.0",
"xgrammar>=0.1.32,<1.0.0", # aligned with vllm 0.20
"json-repair>=0.47.0",
"torch>=2.11.0,<2.12.0",
"torchaudio>=2.11.0,<2.12.0",
"torchvision>=0.26.0,<0.27.0"
]
[project.optional-dependencies]
gpu = [
"bitsandbytes==0.42.0; sys_platform == 'darwin'",
"bitsandbytes>=0.45.5; sys_platform == 'linux'",
"vllm==0.20.0; sys_platform == 'linux' or sys_platform == 'darwin'",
]
[dependency-groups]
dev = [
"pytest>=9.0.3",
"pytest-rerunfailures>=15.0",
"ruff>=0.11", # sync'ed with .pre-commit-config
"pre-commit>=4.0",
"twine>=6.1",
"ipykernel>=6.25",
]
docs = [
"mkdocs>=1.6",
"mkdocstrings[crystal, python]>=0.29",
"mkdocs-material>=9.0",
"mkdocs-llmstxt>=0.2",
"griffe>=1.0",
"pymdown-extensions>=10.0",
"griffe-fieldz>=0.2",
"black>=26.3.1",
]
[project.urls]
homepage = "https://github.com/mostly-ai/mostlyai-engine"
repository = "https://github.com/mostly-ai/mostlyai-engine"
issues = "https://github.com/mostly-ai/mostlyai-engine/issues"
documentation = "https://mostly-ai.github.io/mostlyai-engine/"
[tool.uv]
default-groups = ["dev", "docs"]
[tool.hatch.build.targets.sdist]
include = ["mostlyai/engine"]
[tool.hatch.build.targets.wheel]
include = ["mostlyai/engine"]
[tool.hatch.metadata]
allow-direct-references = true
[build-system]
requires = ["hatchling", "hatch-vcs"]
build-backend = "hatchling.build"
[tool.ruff]
target-version = "py311"
line-length = 120
extend-exclude = ["*.ipynb"]
[tool.ruff.format]
exclude = ["examples/*.ipynb"]
[tool.ruff.lint]
extend-select = ["I"]