-
Notifications
You must be signed in to change notification settings - Fork 570
Expand file tree
/
Copy pathpyproject.toml
More file actions
116 lines (102 loc) · 3.35 KB
/
pyproject.toml
File metadata and controls
116 lines (102 loc) · 3.35 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
104
105
106
107
108
109
110
111
112
113
114
115
116
[project]
name = "whisper-asr-webservice"
version = "1.10.0-dev"
description = "Whisper ASR Webservice is a general-purpose speech recognition webservice."
requires-python = ">=3.10,<3.13"
dependencies = [
"fastapi (>=0.115.14)",
"uvicorn[standard] (>=0.35.0)",
"python-multipart (>=0.0.20)",
"ffmpeg-python (>=0.2.0)",
"numpy (>=2.2.6)",
"openai-whisper (>=20250625)",
"faster-whisper (>=1.1.1)",
"whisperx (>=3.4.2)",
"tqdm (>=4.67.1)",
"llvmlite (>=0.44.0)",
"numba (>=0.61.2)",
]
authors = [
{ name = "Ahmet Öner" },
{ name = "Besim Alibegovic" }
]
license = { text = "MIT" }
readme = "README.md"
keywords = ["speech-recognition", "whisper", "asr", "webservice"]
[tool.poetry]
requires-poetry = ">=2.0"
packages = [{ include = "app" }]
[project.urls]
Homepage = "https://github.com/ahmetoner/whisper-asr-webservice/"
Repository = "https://github.com/ahmetoner/whisper-asr-webservice"
[project.scripts]
whisper-asr-webservice = "app.webservice:start"
[project.optional-dependencies]
cpu = [
"torch (==2.7.1)",
"torchaudio (==2.7.1)"
]
cuda = [
"torch (==2.7.1+cu126)",
"torchaudio (==2.7.1+cu126)"
]
[[tool.poetry.source]]
name = "pytorch-cpu"
url = "https://download.pytorch.org/whl/cpu"
priority = "explicit"
[[tool.poetry.source]]
name = "pytorch-cuda"
url = "https://download.pytorch.org/whl/cu126"
priority = "explicit"
[tool.poetry.dependencies]
torch = [
{ markers = "extra == 'cpu' and extra != 'cuda' and platform_machine == 'x86_64' and sys_platform != 'darwin'", source = "pytorch-cpu"},
{ markers = "extra == 'cuda' and extra != 'cpu' and platform_machine == 'x86_64' and sys_platform != 'darwin'", source = "pytorch-cuda"},
{ markers = "extra == 'cpu' and extra != 'cuda' and sys_platform == 'darwin'", source = "pypi"},
{ markers = "extra == 'cpu' and extra != 'cuda' and platform_machine == 'aarch64' and sys_platform != 'darwin'", source = "pypi"}
]
torchaudio = [
{ markers = "extra == 'cpu' and extra != 'cuda' and platform_machine == 'x86_64' and sys_platform != 'darwin'", source = "pytorch-cpu"},
{ markers = "extra == 'cuda' and extra != 'cpu' and platform_machine == 'x86_64' and sys_platform != 'darwin'", source = "pytorch-cuda"},
{ markers = "extra == 'cpu' and extra != 'cuda' and sys_platform == 'darwin'", source = "pypi"},
{ markers = "extra == 'cpu' and extra != 'cuda' and platform_machine == 'aarch64' and sys_platform != 'darwin'", source = "pypi"}
]
[tool.poetry.group.dev.dependencies]
pytest = ">=8.3.4,<9.0.0"
ruff = ">=0.9.6,<1.0.0"
black = ">=25.1.0,<26.0.0"
mkdocs-material = ">=9.6.4,<10.0.0"
pymdown-extensions = ">=10.14.3,<11.0.0"
[build-system]
requires = ["poetry-core>=2.0"]
build-backend = "poetry.core.masonry.api"
[tool.black]
skip-string-normalization = true
line-length = 120
[tool.ruff]
line-length = 120
[tool.ruff.lint]
select = [
"E", # pycodestyle errors
"W", # pycodestyle warnings
"F", # pyflakes
"I", # isort
"C", # flake8-comprehensions
"B", # flake8-bugbear
]
ignore = [
"E501", # line too long, handled by black
"C901", # too complex
]
[tool.ruff.lint.isort]
order-by-type = true
relative-imports-order = "closest-to-furthest"
extra-standard-library = ["typing"]
section-order = [
"future",
"standard-library",
"third-party",
"first-party",
"local-folder",
]
known-first-party = []