Skip to content

Commit 08d60d8

Browse files
committed
Release v1.14.0
1 parent a895c1f commit 08d60d8

File tree

169 files changed

+6022
-937
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

169 files changed

+6022
-937
lines changed

.clang-format

Lines changed: 28 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
1-
---
21
AccessModifierOffset: -1
32
AlignAfterOpenBracket: AlwaysBreak
43
AlignConsecutiveAssignments: false
54
AlignConsecutiveDeclarations: false
65
AlignEscapedNewlinesLeft: true
7-
AlignOperands: false
6+
AlignOperands: false
87
AlignTrailingComments: true
98
AllowAllParametersOfDeclarationOnNextLine: false
109
AllowShortBlocksOnASingleLine: false
@@ -18,46 +17,46 @@ AlwaysBreakTemplateDeclarations: true
1817
BinPackArguments: false
1918
BinPackParameters: false
2019
BraceWrapping:
21-
AfterClass: false
20+
AfterClass: false
2221
AfterControlStatement: false
23-
AfterEnum: false
24-
AfterFunction: false
25-
AfterNamespace: false
22+
AfterEnum: false
23+
AfterFunction: false
24+
AfterNamespace: false
2625
AfterObjCDeclaration: false
27-
AfterStruct: false
28-
AfterUnion: false
29-
BeforeCatch: false
30-
BeforeElse: false
31-
IndentBraces: false
26+
AfterStruct: false
27+
AfterUnion: false
28+
BeforeCatch: false
29+
BeforeElse: false
30+
IndentBraces: false
3231
BreakBeforeBinaryOperators: None
3332
BreakBeforeBraces: Attach
3433
BreakBeforeTernaryOperators: true
3534
BreakConstructorInitializersBeforeComma: false
3635
BreakAfterJavaFieldAnnotations: false
3736
BreakStringLiterals: false
38-
ColumnLimit: 100
39-
CommentPragmas: '^ IWYU pragma:'
37+
ColumnLimit: 100
38+
CommentPragmas: '^ IWYU pragma:'
4039
CompactNamespaces: false
4140
ConstructorInitializerAllOnOneLineOrOnePerLine: true
4241
ConstructorInitializerIndentWidth: 4
4342
ContinuationIndentWidth: 4
4443
Cpp11BracedListStyle: true
4544
DerivePointerAlignment: false
46-
DisableFormat: false
47-
ForEachMacros: [ FOR_EACH_RANGE, FOR_EACH, ]
45+
DisableFormat: false
46+
ForEachMacros: [FOR_EACH_RANGE, FOR_EACH]
4847
IncludeCategories:
49-
- Regex: '^<.*\.h(pp)?>'
50-
Priority: 1
51-
- Regex: '^<.*'
52-
Priority: 2
53-
- Regex: '.*'
54-
Priority: 3
48+
- Regex: '^<.*\.h(pp)?>'
49+
Priority: 1
50+
- Regex: '^<.*'
51+
Priority: 2
52+
- Regex: '.*'
53+
Priority: 3
5554
IndentCaseLabels: true
56-
IndentWidth: 2
55+
IndentWidth: 2
5756
IndentWrappedFunctionNames: false
5857
KeepEmptyLinesAtTheStartOfBlocks: false
5958
MacroBlockBegin: ''
60-
MacroBlockEnd: ''
59+
MacroBlockEnd: ''
6160
MaxEmptyLinesToKeep: 1
6261
NamespaceIndentation: None
6362
PenaltyBreakBeforeFirstCallParameter: 1
@@ -67,18 +66,18 @@ PenaltyBreakString: 1000
6766
PenaltyExcessCharacter: 1000000
6867
PenaltyReturnTypeOnItsOwnLine: 2000000
6968
PointerAlignment: Left
70-
ReflowComments: true
71-
SortIncludes: true
69+
ReflowComments: true
70+
SortIncludes: true
7271
SpaceAfterCStyleCast: false
7372
SpaceBeforeAssignmentOperators: true
7473
SpaceBeforeParens: ControlStatements
7574
SpaceInEmptyParentheses: false
7675
SpacesBeforeTrailingComments: 1
77-
SpacesInAngles: false
76+
SpacesInAngles: false
7877
SpacesInContainerLiterals: true
7978
SpacesInCStyleCastParentheses: false
8079
SpacesInParentheses: false
8180
SpacesInSquareBrackets: false
82-
Standard: Cpp11
83-
TabWidth: 8
84-
UseTab: Never
81+
Standard: Cpp11
82+
TabWidth: 8
83+
UseTab: Never

