hbs2 commited on
Commit
dc09f0f
1 Parent(s): 6e7e744

Upload 8 files

Browse files
Files changed (8) hide show
  1. .gitignore +15 -0
  2. CONTRIBUTING.md +31 -0
  3. LICENSE +21 -0
  4. MANIFEST.in +3 -0
  5. requirements.conversion.txt +1 -0
  6. requirements.txt +5 -0
  7. setup.cfg +9 -0
  8. setup.py +68 -0
.gitignore ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Byte-compiled / Optimized / DLL Files
2
+ *.pyc
3
+ *.pyo
4
+ *.pyd
5
+ __pycache__/
6
+
7
+ # Distribution / Packaging
8
+ venv/
9
+
10
+ # Unit Test
11
+ .pytest_cache/
12
+
13
+ # Ignore IDE, Editor Files
14
+ .idea/
15
+ .vscode/
CONTRIBUTING.md ADDED
@@ -0,0 +1,31 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Contributing to faster-whisper
2
+
3
+ Contributions are welcome! Here are some pointers to help you install the library for development and validate your changes before submitting a pull request.
4
+
5
+ ## Install the library for development
6
+
7
+ We recommend installing the module in editable mode with the `dev` extra requirements:
8
+
9
+ ```bash
10
+ git clone https://github.com/SYSTRAN/faster-whisper.git
11
+ cd faster-whisper/
12
+ pip install -e .[dev]
13
+ ```
14
+
15
+ ## Validate the changes before creating a pull request
16
+
17
+ 1. Make sure the existing tests are still passing (and consider adding new tests as well!):
18
+
19
+ ```bash
20
+ pytest tests/
21
+ ```
22
+
23
+ 2. Reformat and validate the code with the following tools:
24
+
25
+ ```bash
26
+ black .
27
+ isort .
28
+ flake8 .
29
+ ```
30
+
31
+ These steps are also run automatically in the CI when you open the pull request.
LICENSE ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ MIT License
2
+
3
+ Copyright (c) 2023 SYSTRAN
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
MANIFEST.in ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ include faster_whisper/assets/silero_vad.onnx
2
+ include requirements.txt
3
+ include requirements.conversion.txt
requirements.conversion.txt ADDED
@@ -0,0 +1 @@
 
 
1
+ transformers[torch]>=4.23
requirements.txt ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ av>=11.0,<13
2
+ ctranslate2>=4.0,<5
3
+ huggingface_hub>=0.13
4
+ tokenizers>=0.13,<1
5
+ onnxruntime>=1.14,<2
setup.cfg ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
 
1
+ [flake8]
2
+ max-line-length = 100
3
+ ignore =
4
+ E203,
5
+ W503,
6
+
7
+ [isort]
8
+ profile=black
9
+ lines_between_types=1
setup.py ADDED
@@ -0,0 +1,68 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import os
2
+
3
+ from setuptools import find_packages, setup
4
+
5
+ base_dir = os.path.dirname(os.path.abspath(__file__))
6
+
7
+
8
+ def get_long_description():
9
+ readme_path = os.path.join(base_dir, "README.md")
10
+ with open(readme_path, encoding="utf-8") as readme_file:
11
+ return readme_file.read()
12
+
13
+
14
+ def get_project_version():
15
+ version_path = os.path.join(base_dir, "faster_whisper", "version.py")
16
+ version = {}
17
+ with open(version_path, encoding="utf-8") as fp:
18
+ exec(fp.read(), version)
19
+ return version["__version__"]
20
+
21
+
22
+ def get_requirements(path):
23
+ with open(path, encoding="utf-8") as requirements:
24
+ return [requirement.strip() for requirement in requirements]
25
+
26
+
27
+ install_requires = get_requirements(os.path.join(base_dir, "requirements.txt"))
28
+ conversion_requires = get_requirements(
29
+ os.path.join(base_dir, "requirements.conversion.txt")
30
+ )
31
+
32
+ setup(
33
+ name="faster-whisper",
34
+ version=get_project_version(),
35
+ license="MIT",
36
+ description="Faster Whisper transcription with CTranslate2",
37
+ long_description=get_long_description(),
38
+ long_description_content_type="text/markdown",
39
+ author="Guillaume Klein",
40
+ url="https://github.com/SYSTRAN/faster-whisper",
41
+ classifiers=[
42
+ "Development Status :: 4 - Beta",
43
+ "Intended Audience :: Developers",
44
+ "Intended Audience :: Science/Research",
45
+ "License :: OSI Approved :: MIT License",
46
+ "Programming Language :: Python :: 3",
47
+ "Programming Language :: Python :: 3 :: Only",
48
+ "Programming Language :: Python :: 3.8",
49
+ "Programming Language :: Python :: 3.9",
50
+ "Programming Language :: Python :: 3.10",
51
+ "Programming Language :: Python :: 3.11",
52
+ "Topic :: Scientific/Engineering :: Artificial Intelligence",
53
+ ],
54
+ keywords="openai whisper speech ctranslate2 inference quantization transformer",
55
+ python_requires=">=3.8",
56
+ install_requires=install_requires,
57
+ extras_require={
58
+ "conversion": conversion_requires,
59
+ "dev": [
60
+ "black==23.*",
61
+ "flake8==6.*",
62
+ "isort==5.*",
63
+ "pytest==7.*",
64
+ ],
65
+ },
66
+ packages=find_packages(),
67
+ include_package_data=True,
68
+ )