.github/workflows/mdbook.yaml

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,27 +3,22 @@
33
# To get started with mdBook see: https://rust-lang.github.io/mdBook/index.html
44
#
55
name: Deploy mdBook site to Pages
6-
76
on:
87
# Runs on pushes targeting the default branch
98
push:
109
branches: ["main"]
11-
1210
# Allows you to run this workflow manually from the Actions tab
1311
workflow_dispatch:
14-
1512
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
1613
permissions:
1714
contents: read
1815
pages: write
1916
id-token: write
20-
2117
# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
2218
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
2319
concurrency:
2420
group: "pages"
2521
cancel-in-progress: false
26-
2722
jobs:
2823
# Build job
2924
build:
@@ -51,7 +46,6 @@ jobs:
5146
- name: Remove book artifact
5247
if: always()
5348
run: docker run -v $(realpath -e docs):/root/docs ubuntu:22.04 rm -rf /root/docs/book
54-
5549
# Deployment job
5650
deploy:
5751
environment:

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,3 +26,6 @@ compile_commands.json
2626

2727
# logs
2828
*.log
29+
30+
# env
31+
*/.env

.mergify.yml

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
queue_rules:
2+
- name: default
3+
# When auto-updating PRs for the base branch, rebase.
4+
update_method: rebase
5+
merge_method: merge
6+
pull_request_rules:
7+
- name: Automatically rebase and merge pull requests
8+
actions:
9+
queue:
10+
name: default
11+
conditions:
12+
- label=ready-for-merge
13+
- label!=WIP
14+
- "#approved-reviews-by>=1"
15+
- "#changes-requested-reviews-by=0"
16+
- name: Delete head branch after merge
17+
actions:
18+
delete_head_branch: {}
19+
conditions:
20+
- merged

.pre-commit-config.yaml

Lines changed: 53 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -1,46 +1,58 @@
11
# See https://pre-commit.com for more information
22
# See https://pre-commit.com/hooks.html for more hooks
33
repos:
4-
- repo: https://github.com/pre-commit/pre-commit-hooks
5-
rev: v3.2.0
4+
- repo: https://github.com/pre-commit/pre-commit-hooks
5+
rev: v5.0.0
66
hooks:
7-
- id: check-added-large-files
8-
- id: check-merge-conflict
9-
- id: end-of-file-fixer
7+
- id: check-added-large-files
8+
- id: check-merge-conflict
9+
- id: end-of-file-fixer
1010
exclude_types: ["svg"]
11-
- id: requirements-txt-fixer
12-
- id: trailing-whitespace
13-
- repo: https://github.com/pycqa/isort
14-
rev: 5.12.0
15-
hooks:
16-
- id: isort
17-
args: [--profile=black, --project=caiman_asr_train, --project=myrtle_asr_train]
18-
- repo: https://github.com/psf/black
19-
rev: 23.3.0
20-
hooks:
21-
- id: black
22-
language_version: python3
23-
args: [--line-length=88]
24-
- repo: https://github.com/astral-sh/ruff-pre-commit
25-
# Ruff version.
26-
rev: v0.1.5
27-
hooks:
28-
# Fix unused imports
29-
- id: ruff
30-
args: [--select, F401, --fix]
31-
# This also excludes the smoke tests in myrtle-training
32-
exclude: training/tests/test_smoke_tests.py
33-
- repo: https://github.com/PyCQA/flake8
34-
rev: 7.0.0
35-
hooks:
36-
- id: flake8
37-
args: [--max-line-length=92, "--extend-ignore=E203,F401,F722"]
38-
- repo: https://github.com/executablebooks/mdformat
39-
rev: 0.7.17
40-
hooks:
41-
- id: mdformat
42-
args: ["--number"]
43-
- repo: https://github.com/scop/pre-commit-shfmt
44-
rev: v3.9.0-1
45-
hooks:
46-
- id: shfmt # prebuilt upstream executable
11+
- id: requirements-txt-fixer
12+
- id: trailing-whitespace
13+
- repo: https://github.com/pycqa/isort
14+
rev: 6.0.0
15+
hooks:
16+
- id: isort
17+
args: [--profile=black, --project=caiman_asr_train, --project=myrtle_asr_train]
18+
- repo: https://github.com/psf/black
19+
rev: 25.1.0
20+
hooks:
21+
- id: black
22+
language_version: python3
23+
args: [--line-length=88]
24+
- repo: https://github.com/astral-sh/ruff-pre-commit
25+
# Ruff version.
26+
rev: v0.9.4
27+
hooks:
28+
# Fix unused imports
29+
- id: ruff
30+
args: [--select, F401, --fix]
31+
# This also excludes the smoke tests in myrtle-training
32+
exclude: training/tests/test_smoke_tests.py
33+
- repo: https://github.com/PyCQA/flake8
34+
rev: 7.1.1
35+
hooks:
36+
- id: flake8
37+
args: [--max-line-length=92, "--extend-ignore=E203,F401,F722"]
38+
- repo: https://github.com/executablebooks/mdformat
39+
rev: 0.7.22
40+
hooks:
41+
- id: mdformat
42+
additional_dependencies:
43+
- mdformat-myst
44+
args: ["--number"]
45+
- repo: https://github.com/scop/pre-commit-shfmt
46+
rev: v3.10.0-2
47+
hooks:
48+
- id: shfmt # prebuilt upstream executable
49+
- repo: https://github.com/codespell-project/codespell
50+
rev: v2.4.1
51+
hooks:
52+
- id: codespell
53+
exclude: training/caiman_asr_train/data/text/english.json
54+
args: ["-L", "nd,patter,crate,caf,strng,AAS"]
55+
- repo: https://github.com/google/yamlfmt
56+
rev: v0.15.0
57+
hooks:
58+
- id: yamlfmt

README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@ The solution is designed for **low-latency realtime streaming ASR workloads**.
66

77
## See next
88

9-
- Performance figures (Real-time streams, latency): [\[docs\]](https://caiman-asr.myrtle.ai/key_features.html#model-configurations) [\[markdown\]](docs/src/key_features.md#model-configurations)
10-
- WERs: [\[docs\]](https://caiman-asr.myrtle.ai/key_features.html#word-error-rates-wers) [\[markdown\]](docs/src/key_features.md#word-error-rates-wers)
11-
- Training speeds: [\[docs\]](https://caiman-asr.myrtle.ai/training/training_times.html) [\[markdown\]](docs/src/training/training_times.md)
12-
- Getting started: [\[docs\]](https://caiman-asr.myrtle.ai/introduction.html) [\[markdown\]](docs/src/introduction.md)
9+
- Performance figures (Real-time streams, latency): [[docs]](https://caiman-asr.myrtle.ai/key_features.html#model-configurations) [[markdown]](docs/src/key_features.md#model-configurations)
10+
- WERs: [[docs]](https://caiman-asr.myrtle.ai/key_features.html#word-error-rates-wers) [[markdown]](docs/src/key_features.md#word-error-rates-wers)
11+
- Training speeds: [[docs]](https://caiman-asr.myrtle.ai/training/training_times.html) [[markdown]](docs/src/training/training_times.md)
12+
- Getting started: [[docs]](https://caiman-asr.myrtle.ai/introduction.html) [[markdown]](docs/src/introduction.md)
1313

1414
![CAIMAN-ASR Logo](docs/src/assets/CAIMAN-ASR-wordmark.png)

docs/book.toml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@ title = "CAIMAN-ASR"
99

1010
mathjax-support = true
1111
additional-css = ["./mdbook-admonish.css"]
12+
curly-quotes = true
13+
git-repository-url = "https://github.com/MyrtleSoftware/caiman-asr"
1214

1315
[preprocessor]
1416

docs/src/SUMMARY.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
- [Changing the character set](training/changing_the_character_set.md)
3333
- [Delay penalty](training/delay_penalty.md)
3434
- [Endpointing](training/endpointing.md)
35+
- [Checkpoint averaging](training/checkpoint_averaging.md)
3536
- [Validation](training/validation.md)
3637
- [WER calculation](training/wer_calculation.md)
3738
- [State resets](training/state_resets.md)
@@ -41,6 +42,8 @@
4142
- [Saving predictions](training/saving_predictions.md)
4243
- [User-perceived latency](inference/user_perceived_latency.md)
4344
- [Emission latency](training/emission_latency.md)
45+
- [Timestamps](training/timestamps.md)
46+
- [Keyword boosting](training/keyword_boosting.md)
4447
- [Export inference checkpoint](training/export_inference_checkpoint.md)
4548

4649
- [Inference flow](./inference/inference_flow.md)
@@ -54,5 +57,8 @@
5457
- [Live audio demonstration](./inference/live_audio_demonstration.md)
5558
- [Hardware requirements](./inference/hardware_requirements.md)
5659
- [CAIMAN-ASR demo](./inference/caiman-asr_demo.md)
60+
- [CAIMAN-ASR benchmark](./inference/caiman-asr_benchmark.md)
61+
- [Benchmark Installation](./inference/benchmark_installation.md)
62+
- [Benchmarking custom datasets](./inference/benchmarking_custom_datasets.md)
5763

5864
- [Versions](./versions.md)
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
# Benchmark installation
2+
3+
Follow these installation instructions to run the benchmark scripts in a Linux-based OS.
4+
5+
## Install using a virtual environment
6+
7+
(1) Install the basic dependencies:
8+
9+
```bash
10+
cd benchmark
11+
sudo ./install_basic_deps.bash
12+
```
13+
14+
(2) The following command will install the Python dependencies in a virtual environment:
15+
16+
```bash
17+
./install_python_deps.bash
18+
```
19+
20+
Note this requires Python >= 3.10.
21+
22+
If you don't have the correct version of Python, you can
23+
use [uv](https://docs.astral.sh/uv/) to create
24+
the virtual environment with the correct version of Python:
25+
26+
```bash
27+
USE_UV=true ./install_python_deps.bash
28+
```
29+
30+
(3) Launch the virtual environment. All commands are meant to be run inside the environment:
31+
32+
```bash
33+
source .venv/bin/activate
34+
```
35+
36+
## Install using Docker
37+
38+
(1) If you do not have docker installed, see [here](https://caiman-asr.myrtle.ai/training/installation.html).
39+
40+
(2) Build the benchmarking docker image (takes about 10 minutes):
41+
42+
```bash
43+
cd benchmark
44+
./build.bash
45+
```

0 commit comments

Comments
 (0)